MFEM  v3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Public Member Functions | Public Attributes | List of all members
mfem::NCMesh::Node Struct Reference

#include <ncmesh.hpp>

Inheritance diagram for mfem::NCMesh::Node:
[legend]
Collaboration diagram for mfem::NCMesh::Node:
[legend]

Public Member Functions

 Node (int id)
 
void RefVertex ()
 
void RefEdge ()
 
void UnrefVertex (HashTable< Node > &nodes)
 
void UnrefEdge (HashTable< Node > &nodes)
 
 ~Node ()
 
- Public Member Functions inherited from mfem::Hashed2< Node >
 Hashed2 (int id)
 

Public Attributes

Vertexvertex
 
Edgeedge
 
- Public Attributes inherited from mfem::Hashed2< Node >
int id
 
int p1
 
int p2
 
Node * next
 

Detailed Description

A Node can hold a Vertex, an Edge, or both. Elements directly point to their corner nodes, but edge nodes also exist and can be accessed using a hash-table given their two end-point node IDs. All nodes can be accessed in this way, with the exception of top-level vertex nodes. When an element is being refined, the mid-edge nodes are readily available with this mechanism. The new elements "sign in" into the nodes to have vertices and edges created for them or to just have their reference counts increased. The parent element "signs off" its nodes, which decrements the vertex and edge reference counts. Vertices and edges are destroyed when their reference count drops to zero.

Definition at line 199 of file ncmesh.hpp.

Constructor & Destructor Documentation

mfem::NCMesh::Node::Node ( int  id)
inline

Definition at line 204 of file ncmesh.hpp.

mfem::NCMesh::Node::~Node ( )

Definition at line 202 of file ncmesh.cpp.

Member Function Documentation

void mfem::NCMesh::Node::RefEdge ( )

Definition at line 181 of file ncmesh.cpp.

void mfem::NCMesh::Node::RefVertex ( )

Definition at line 175 of file ncmesh.cpp.

void mfem::NCMesh::Node::UnrefEdge ( HashTable< Node > &  nodes)

Definition at line 194 of file ncmesh.cpp.

void mfem::NCMesh::Node::UnrefVertex ( HashTable< Node > &  nodes)

Definition at line 187 of file ncmesh.cpp.

Member Data Documentation

Edge* mfem::NCMesh::Node::edge

Definition at line 202 of file ncmesh.hpp.

Vertex* mfem::NCMesh::Node::vertex

Definition at line 201 of file ncmesh.hpp.


The documentation for this struct was generated from the following files: