00001 #ifndef __GAUDI_INTERFACES_IVALIDITY_H__ 00002 #define __GAUDI_INTERFACES_IVALIDITY_H__ 00003 00004 // 00005 // class IValidity : interface for asking the validity of a given object 00006 // 00007 // 00008 00009 class ITime; 00010 class StatusCode; 00011 00012 class IValidity 00013 { 00014 00015 public: 00016 00017 // is the Object valid? (it can be always invalid) 00018 virtual bool isValid () = 0 ; 00019 00020 // is the Object valid for a given time? 00021 virtual bool isValid ( const ITime& ) = 0 ; 00022 00023 // since what time the Objest is valid? 00024 virtual const ITime& validSince () = 0 ; 00025 00026 // till what time the Object is Valid? 00027 virtual const ITime& validTill () = 0 ; 00028 00029 // set the validity range of the Object 00030 virtual void setValidity ( const ITime& , 00031 const ITime& ) = 0 ; 00032 // set the validity time of the Object 00033 virtual void setValiditySince ( const ITime& ) = 0 ; 00034 00035 // set the validity time of the Object 00036 virtual void setValidityTill ( const ITime& ) = 0 ; 00037 00038 // update the validity range of the object (foreseen for "tree-like" structures) 00039 virtual StatusCode updateValidity () = 0; 00040 00041 // destructor 00042 virtual ~IValidity(){}; 00043 00044 }; 00045 00046 // 00047 // 00048 // 00049 00050 00051 00052 #endif // __GAUDI_INTERFACES_IVALIDITY_H__
1.2.3 written by Dimitri van Heesch,
© 1997-2000