18 #ifndef itkAutomaticTopologyMeshSource_h
19 #define itkAutomaticTopologyMeshSource_h
23 #include "itksys/hash_map.hxx"
110 template<
typename TOutputMesh >
146 typedef itksys::hash_map<
152 itkStaticConstMacro(PointDimension,
unsigned int,
153 MeshType::PointDimension);
154 itkStaticConstMacro(MaxTopologicalDimension,
unsigned int,
155 MeshType::MaxTopologicalDimension);
342 IdType size = identifierArray.
Size();
344 std::sort( identifierArray.begin(), identifierArray.end() );
347 IdType *
id = &identifierArray[0];
352 hash = ( hash << 7 ) | ( hash >> 25 );
369 IdType size1 = identifierArray1.
Size();
370 IdType size2 = identifierArray2.
Size();
372 if ( size1 != size2 )
377 std::sort( identifierArray1.begin(), identifierArray1.end() );
378 std::sort( identifierArray2.begin(), identifierArray2.end() );
380 return ( identifierArray1 == identifierArray2 );
388 void GenerateData() ITK_OVERRIDE {}
394 typedef itksys::hash_map<
406 #ifndef ITK_MANUAL_INSTANTIATION
407 #include "itkAutomaticTopologyMeshSource.hxx"
410 #endif // itkAutomaticTopologyMeshSource_h
Light weight base class for most itk classes.
Convenience class for generating meshes.
SmartPointer< const Self > ConstPointer
typedef::itk::TetrahedronCell< CellType > TetrahedronCell
MeshSource< TOutputMesh > Superclass
typedef::itk::LineCell< CellType > LineCell
MeshType::Pointer MeshPointer
typedef::itk::QuadrilateralCell< CellType > QuadrilateralCell
typedef::itk::TriangleCell< CellType > TriangleCell
SmartPointer< Self > Pointer
CellHashMap m_CellsHashTable
Base class for all process objects that output mesh data.
PointType::CoordRepType CoordinateType
SizeValueType IdentifierType
MeshType::PointType PointType
IdentifierType operator()(Array< IdentifierType > identifierArray) const
PointHashMap m_PointsHashTable
AutomaticTopologyMeshSource Self
ImageBaseType::PointType PointType
itksys::hash_map< PointType, IdentifierType, StructHashFunction< PointHashType > > PointHashMap
CellType::CellAutoPointer CellAutoPointer
typedef::itk::HexahedronCell< CellType > HexahedronCell
typedef::itk::VertexCell< CellType > VertexCell
bool operator()(Array< IdentifierType > identifierArray1, Array< IdentifierType > identifierArray2) const
SizeValueType Size(void) const
MeshType::CellType CellType
Generic hash function for an arbitrary struct (or class).
MeshType::PointHashType PointHashType
unsigned long IdentifierType
itksys::hash_map< Array< IdentifierType >, IdentifierType, IdentifierArrayHashFunction, IdentifierArrayEqualsFunction > CellHashMap
Array< IdentifierType > IdentifierArrayType
::itk::IdentifierType IdentifierType