certmanager/lib
chiasmusbackend.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034 #ifndef __KLEO_CHIASMUSBACKEND_H__
00035 #define __KLEO_CHIASMUSBACKEND_H__
00036
00037 #include "kleo/cryptobackend.h"
00038
00039 class CryptPlugWrapper;
00040
00041 namespace Kleo {
00042 class CryptoConfig;
00043 }
00044 class QString;
00045
00046 namespace Kleo {
00047
00048 class ChiasmusBackend : public Kleo::CryptoBackend {
00049 public:
00050 ChiasmusBackend();
00051 ~ChiasmusBackend();
00052
00053 static const ChiasmusBackend * instance() { return self; }
00054
00055 QString name() const;
00056 QString displayName() const;
00057
00058 Kleo::CryptoConfig * config() const;
00059
00060 Kleo::CryptoBackend::Protocol * openpgp() const { return 0; }
00061 Kleo::CryptoBackend::Protocol * smime() const { return 0; }
00062 Kleo::CryptoBackend::Protocol * protocol( const char * name ) const;
00063
00064 bool checkForOpenPGP( QString * reason=0 ) const;
00065 bool checkForSMIME( QString * reason=0 ) const;
00066 bool checkForChiasmus( QString * reason=0 ) const;
00067 bool checkForProtocol( const char * name, QString * reason=0 ) const;
00068
00069 bool supportsOpenPGP() const { return false; }
00070 bool supportsSMIME() const { return false; }
00071 bool supportsProtocol( const char * name ) const;
00072
00073 const char * enumerateProtocols( int i ) const;
00074
00075 private:
00076 class CryptoConfig;
00077 class Protocol;
00078 mutable CryptoConfig * mCryptoConfig;
00079 mutable Protocol * mProtocol;
00080 static ChiasmusBackend * self;
00081 };
00082
00083 }
00084
00085
00086 #endif // __KLEO_CHIASMUSBACKEND_H__
|