00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __itkVersion_h
00021 #define __itkVersion_h
00022
00023 #include "itkObject.h"
00024 #include "itkObjectFactory.h"
00025
00026 #define ITK_VERSION_TO_STRING(x) ITK_VERSION_TO_STRING0(x)
00027 #define ITK_VERSION_TO_STRING0(x) #x
00028 #define ITK_VERSION ITK_VERSION_TO_STRING(ITK_VERSION_MAJOR) \
00029 ITK_VERSION_TO_STRING(ITK_VERSION_MINOR) \
00030 ITK_VERSION_TO_STRING(ITK_VERSION_PATCH)
00031 #define ITK_SOURCE_VERSION "itk version " ITK_VERSION ", itk source $Revision: 1.1838 $, $Date: 2005/11/29 06:05:03 $ (GMT)"
00032
00033 namespace itk
00034 {
00047 class ITKCommon_EXPORT Version : public Object
00048 {
00049 public:
00051 typedef Version Self;
00052 typedef Object Superclass;
00053 typedef SmartPointer<Self> Pointer;
00054 typedef SmartPointer<const Self> ConstPointer;
00055
00057 itkNewMacro(Self);
00058
00060 itkTypeMacro(Version,Object);
00061
00065 static const char *GetITKVersion() { return ITK_VERSION; };
00066 static int GetITKMajorVersion() { return ITK_VERSION_MAJOR; };
00067 static int GetITKMinorVersion() { return ITK_VERSION_MINOR; };
00068 static int GetITKBuildVersion() { return ITK_VERSION_PATCH; };
00069 static const char *GetITKSourceVersion() { return ITK_SOURCE_VERSION; };
00070
00071 protected:
00072 Version();
00073 ~Version();
00074
00075 private:
00076 Version(const Self&);
00077 void operator=(const Self&);
00078
00079 };
00080
00081 }
00082
00083 #endif