MOAB: Mesh Oriented datABase  (version 5.5.0)
iBase_EntityArrIterator_Private Struct Referenceabstract

#include <MBIter.hpp>

+ Inheritance diagram for iBase_EntityArrIterator_Private:

Classes

class  IsType
 

Public Member Functions

 iBase_EntityArrIterator_Private (iBase_EntityType type, iMesh_EntityTopology topology, EntityHandle set, int array_sz, bool recursive=false)
 
virtual ~iBase_EntityArrIterator_Private ()
 
int array_size () const
 
virtual ErrorCode step (int num_steps, bool &at_end)=0
 
virtual void get_entities (Core *mb, EntityHandle *array, int &count_out)=0
 
virtual ErrorCode reset (Interface *mb)=0
 
void remove_type (std::vector< EntityHandle > &vect, EntityType t)
 
void remove_type (Range &range, EntityType t)
 

Protected Attributes

iBase_EntityType entType
 
iMesh_EntityTopology entTopo
 
EntityHandle entSet
 
int arrSize
 
bool isRecursive
 

Detailed Description

Definition at line 11 of file MBIter.hpp.

Constructor & Destructor Documentation

◆ iBase_EntityArrIterator_Private()

iBase_EntityArrIterator_Private::iBase_EntityArrIterator_Private ( iBase_EntityType  type,
iMesh_EntityTopology  topology,
EntityHandle  set,
int  array_sz,
bool  recursive = false 
)
inline

Definition at line 21 of file MBIter.hpp.

26  : entType( type ), entTopo( topology ), entSet( set ), arrSize( array_sz ), isRecursive( recursive )
27  {
28  }

◆ ~iBase_EntityArrIterator_Private()

virtual iBase_EntityArrIterator_Private::~iBase_EntityArrIterator_Private ( )
inlinevirtual

Definition at line 30 of file MBIter.hpp.

30 {}

Member Function Documentation

◆ array_size()

int iBase_EntityArrIterator_Private::array_size ( ) const
inline

Definition at line 32 of file MBIter.hpp.

33  {
34  return arrSize;
35  }

References arrSize.

Referenced by iMesh_getNextEntArrIter().

◆ get_entities()

virtual void iBase_EntityArrIterator_Private::get_entities ( Core *  mb,
EntityHandle *  array,
int &  count_out 
)
pure virtual

Implemented in MBIter< Container >.

Referenced by iMesh_getNextEntArrIter().

◆ remove_type() [1/2]

void iBase_EntityArrIterator_Private::remove_type ( Range &  range,
EntityType  t 
)
inline

Definition at line 62 of file MBIter.hpp.

63  {
64  std::pair< Range::iterator, Range::iterator > p = range.equal_range( t );
65  range.erase( p.first, p.second );
66  }

References t.

◆ remove_type() [2/2]

void iBase_EntityArrIterator_Private::remove_type ( std::vector< EntityHandle > &  vect,
EntityType  t 
)
inline

Definition at line 57 of file MBIter.hpp.

58  {
59  vect.erase( std::remove_if( vect.begin(), vect.end(), IsType( t ) ), vect.end() );
60  }

References t.

Referenced by MBIter< Container >::reset().

◆ reset()

virtual ErrorCode iBase_EntityArrIterator_Private::reset ( Interface *  mb)
pure virtual

Implemented in MBIter< Container >.

Referenced by iMesh_resetEntArrIter().

◆ step()

virtual ErrorCode iBase_EntityArrIterator_Private::step ( int  num_steps,
bool &  at_end 
)
pure virtual

Implemented in MBIter< Container >.

Referenced by iMesh_stepEntArrIter().

Member Data Documentation

◆ arrSize

int iBase_EntityArrIterator_Private::arrSize
protected

Definition at line 17 of file MBIter.hpp.

Referenced by array_size(), and MBIter< Container >::get_entities().

◆ entSet

EntityHandle iBase_EntityArrIterator_Private::entSet
protected

Definition at line 16 of file MBIter.hpp.

Referenced by MBIter< Container >::reset().

◆ entTopo

iMesh_EntityTopology iBase_EntityArrIterator_Private::entTopo
protected

Definition at line 15 of file MBIter.hpp.

Referenced by MBIter< Container >::reset().

◆ entType

iBase_EntityType iBase_EntityArrIterator_Private::entType
protected

Definition at line 14 of file MBIter.hpp.

Referenced by MBIter< Container >::reset().

◆ isRecursive

bool iBase_EntityArrIterator_Private::isRecursive
protected

Definition at line 18 of file MBIter.hpp.

Referenced by MBIter< Container >::reset().


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