freValidityTag.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   F.R.E.E. - flexible registration evaluation engine
00004   Version:   v.1.0.0
00005   Date:      $Date: 2006/09/01 12:00:00 $
00006   Module:    $RCSfile: freValidityTag.h,v $
00007   Language:  C++
00008 
00009 
00010   Copyright (c) 2007 Ralf o Floca (Department of Medical Informatics,
00011   Institute for Medical Biometry and Informatics, University of Heidelberg,
00012   Germany). All rights reserved.
00013   See FREECopyright.txt or http://www.mi.med.uni-hd.de/free/copyright.htm
00014   for details.
00015 
00016      This software is distributed WITHOUT ANY WARRANTY; without even 
00017      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
00018      PURPOSE.  See the above copyright notices for more information.
00019 
00020 =========================================================================*/
00021 #ifndef __freValidityTag_h
00022 #define __freValidityTag_h
00023 
00024 #include "freExceptions.h"
00025 
00026 #include "itkLightObject.h"
00027 
00028 #include <time.h>
00029 
00030 namespace FREE
00031 {
00032 
00042 class ValidityTag : public itk::LightObject
00043 {
00044 public:
00045   typedef ValidityTag                    Self;
00046   typedef itk::LightObject               Superclass;
00047   typedef itk::SmartPointer<Self>        Pointer;
00048   typedef itk::SmartPointer<const Self>  ConstPointer;
00049 
00050   typedef clock_t TagType;
00051 
00052   itkTypeMacro(ValidityTag, LightObject);
00053   itkNewMacro(ValidityTag);
00054 
00058   static Pointer New(const ValidityTag& tag);
00063   static Pointer New(const TagType& tag);
00068   static Pointer NewNull();
00069 
00075   bool IsOutdated(const ValidityTag& referenceTag) const;
00076   bool IsOutdated(const ValidityTag* pReferenceTag) const;
00082   bool IsUpdated(const ValidityTag& referenceTag) const;
00083   bool IsUpdated(const ValidityTag* pReferenceTag) const;
00087   bool Equals(const ValidityTag& referenceTag) const;
00088   bool Equals(const ValidityTag* pReferenceTag) const;
00089 
00091   void Actualize();
00092 
00094   void SetTag (const ValidityTag& tag);
00095   void SetTag (const ValidityTag* pTag);
00096 
00098   void SetTimeStamp (const TagType& tag);
00100   const TagType& GetTimeStamp () const;
00101 
00102 protected:
00103   ValidityTag();
00104 
00106   TagType m_Tag;
00107 };
00108 
00109 } //end of namespace FREE
00110 
00111 #endif

Generated at Sat Oct 13 18:02:04 2007 for f.r.e.e. - Flexible Registration and Evaluation Engine by doxygen 1.5.3 written by Dimitri van Heesch, © 1997-2000