ITK  6.0.0
Insight Toolkit
Public Types | Static Public Attributes | List of all members
itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType > Class Template Reference

#include <itkDefaultStaticMeshTraits.h>

Detailed Description

template<typename TPixelType, unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
class itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >

DefaultStaticMeshTraits is a simple structure that holds type information for a mesh and its cells. It is used to avoid the passing of many template parameters while still enjoying the benefits of generic programming.

Template parameters for DefaultStaticMeshTraits:

TPixelType = The type stored as data for an entity (cell, point, or boundary).

VPointDimension = Geometric dimension of space.

VMaxTopologicalDimension = Max topological dimension of a cell that can be inserted into this mesh.

TCoordinate = Numerical type with which to represent each coordinate value.

TInterpolationWeight = Numerical type to store interpolation weights.

Examples
Examples/DataRepresentation/Mesh/MeshTraits.cxx.

Definition at line 61 of file itkDefaultStaticMeshTraits.h.

Public Types

using CellAutoPointer = typename CellType::CellAutoPointer
 
using CellDataContainer = VectorContainer< CellPixelType >
 
using CellFeatureIdentifier = IdentifierType
 
using CellIdentifier = IdentifierType
 
using CellLinksContainer = VectorContainer< PointCellLinksContainer >
 
using CellPixelType = TCellPixelType
 
using CellRawPointer = typename CellType::CellRawPointer
 
using CellsContainer = VectorContainer< CellType * >
 
using CellTraits = itkMakeCellTraitsMacro
 
using CellType = CellInterface< CellPixelType, CellTraits >
 
using CoordinateType = TCoordinate
 
using InterpolationWeightType = TInterpolationWeight
 
using PixelType = TPixelType
 
using PointCellLinksContainer = std::set< CellIdentifier >
 
using PointDataContainer = VectorContainer< PixelType >
 
using PointHashType = Point< CoordinateType, VPointDimension >
 
using PointIdentifier = IdentifierType
 
using PointsContainer = VectorContainer< PointType >
 
using PointType = Point< CoordinateType, VPointDimension >
 
using Self = DefaultStaticMeshTraits
 
using UsingCellsContainer = std::set< CellIdentifier >
 

Static Public Attributes

static constexpr unsigned int MaxTopologicalDimension = VMaxTopologicalDimension
 
static constexpr unsigned int PointDimension = VPointDimension
 

Member Typedef Documentation

◆ CellAutoPointer

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::CellAutoPointer = typename CellType::CellAutoPointer

Definition at line 117 of file itkDefaultStaticMeshTraits.h.

◆ CellDataContainer

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::CellDataContainer = VectorContainer<CellPixelType>

The container type for use in storing cell data. It must conform to the IndexedContainer interface.

Definition at line 137 of file itkDefaultStaticMeshTraits.h.

◆ CellFeatureIdentifier

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::CellFeatureIdentifier = IdentifierType

A type that can be used to identify individual boundary features on the cells. Since this will probably be an index into a static array, this will probably never change from an integer setting.

Definition at line 92 of file itkDefaultStaticMeshTraits.h.

◆ CellIdentifier

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::CellIdentifier = IdentifierType

The type to be used to identify a cell. This should be the index type to the CellsContainer.

Definition at line 87 of file itkDefaultStaticMeshTraits.h.

◆ CellLinksContainer

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::CellLinksContainer = VectorContainer<PointCellLinksContainer>

The container type for use in storing point links back to cells. It must conform to the IndexedContainer interface.

Definition at line 129 of file itkDefaultStaticMeshTraits.h.

◆ CellPixelType

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::CellPixelType = TCellPixelType

Definition at line 69 of file itkDefaultStaticMeshTraits.h.

◆ CellRawPointer

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::CellRawPointer = typename CellType::CellRawPointer

Definition at line 116 of file itkDefaultStaticMeshTraits.h.

◆ CellsContainer

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::CellsContainer = VectorContainer<CellType *>

The container type for use in storing cells. It must conform to the IndexedContainer interface.

Definition at line 121 of file itkDefaultStaticMeshTraits.h.

◆ CellTraits

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::CellTraits = itkMakeCellTraitsMacro

The information needed for a cell type is now defined, so we can define the cell type. We use a macro defined in itkCellInterface.

Definition at line 111 of file itkDefaultStaticMeshTraits.h.

◆ CellType

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::CellType = CellInterface<CellPixelType, CellTraits>

The interface to cells to be used by the mesh. This should not be changed.

Definition at line 115 of file itkDefaultStaticMeshTraits.h.

◆ CoordinateType

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::CoordinateType = TCoordinate

Definition at line 70 of file itkDefaultStaticMeshTraits.h.

◆ InterpolationWeightType

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::InterpolationWeightType = TInterpolationWeight

Definition at line 75 of file itkDefaultStaticMeshTraits.h.

◆ PixelType

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::PixelType = TPixelType

Just save all the template parameters.

Definition at line 68 of file itkDefaultStaticMeshTraits.h.

◆ PointCellLinksContainer

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::PointCellLinksContainer = std::set<CellIdentifier>

The CellLinks container should be a container of PointCellLinksContainer, which should be a container conforming to the STL "set" interface.

Definition at line 125 of file itkDefaultStaticMeshTraits.h.

◆ PointDataContainer

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::PointDataContainer = VectorContainer<PixelType>

The container type for use in storing point data. It must conform to the IndexedContainer interface.

Definition at line 133 of file itkDefaultStaticMeshTraits.h.

◆ PointHashType

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::PointHashType = Point<CoordinateType, VPointDimension>

The type of point used for hashing. This should never change from this setting, regardless of the mesh type.

Definition at line 99 of file itkDefaultStaticMeshTraits.h.

◆ PointIdentifier

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::PointIdentifier = IdentifierType

The type to be used to identify a point. This should be the index type to the PointsContainer.

Definition at line 83 of file itkDefaultStaticMeshTraits.h.

◆ PointsContainer

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::PointsContainer = VectorContainer<PointType>

The container type for use in storing points. It must conform to the IndexedContainer interface.

Definition at line 103 of file itkDefaultStaticMeshTraits.h.

◆ PointType

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::PointType = Point<CoordinateType, VPointDimension>

The type of point used by the mesh.

Definition at line 95 of file itkDefaultStaticMeshTraits.h.

◆ Self

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::Self = DefaultStaticMeshTraits

Standard class type aliases.

Definition at line 65 of file itkDefaultStaticMeshTraits.h.

◆ UsingCellsContainer

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
using itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::UsingCellsContainer = std::set<CellIdentifier>

The container type that will be used to store boundary links back to cells. This must conform to the STL "set" interface.

Definition at line 107 of file itkDefaultStaticMeshTraits.h.

Member Data Documentation

◆ MaxTopologicalDimension

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
constexpr unsigned int itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::MaxTopologicalDimension = VMaxTopologicalDimension
staticconstexpr

Definition at line 79 of file itkDefaultStaticMeshTraits.h.

◆ PointDimension

template<typename TPixelType , unsigned int VPointDimension = 3, unsigned int VMaxTopologicalDimension = VPointDimension, typename TCoordinate = float, typename TInterpolationWeight = float, typename TCellPixelType = TPixelType>
constexpr unsigned int itk::DefaultStaticMeshTraits< TPixelType, VPointDimension, VMaxTopologicalDimension, TCoordinate, TInterpolationWeight, TCellPixelType >::PointDimension = VPointDimension
staticconstexpr

Just save all the template parameters.

Definition at line 78 of file itkDefaultStaticMeshTraits.h.


The documentation for this class was generated from the following file: