36 #ifndef UTILITIES_PREPROCESSING_MESHCONVERT_INPUTNEK
37 #define UTILITIES_PREPROCESSING_MESHCONVERT_INPUTNEK
39 #include "../Module.h"
57 struct HOSurfHash : std::unary_function<HOSurfSharedPtr, std::size_t>
66 std::vector<int> ids = p->vertId;
67 std::sort(ids.begin(), ids.end());
68 for (
int i = 0; i < ids.size(); ++i)
70 boost::hash_combine(seed, ids[i]);
76 bool operator==(HOSurfSharedPtr
const &p1, HOSurfSharedPtr
const &p2);
78 typedef boost::unordered_set<HOSurfSharedPtr, HOSurfHash>
HOSurfSet;
pair< ModuleType, string > ModuleKey
static boost::shared_ptr< DataType > AllocateSharedPtr()
Allocate a shared pointer from the memory pool.
boost::shared_ptr< HOSurf > HOSurfSharedPtr
HOTriangle< NodeSharedPtr > HOSurf
boost::shared_ptr< Mesh > MeshSharedPtr
Shared pointer to a mesh.
boost::shared_ptr< Module > ModuleSharedPtr
boost::unordered_set< HOSurfSharedPtr, HOSurfHash > HOSurfSet
std::size_t operator()(HOSurfSharedPtr const &p) const
bool operator==(TriFaceIDs const &p1, TriFaceIDs const &p2)
A lightweight struct for dealing with high-order triangle alignment.