00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __itkMeshRegion_h
00021 #define __itkMeshRegion_h
00022
00023 #include "itkRegion.h"
00024 #include "itkObjectFactory.h"
00025 #include "itkNumericTraits.h"
00026
00027 namespace itk
00028 {
00029
00042 class ITKCommon_EXPORT MeshRegion: public Region
00043 {
00044 public:
00046 typedef MeshRegion Self;
00047 typedef Region Superclass;
00048
00050 itkTypeMacro(MeshRegion, Region);
00051
00054 MeshRegion();
00055
00058 virtual ~MeshRegion();
00059
00061 virtual RegionType GetRegionType() const
00062 {return Superclass::ITK_UNSTRUCTURED_REGION;}
00063
00065 unsigned long GetNumberOfRegions() const
00066 { return m_NumberOfRegions; };
00067
00069 void SetNumberOfRegions(unsigned long num)
00070 { if ((num >= 1) && (num <= NumericTraits<unsigned long>::max()))
00071 { m_NumberOfRegions = num; } }
00072
00074 unsigned long GetRegion() const
00075 { return m_Region; }
00076
00078 void SetRegion(unsigned long region)
00079 { if ((region >= 1) && (region <= NumericTraits<unsigned long>::max()))
00080 { m_Region = region; } }
00081
00082 private:
00083
00084 unsigned long int m_NumberOfRegions;
00085
00086
00087 unsigned long int m_Region;
00088
00089 };
00090
00091 }
00092
00093 #endif
00094