Mesh Oriented datABase
(version 5.4.1)
Array-based unstructured mesh datastructure
|
#include <PolyElementSeq.hpp>
Public Member Functions | |
PolyElementSeq (EntityHandle shandle, EntityID entity_count, unsigned nodes_per_entity, SequenceData *dat) | |
PolyElementSeq (EntityHandle shandle, EntityID entity_count, unsigned nodes_per_entity, EntityID sequence_data_size) | |
virtual | ~PolyElementSeq () |
virtual EntitySequence * | split (EntityHandle here) |
Split this sequence into two consecutive sequences. | |
virtual ErrorCode | get_connectivity (EntityHandle handle, std::vector< EntityHandle > &connect, bool topological=false) const |
virtual ErrorCode | get_connectivity (EntityHandle handle, EntityHandle const *&connect, int &connect_length, bool topological=false, std::vector< EntityHandle > *storage=0) const |
Protected Member Functions | |
PolyElementSeq (PolyElementSeq &split_from, EntityHandle here) |
Definition at line 9 of file PolyElementSeq.hpp.
moab::PolyElementSeq::PolyElementSeq | ( | EntityHandle | shandle, |
EntityID | entity_count, | ||
unsigned | nodes_per_entity, | ||
SequenceData * | dat | ||
) | [inline] |
Definition at line 12 of file PolyElementSeq.hpp.
Referenced by split().
: UnstructuredElemSeq( shandle, entity_count, nodes_per_entity, dat ) { }
moab::PolyElementSeq::PolyElementSeq | ( | EntityHandle | shandle, |
EntityID | entity_count, | ||
unsigned | nodes_per_entity, | ||
EntityID | sequence_data_size | ||
) | [inline] |
Definition at line 17 of file PolyElementSeq.hpp.
: UnstructuredElemSeq( shandle, entity_count, nodes_per_entity, sequence_data_size ) { }
moab::PolyElementSeq::~PolyElementSeq | ( | ) | [virtual] |
Definition at line 6 of file PolyElementSeq.cpp.
{}
moab::PolyElementSeq::PolyElementSeq | ( | PolyElementSeq & | split_from, |
EntityHandle | here | ||
) | [inline, protected] |
Definition at line 40 of file PolyElementSeq.hpp.
: UnstructuredElemSeq( split_from, here ) {}
ErrorCode moab::PolyElementSeq::get_connectivity | ( | EntityHandle | handle, |
std::vector< EntityHandle > & | connect, | ||
bool | topological = false |
||
) | const [virtual] |
Reimplemented from moab::UnstructuredElemSeq.
Definition at line 13 of file PolyElementSeq.cpp.
References moab::UnstructuredElemSeq::get_array(), MB_SUCCESS, moab::ElementSequence::nodes_per_element(), and moab::EntitySequence::start_handle().
{ EntityHandle const* conn = get_array() + nodes_per_element() * ( handle - start_handle() ); int len = nodes_per_element(); connect.reserve( connect.size() + len ); std::copy( conn, conn + len, std::back_inserter( connect ) ); return MB_SUCCESS; }
ErrorCode moab::PolyElementSeq::get_connectivity | ( | EntityHandle | handle, |
EntityHandle const *& | connect, | ||
int & | connect_length, | ||
bool | topological = false , |
||
std::vector< EntityHandle > * | storage = 0 |
||
) | const [virtual] |
Reimplemented from moab::UnstructuredElemSeq.
Definition at line 22 of file PolyElementSeq.cpp.
References moab::UnstructuredElemSeq::get_array(), MB_SUCCESS, moab::ElementSequence::nodes_per_element(), and moab::EntitySequence::start_handle().
{ conn_ptr = get_array() + nodes_per_element() * ( handle - start_handle() ); len = nodes_per_element(); return MB_SUCCESS; }
EntitySequence * moab::PolyElementSeq::split | ( | EntityHandle | here | ) | [virtual] |
Split this sequence into two consecutive sequences.
Split this sequence into two sequences.
here | New sequences should be [start_handle(),here) & [here,end_handle()] |
Reimplemented from moab::UnstructuredElemSeq.
Definition at line 8 of file PolyElementSeq.cpp.
References PolyElementSeq().
{ return new PolyElementSeq( *this, here ); }