00001 00009 #ifndef __ICACExtensionFactory_H__ 00010 #define __ICACExtensionFactory_H__ 00011 00012 #if _MSC_VER > 1000 00013 #pragma once 00014 #endif // _MSC_VER > 1000 00015 00016 00017 #include "PKIFdll.h" 00018 #define CAC_API_FACTORY 00019 00020 FD_SMART_PTR(CPKIFBuffer); 00021 FD_SMART_PTR(CPKIFX509Extension); 00022 00029 class CAC_API CAC_NO_VTABLE ICACExtensionFactory 00030 { 00031 public: 00032 ICACExtensionFactory(); //added 8/21/2004 00033 00034 virtual const char* refOID() = 0; 00035 //virtual CPKIFX509ExtensionPtr create(const CACX509V3Extension& ext) = 0; 00036 virtual CPKIFX509ExtensionPtr create(bool criticality, const CPKIFBufferPtr& ext) = 0; 00037 private: 00038 //added 8/21/2004 00040 ICACExtensionFactory(const ICACExtensionFactory& copy); 00042 ICACExtensionFactory& operator=(const ICACExtensionFactory& rhs); 00043 }; 00044 #endif 00045