Period.h

Go to the documentation of this file.
00001 
00009 #ifndef __PERIOD_H__
00010 #define __PERIOD_H__
00011 
00012 #if _MSC_VER > 1000
00013 #pragma once
00014 #endif // _MSC_VER > 1000
00015 
00016 #include "PKIFdll.h"
00017 
00018 FD_SMART_PTR(CPKIFTime);
00019 FD_SMART_PTR(CPKIFDuration);
00020 struct _CPKIFPeriodImpl;
00021 struct _CPKIFPeriodData;
00022 
00029 class CAC_API CPKIFPeriod
00030 {
00031 public:
00032 
00033     //-----------------------------------------------------------------------
00034     // Constructors
00035     //-----------------------------------------------------------------------
00036     CPKIFPeriod();
00037     CPKIFPeriod(CPKIFTimePtr& start_, CPKIFTimePtr& end_);
00038     CPKIFPeriod(CPKIFTimePtr& start_, CPKIFDurationPtr& duration_);
00039     CPKIFPeriod(CPKIFPeriod& time_);
00040     ~CPKIFPeriod();
00041 
00042     //-----------------------------------------------------------------------
00043     // Properties
00044     //-----------------------------------------------------------------------
00045     
00046     CPKIFTimePtr start() const;
00047     void start(CPKIFTimePtr& start_);
00048 
00049     CPKIFTimePtr end() const;
00050     void end(CPKIFTimePtr& end_);
00051 
00052     CPKIFDurationPtr duration() const;
00053 
00054     bool contains(CPKIFTimePtr& time_) const;
00055     bool contains(CPKIFTimePtr& time_, CPKIFDurationPtr& skew_) const;
00056 
00057     //-----------------------------------------------------------------------
00058     // Operations
00059     //-----------------------------------------------------------------------
00060 
00061     //-----------------------------------------------------------------------
00062     // Operators
00063     //-----------------------------------------------------------------------
00064     CPKIFPeriod& operator=(const CPKIFPeriod& period_);
00065 
00066 protected:
00067     struct _CPKIFPeriodImpl*& impl() const;
00068 
00069 private:
00070     struct _CPKIFPeriodData* m_pData;
00071 };
00072 
00073 
00074 struct _CPKIFPeriodData
00075 {
00076     CPKIFTimePtr start;
00077     CPKIFTimePtr end;
00078 };
00080 struct _CPKIFPeriodImpl
00081 {
00082     _CPKIFPeriodImpl();
00083     _CPKIFPeriodImpl(const _CPKIFPeriodImpl & another_ );
00084     struct _CPKIFPeriodImpl & operator=(const struct _CPKIFPeriodImpl & another_);
00085     CPKIFTimePtr m_start;
00086     CPKIFTimePtr m_end;
00087 };
00089 #endif //__PERIOD_H__
00090 

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