00001 00009 #ifndef __AccessDescription_H__ 00010 #define __AccessDescription_H__ 00011 00012 #include "PKIFdll.h" 00013 #include "Buffer.h" 00014 #define CAC_API_FACTORY 00015 00016 #include <vector> 00017 00018 // forward declaration of pimpl type 00019 struct CPKIFAccessDescriptionImpl; 00020 00021 struct CACX509V3AccessDescription; 00022 FD_SMART_PTR(CPKIFOID); 00023 FD_SMART_PTR(CPKIFGeneralName); 00024 00025 00026 00040 class CAC_API CPKIFAccessDescription 00041 { 00042 public: 00043 CPKIFAccessDescription(); 00044 CPKIFAccessDescription(const CPKIFBufferPtr& ext); 00045 //CPKIFAccessDescription(const CACX509V3AccessDescription* ext); 00046 virtual ~CPKIFAccessDescription(); 00047 00049 CPKIFOIDPtr AccessMethod() const; 00050 00052 CPKIFGeneralNamePtr AccessLocation() const; 00053 00054 private: 00056 CPKIFAccessDescription& operator=(const CPKIFAccessDescription& rhs); 00057 00059 CPKIFAccessDescription(const CPKIFAccessDescription& oid);//added 4/6/2004 00060 00061 CPKIFAccessDescriptionImpl *m_impl; 00062 }; 00063 DECLARE_SMART_POINTERS(CPKIFAccessDescription); 00064 typedef std::vector<CPKIFAccessDescriptionPtr, PKIFAlloc<CPKIFAccessDescriptionPtr> > CPKIFAccessDescriptionList; 00065 DECLARE_SMART_POINTERS(CPKIFAccessDescriptionList); 00066 00067 #endif