Mesh Oriented datABase  (version 5.4.1)
Array-based unstructured mesh datastructure
moab::PolyElementSeq Class Reference

#include <PolyElementSeq.hpp>

+ Inheritance diagram for moab::PolyElementSeq:
+ Collaboration diagram for moab::PolyElementSeq:

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 EntitySequencesplit (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)

Detailed Description

Definition at line 9 of file PolyElementSeq.hpp.


Constructor & Destructor Documentation

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 )
    {
    }

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 ) {}

Member Function Documentation

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]

Split this sequence into two consecutive sequences.

Split this sequence into two sequences.

Parameters:
hereNew sequences should be [start_handle(),here) & [here,end_handle()]
Returns:
New sequence containing [here,end_handle()]

Reimplemented from moab::UnstructuredElemSeq.

Definition at line 8 of file PolyElementSeq.cpp.

References PolyElementSeq().

{
    return new PolyElementSeq( *this, here );
}

List of all members.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines