ITK  6.0.0
Insight Toolkit
itkDefaultDynamicMeshTraits.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 #ifndef itkDefaultDynamicMeshTraits_h
19 #define itkDefaultDynamicMeshTraits_h
20 
21 #include "itkCellInterface.h"
22 #include "itkMapContainer.h"
23 #include "itkPoint.h"
24 #include "itkIntTypes.h"
25 #include <set>
26 
27 namespace itk
28 {
57 template <typename TPixelType,
58  unsigned int VPointDimension = 3,
59  unsigned int VMaxTopologicalDimension = VPointDimension,
60  typename TCoordinate = float,
61  typename TInterpolationWeight = float,
62  typename TCellPixelType = TPixelType>
64 {
65 public:
68 
70  using PixelType = TPixelType;
71  using CellPixelType = TCellPixelType;
72  using CoordinateType = TCoordinate;
73 #ifndef ITK_FUTURE_LEGACY_REMOVE
74  using CoordRepType ITK_FUTURE_DEPRECATED(
75  "ITK 6 discourages using `CoordRepType`. Please use `CoordinateType` instead!") = CoordinateType;
76 #endif
77  using InterpolationWeightType = TInterpolationWeight;
78 
80  static constexpr unsigned int PointDimension = VPointDimension;
81  static constexpr unsigned int MaxTopologicalDimension = VMaxTopologicalDimension;
82 
86 
90 
95 
98 
102 
106 
109  using UsingCellsContainer = std::set<CellIdentifier>;
110 
114 
119 
123 
126  using PointCellLinksContainer = std::set<CellIdentifier>;
127 
131 
135 
139 };
140 } // end namespace itk
141 
142 #endif
itk::DefaultDynamicMeshTraits::CellTraits
itkMakeCellTraitsMacro CellTraits
Definition: itkDefaultDynamicMeshTraits.h:113
itk::DefaultDynamicMeshTraits::UsingCellsContainer
std::set< CellIdentifier > UsingCellsContainer
Definition: itkDefaultDynamicMeshTraits.h:109
itk::DefaultDynamicMeshTraits::CoordinateType
TCoordinate CoordinateType
Definition: itkDefaultDynamicMeshTraits.h:72
itk::DefaultDynamicMeshTraits::PointIdentifier
IdentifierType PointIdentifier
Definition: itkDefaultDynamicMeshTraits.h:85
itkPoint.h
itk::DefaultDynamicMeshTraits::InterpolationWeightType
TInterpolationWeight InterpolationWeightType
Definition: itkDefaultDynamicMeshTraits.h:77
itk::DefaultDynamicMeshTraits::PointCellLinksContainer
std::set< CellIdentifier > PointCellLinksContainer
Definition: itkDefaultDynamicMeshTraits.h:126
itk::MapContainer
A wrapper of the STL "map" container.
Definition: itkMapContainer.h:45
itk::DefaultDynamicMeshTraits::MaxTopologicalDimension
static constexpr unsigned int MaxTopologicalDimension
Definition: itkDefaultDynamicMeshTraits.h:81
itkMakeCellTraitsMacro
#define itkMakeCellTraitsMacro
Definition: itkCellInterface.h:557
itk::DefaultDynamicMeshTraits::CellPixelType
TCellPixelType CellPixelType
Definition: itkDefaultDynamicMeshTraits.h:71
itk::DefaultDynamicMeshTraits::CellFeatureIdentifier
IdentifierType CellFeatureIdentifier
Definition: itkDefaultDynamicMeshTraits.h:94
itk::DefaultDynamicMeshTraits::CellIdentifier
IdentifierType CellIdentifier
Definition: itkDefaultDynamicMeshTraits.h:89
itk::DefaultDynamicMeshTraits::PointDimension
static constexpr unsigned int PointDimension
Definition: itkDefaultDynamicMeshTraits.h:80
itk::CellInterface::CellAutoPointer
SelfAutoPointer CellAutoPointer
Definition: itkCellInterface.h:138
itk::DefaultDynamicMeshTraits::CellAutoPointer
typename CellType::CellAutoPointer CellAutoPointer
Definition: itkDefaultDynamicMeshTraits.h:118
itkIntTypes.h
itk::DefaultDynamicMeshTraits::PixelType
TPixelType PixelType
Definition: itkDefaultDynamicMeshTraits.h:70
itk::CellInterface
An abstract interface for cells.
Definition: itkCellInterface.h:97
itk
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
Definition: itkAnatomicalOrientation.h:29
itkCellInterface.h
itk::Point
A templated class holding a geometric point in n-Dimensional space.
Definition: itkPoint.h:53
itkMapContainer.h
itk::DefaultDynamicMeshTraits
A simple structure that holds type information for a mesh and its cells.
Definition: itkDefaultDynamicMeshTraits.h:63
itk::IdentifierType
SizeValueType IdentifierType
Definition: itkIntTypes.h:90