MFEM  v4.0
Finite element discretization library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
mfem::ParNCMesh::ElementSet Class Reference

#include <pncmesh.hpp>

Collaboration diagram for mfem::ParNCMesh::ElementSet:
[legend]

Public Member Functions

 ElementSet (NCMesh *ncmesh=NULL, bool include_ref_types=false)
 
 ElementSet (const ElementSet &other)
 
void Encode (const Array< int > &elements)
 
void Dump (std::ostream &os) const
 
void Load (std::istream &is)
 
void Decode (Array< int > &elements) const
 
void SetNCMesh (NCMesh *ncmesh)
 
const NCMeshGetNCMesh () const
 

Protected Member Functions

void EncodeTree (int elem)
 
void DecodeTree (int elem, int &pos, Array< int > &elements) const
 
void WriteInt (int value)
 
int GetInt (int pos) const
 
void FlagElements (const Array< int > &elements, char flag)
 

Protected Attributes

Array< unsigned char > data
 encoded refinement (sub-)trees More...
 
NCMeshncmesh
 
bool include_ref_types
 

Detailed Description

Uniquely encodes a set of leaf elements in the refinement hierarchy of an NCMesh. Can be dumped to a stream, sent to another processor, loaded, and decoded to identify the same set of elements (refinements) in a different but compatible NCMesh. The encoding can optionally include the refinement types needed to reach the leaves, so the element set can be decoded (recreated) even if the receiver has an incomplete tree.

Definition at line 347 of file pncmesh.hpp.

Constructor & Destructor Documentation

mfem::ParNCMesh::ElementSet::ElementSet ( NCMesh ncmesh = NULL,
bool  include_ref_types = false 
)
inline

Definition at line 350 of file pncmesh.hpp.

mfem::ParNCMesh::ElementSet::ElementSet ( const ElementSet other)

Definition at line 2029 of file pncmesh.cpp.

Member Function Documentation

void mfem::ParNCMesh::ElementSet::Decode ( Array< int > &  elements) const

Definition at line 2157 of file pncmesh.cpp.

void mfem::ParNCMesh::ElementSet::DecodeTree ( int  elem,
int &  pos,
Array< int > &  elements 
) const
protected

Definition at line 2125 of file pncmesh.cpp.

void mfem::ParNCMesh::ElementSet::Dump ( std::ostream &  os) const

Definition at line 2167 of file pncmesh.cpp.

void mfem::ParNCMesh::ElementSet::Encode ( const Array< int > &  elements)

Definition at line 2105 of file pncmesh.cpp.

void mfem::ParNCMesh::ElementSet::EncodeTree ( int  elem)
protected

Definition at line 2068 of file pncmesh.cpp.

void mfem::ParNCMesh::ElementSet::FlagElements ( const Array< int > &  elements,
char  flag 
)
protected

Definition at line 2053 of file pncmesh.cpp.

int mfem::ParNCMesh::ElementSet::GetInt ( int  pos) const
protected

Definition at line 2044 of file pncmesh.cpp.

const NCMesh* mfem::ParNCMesh::ElementSet::GetNCMesh ( ) const
inline

Definition at line 361 of file pncmesh.hpp.

void mfem::ParNCMesh::ElementSet::Load ( std::istream &  is)

Definition at line 2173 of file pncmesh.cpp.

void mfem::ParNCMesh::ElementSet::SetNCMesh ( NCMesh ncmesh)
inline

Definition at line 360 of file pncmesh.hpp.

void mfem::ParNCMesh::ElementSet::WriteInt ( int  value)
protected

Definition at line 2035 of file pncmesh.cpp.

Member Data Documentation

Array<unsigned char> mfem::ParNCMesh::ElementSet::data
protected

encoded refinement (sub-)trees

Definition at line 364 of file pncmesh.hpp.

bool mfem::ParNCMesh::ElementSet::include_ref_types
protected

Definition at line 366 of file pncmesh.hpp.

NCMesh* mfem::ParNCMesh::ElementSet::ncmesh
protected

Definition at line 365 of file pncmesh.hpp.


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