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