Nektar++
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Public Member Functions | List of all members
Nektar::NekMeshUtils::HOSurfHash Struct Reference

#include <HOAlignment.h>

Inheritance diagram for Nektar::NekMeshUtils::HOSurfHash:
Inheritance graph
[legend]
Collaboration diagram for Nektar::NekMeshUtils::HOSurfHash:
Collaboration graph
[legend]

Public Member Functions

std::size_t operator() (HOSurfSharedPtr const &p) const
 

Detailed Description

Hash class for high-order surfaces.

Definition at line 186 of file HOAlignment.h.

Member Function Documentation

std::size_t Nektar::NekMeshUtils::HOSurfHash::operator() ( HOSurfSharedPtr const &  p) const
inline

Calculate hash of a given high-order surface p by taking successive hashes of the vertex IDs.

Definition at line 192 of file HOAlignment.h.

193  {
194  std::size_t seed = 0;
195  std::vector<int> ids = p->vertId;
196 
197  std::sort(ids.begin(), ids.end());
198  for (int i = 0; i < ids.size(); ++i)
199  {
200  boost::hash_combine(seed, ids[i]);
201  }
202  return seed;
203  }