Commit e5d6bad5 authored by Michael Turner's avatar Michael Turner
Browse files

clean up rest

parent d849d56e
......@@ -177,6 +177,37 @@ template <typename T> struct HOTriangle
}
};
typedef HOTriangle<NodeSharedPtr> HOSurf;
typedef boost::shared_ptr<HOSurf> HOSurfSharedPtr;
/**
* Hash class for high-order surfaces.
*/
struct HOSurfHash : std::unary_function<HOSurfSharedPtr, std::size_t>
{
/**
* Calculate hash of a given high-order surface p by taking
* successive hashes of the vertex IDs.
*/
std::size_t operator()(HOSurfSharedPtr const &p) const
{
std::size_t seed = 0;
std::vector<int> ids = p->vertId;
std::sort(ids.begin(), ids.end());
for (int i = 0; i < ids.size(); ++i)
{
boost::hash_combine(seed, ids[i]);
}
return seed;
}
};
NEKMESHUTILS_EXPORT bool operator==(HOSurfSharedPtr const &p1,
HOSurfSharedPtr const &p2);
typedef boost::unordered_set<HOSurfSharedPtr, HOSurfHash> HOSurfSet;
/**
* @brief A lightweight struct for dealing with high-order quadrilateral
* alignment.
......
......@@ -55,9 +55,6 @@ int Hexahedron::m_faceIds[6][4] = {
{3, 2, 6, 7}, {0, 3, 7, 4}, {4, 5, 6, 7}
};
/**
* @brief Create a hexahedral element.
*/
Hexahedron::Hexahedron(ElmtConfig pConf,
vector<NodeSharedPtr> pNodeList,
vector<int> pTagList)
......
......@@ -67,9 +67,13 @@ public:
/// Element type
static LibUtilities::ShapeType m_type;
/**
* @brief Create a hexahedral element.
*/
NEKMESHUTILS_EXPORT Hexahedron(ElmtConfig pConf,
std::vector<NodeSharedPtr> pNodeList,
std::vector<int> pTagList);
/// copy hex element
NEKMESHUTILS_EXPORT Hexahedron(const Hexahedron &pSrc);
NEKMESHUTILS_EXPORT virtual ~Hexahedron()
{
......
......@@ -29,7 +29,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
// Description: Mesh manipulation objects.
// Description: Mesh line object.
//
////////////////////////////////////////////////////////////////////////////////
......
......@@ -29,12 +29,12 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
// Description: Mesh manipulation objects.
// Description: Mesh line object.
//
////////////////////////////////////////////////////////////////////////////////
#ifndef NekMeshUtils_MESHELEMENTS_LINE
#define NekMeshUtils_MESHELEMENTS_LINE
#ifndef NEKMESHUTILS_MESHELEMENTS_LINE
#define NEKMESHUTILS_MESHELEMENTS_LINE
#include <NekMeshUtils/NekMeshUtilsDeclspec.h>
#include <NekMeshUtils/MeshElements/Element.h>
......
......@@ -29,7 +29,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
// Description: Mesh manipulation objects.
// Description: Mesh object.
//
////////////////////////////////////////////////////////////////////////////////
......
......@@ -29,7 +29,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
// Description: Mesh manipulation objects.
// Description: Mesh object.
//
////////////////////////////////////////////////////////////////////////////////
......
......@@ -29,7 +29,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
// Description: Mesh manipulation objects.
// Description: Mesh node object.
//
////////////////////////////////////////////////////////////////////////////////
......@@ -69,6 +69,7 @@ public:
// Node(const Node& pSrc)
// : m_id(pSrc.m_id), m_x(pSrc.m_x), m_y(pSrc.m_y),
// m_z(pSrc.m_z), m_geom() {}
/// create an empty node
NEKMESHUTILS_EXPORT Node() : m_id(0), m_x(0.0), m_y(0.0), m_z(0.0), m_geom()
{
}
......
////////////////////////////////////////////////////////////////////////////////
//
// File: MeshElements.cpp
// File: Point.cpp
//
// For more information, please see: http://www.nektar.info/
//
......@@ -29,7 +29,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
// Description: Mesh manipulation objects.
// Description: Mesh point object.
//
////////////////////////////////////////////////////////////////////////////////
......
////////////////////////////////////////////////////////////////////////////////
//
// File: Mesh.h
// File: Point.h
//
// For more information, please see: http://www.nektar.info/
//
......@@ -29,7 +29,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
// Description: Mesh manipulation objects.
// Description: Mesh point object.
//
////////////////////////////////////////////////////////////////////////////////
......
////////////////////////////////////////////////////////////////////////////////
//
// File: MeshElements.cpp
// File: Prism.cpp
//
// For more information, please see: http://www.nektar.info/
//
......@@ -29,7 +29,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
// Description: Mesh manipulation objects.
// Description: Mesh prism object.
//
////////////////////////////////////////////////////////////////////////////////
......
////////////////////////////////////////////////////////////////////////////////
//
// File: Mesh.h
// File: Prism.h
//
// For more information, please see: http://www.nektar.info/
//
......@@ -29,7 +29,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
// Description: Mesh manipulation objects.
// Description: Mesh prism object.
//
////////////////////////////////////////////////////////////////////////////////
......
////////////////////////////////////////////////////////////////////////////////
//
// File: MeshElements.cpp
// File: Pyramid.cpp
//
// For more information, please see: http://www.nektar.info/
//
......@@ -29,7 +29,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
// Description: Mesh manipulation objects.
// Description: Mesh pyramid object.
//
////////////////////////////////////////////////////////////////////////////////
......
////////////////////////////////////////////////////////////////////////////////
//
// File: Mesh.h
// File: Pyramid.h
//
// For more information, please see: http://www.nektar.info/
//
......@@ -29,7 +29,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
// Description: Mesh manipulation objects.
// Description: Mesh pyramid object.
//
////////////////////////////////////////////////////////////////////////////////
......
////////////////////////////////////////////////////////////////////////////////
//
// File: MeshElements.cpp
// File: Quadrilateral.cpp
//
// For more information, please see: http://www.nektar.info/
//
......@@ -29,7 +29,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
// Description: Mesh manipulation objects.
// Description: Mesh quad object.
//
////////////////////////////////////////////////////////////////////////////////
......
////////////////////////////////////////////////////////////////////////////////
//
// File: Mesh.h
// File: Quadrilateral.h
//
// For more information, please see: http://www.nektar.info/
//
......@@ -29,7 +29,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
// Description: Mesh manipulation objects.
// Description: Mesh quad object.
//
////////////////////////////////////////////////////////////////////////////////
......
////////////////////////////////////////////////////////////////////////////////
//
// File: MeshElements.cpp
// File: Tetrahedron.cpp
//
// For more information, please see: http://www.nektar.info/
//
......@@ -29,7 +29,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
// Description: Mesh manipulation objects.
// Description: Mesh tet object.
//
////////////////////////////////////////////////////////////////////////////////
......
////////////////////////////////////////////////////////////////////////////////
//
// File: Mesh.h
// File: Tetrahedron.h
//
// For more information, please see: http://www.nektar.info/
//
......@@ -29,7 +29,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
// Description: Mesh manipulation objects.
// Description: Mesh tet object.
//
////////////////////////////////////////////////////////////////////////////////
......
////////////////////////////////////////////////////////////////////////////////
//
// File: MeshElements.cpp
// File: Triangle.cpp
//
// For more information, please see: http://www.nektar.info/
//
......@@ -29,7 +29,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
// Description: Mesh manipulation objects.
// Description: Mesh triangle object.
//
////////////////////////////////////////////////////////////////////////////////
......
////////////////////////////////////////////////////////////////////////////////
//
// File: Mesh.h
// File: Triangle.h
//
// For more information, please see: http://www.nektar.info/
//
......@@ -29,12 +29,12 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
// Description: Mesh manipulation objects.
// Description: Mesh triangle object.
//
////////////////////////////////////////////////////////////////////////////////
#ifndef NekMeshUtils_MESHELEMENTS_TRIANGLE
#define NekMeshUtils_MESHELEMENTS_TRIANGLE
#ifndef NEKMESHUTILS_MESHELEMENTS_TRIANGLE
#define NEKMESHUTILS_MESHELEMENTS_TRIANGLE
#include <NekMeshUtils/NekMeshUtilsDeclspec.h>
#include <NekMeshUtils/MeshElements/Element.h>
......@@ -87,36 +87,6 @@ public:
NEKMESHUTILS_EXPORT static unsigned int GetNumNodes(ElmtConfig pConf);
};
typedef HOTriangle<NodeSharedPtr> HOSurf;
typedef boost::shared_ptr<HOSurf> HOSurfSharedPtr;
/**
* Hash class for high-order surfaces.
*/
struct HOSurfHash : std::unary_function<HOSurfSharedPtr, std::size_t>
{
/**
* Calculate hash of a given high-order surface p by taking
* successive hashes of the vertex IDs.
*/
std::size_t operator()(HOSurfSharedPtr const &p) const
{
std::size_t seed = 0;
std::vector<int> ids = p->vertId;
std::sort(ids.begin(), ids.end());
for (int i = 0; i < ids.size(); ++i)
{
boost::hash_combine(seed, ids[i]);
}
return seed;
}
};
NEKMESHUTILS_EXPORT bool operator==(HOSurfSharedPtr const &p1,
HOSurfSharedPtr const &p2);
typedef boost::unordered_set<HOSurfSharedPtr, HOSurfHash> HOSurfSet;
}
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment