ITK  5.4.0
Insight Toolkit
itkMeshRegion.h
Go to the documentation of this file.
1 /*=========================================================================
2  *
3  * Copyright NumFOCUS
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * https://www.apache.org/licenses/LICENSE-2.0.txt
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  *=========================================================================*/
18 /*=========================================================================
19  *
20  * Portions of this file are subject to the VTK Toolkit Version 3 copyright.
21  *
22  * Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
23  *
24  * For complete copyright, license and disclaimer of warranty information
25  * please refer to the NOTICE file at the top of the ITK source tree.
26  *
27  *=========================================================================*/
28 #ifndef itkMeshRegion_h
29 #define itkMeshRegion_h
30 
31 #include "itkRegion.h"
32 #include "itkObjectFactory.h"
33 #include "itkNumericTraits.h"
34 #include "itkIntTypes.h"
35 #include "ITKMeshExport.h"
36 
37 namespace itk
38 {
52 class ITKMesh_EXPORT MeshRegion : public Region
53 {
54 public:
56  using Self = MeshRegion;
57  using Superclass = Region;
58 
60  itkOverrideGetNameOfClassMacro(MeshRegion);
61 
64  MeshRegion();
65 
68  ~MeshRegion() override;
69 
72  GetRegionType() const override
73  {
74  return Superclass::RegionEnum::ITK_UNSTRUCTURED_REGION;
75  }
76 
80  {
81  return m_NumberOfRegions;
82  }
83 
85  void
87  {
88  if (num >= 1)
89  {
90  m_NumberOfRegions = num;
91  }
92  }
97  GetRegion() const
98  {
99  return m_Region;
100  }
101 
103  void
105  {
106  if (region >= 1)
107  {
108  m_Region = region;
109  }
110  }
113 private:
114  // The maximum number of regions possible.
115  SizeValueType m_NumberOfRegions{};
116 
117  // The specified region.
118  SizeValueType m_Region{};
119 };
120 } // end namespace itk
121 
122 #endif
itkObjectFactory.h
itkRegion.h
itk::MeshRegion::SetRegion
void SetRegion(SizeValueType region)
Definition: itkMeshRegion.h:104
itk::MeshRegion::GetRegionType
RegionEnum GetRegionType() const override
Definition: itkMeshRegion.h:72
RegionEnum
itk::Region
A region represents some portion or piece of data.
Definition: itkRegion.h:65
itkIntTypes.h
itk::MeshRegion::GetRegion
SizeValueType GetRegion() const
Definition: itkMeshRegion.h:97
itk
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
Definition: itkAnnulusOperator.h:24
itk::MeshRegion::GetNumberOfRegions
SizeValueType GetNumberOfRegions() const
Definition: itkMeshRegion.h:79
itkNumericTraits.h
itk::MeshRegion
A mesh region represents an unstructured region of data.
Definition: itkMeshRegion.h:52
itk::MeshRegion::SetNumberOfRegions
void SetNumberOfRegions(SizeValueType num)
Definition: itkMeshRegion.h:86
itk::SizeValueType
unsigned long SizeValueType
Definition: itkIntTypes.h:83