PKIFFuncStorage.h

Go to the documentation of this file.
00001 
00009 #ifndef __PKIFFUNCSTORAGE_H__
00010 #define __PKIFFUNCSTORAGE_H__
00011 
00012 #include "PKIFdll.h"
00013 #include "PKIFEnums.h"
00014 #include <vector>
00015 
00016 FD_SMART_PTR(CPKIFCertificateNodeEntry);
00017 class CPKIFPathValidationResults;
00018 // forward declaration
00019 struct CPKIFFuncStorageImpl;
00020 
00032 class CAC_API CPKIFFuncStorage
00033 {
00034 public: 
00035     CPKIFFuncStorage(void (*) (const CPKIFCertificateNodeEntryPtr&, CPKIFPathValidationResults&, CertificateType));
00036     ~CPKIFFuncStorage();
00037     
00038     void addFuncs(CPKIFFuncStorage& v);
00039     void addFunc( void (*) (const CPKIFCertificateNodeEntryPtr&, CPKIFPathValidationResults&, CertificateType));
00040     void getFuncs(std::vector<void (*) (const CPKIFCertificateNodeEntryPtr&, CPKIFPathValidationResults&, CertificateType)>&vec);
00041     void operator()(const CPKIFCertificateNodeEntryPtr&, CPKIFPathValidationResults&, CertificateType);
00042     bool empty();
00043 
00044 private:
00046     CPKIFFuncStorage(const CPKIFFuncStorage& ext);//added 8/21/2004
00048     CPKIFFuncStorage& operator=(const CPKIFFuncStorage& rhs); //added 8/21/2004
00049 
00050     //std::vector<void (*) (const CPKIFCertificateNodeEntryPtr&, CPKIFPathValidationResults&, CertificateType)> m_storage;
00051     CPKIFFuncStorageImpl *m_impl;
00052 };
00053 DECLARE_SMART_POINTERS(CPKIFFuncStorage)
00054 
00055 
00064 class CAC_API CPKIFFuncStorageSingleton : public CPKIFFuncStorage
00065 {
00066 public:
00067     static CPKIFFuncStorageSingleton * GetInstance(void);
00068     ~CPKIFFuncStorageSingleton();
00069 
00070 private:
00071     CPKIFFuncStorageSingleton();
00073     CPKIFFuncStorageSingleton(const CPKIFFuncStorageSingleton& ext);//added 8/21/2004
00075     CPKIFFuncStorageSingleton& operator=(const CPKIFFuncStorageSingleton& rhs); //added 8/21/2004
00076 
00077     static CPKIFFuncStorageSingleton * m_hInstance;
00078 };
00079 
00080 #endif
00081 
00082 

Generated on Mon Nov 15 11:15:54 2010 for PublicKeyInfrastructureFramework(PKIF) by  doxygen 1.5.6