1 #ifndef _KVI_CRYPT_ENGINE_MANAGER_H_ 2 #define _KVI_CRYPT_ENGINE_MANAGER_H_ 3 //============================================================================= 4 // 5 // File : KviCryptEngineManager.h 6 // Creation date : Wed Dec 29 2010 22:10:05 CEST by Elvio Basello 7 // 8 // This file is part of the KVIrc IRC client distribution 9 // Copyright (C) 2010 Elvio Basello (hellvis69 at gmail dot com) 10 // 11 // This program is FREE software. You can redistribute it and/or 12 // modify it under the terms of the GNU General Public License 13 // as published by the Free Software Foundation; either version 2 14 // of the License, or (at your option) any later version. 15 // 16 // This program is distributed in the HOPE that it will be USEFUL, 17 // but WITHOUT ANY WARRANTY; without even the implied warranty of 18 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 19 // See the GNU General Public License for more details. 20 // 21 // You should have received a copy of the GNU General Public License 22 // along with this program. If not, write to the Free Software Foundation, 23 // Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 24 // 25 //============================================================================= 26 27 // this file was originally part of KviCryptEngine.h 28 29 #include "kvi_settings.h" 30 #include "KviPointerHashTable.h" 31 32 class KviCryptEngine; 33 class KviCryptEngineDescription; 34 35 #ifdef COMPILE_CRYPT_SUPPORT 36 37 class QString; 38 39 class KVILIB_API KviCryptEngineManager 40 { 41 public: 42 KviCryptEngineManager(); 43 virtual ~KviCryptEngineManager(); 44 45 private: 46 KviPointerHashTable<QString, KviCryptEngineDescription> * m_pEngineDict; 47 48 public: engineDict()49 const KviPointerHashTable<QString, KviCryptEngineDescription> * engineDict() { return m_pEngineDict; }; 50 void registerEngine(KviCryptEngineDescription * pDesc); 51 void unregisterEngine(const QString & szName); 52 void unregisterEngines(void * providerHandle); 53 // 54 // Allocates a crypt engine 55 // Please note that the engine may be deleted from outside 56 // so you'd better connect the "destroyed" signal 57 // 58 KviCryptEngine * allocateEngine(const QString & szName); 59 void deallocateEngine(KviCryptEngine * pEngine); 60 }; 61 62 #endif // COMPILE_CRYPT_SUPPORT 63 #endif // _KVI_CRYPT_ENGINE_MANAGER_H_ 64