TrioCFD 1.9.8
TrioCFD documentation
Loading...
Searching...
No Matches
Block_Iter< _SIZE_ > Struct Template Reference

Public Member Functions

 Block_Iter ()=default
 Block_Iter (const Block_Iter &other)=default
Block_Iteroperator= (const Block_Iter &other)=default
 Block_Iter (const ArrOfInt &items_blocs, const ArrOfInt &items)
 Block_Iter (const ArrOfInt &items_blocs)
 Block_Iter (_SIZE_ s, _SIZE_ e)
_SIZE_ operator* () const
Block_Iter operator++ (int)
bool empty () const
 OBS_PTR (ArrOfInt) items_

Public Attributes

const int * int_ptr =nullptr
_SIZE_ start =-1
_SIZE_ end =-1

Detailed Description

template<typename _SIZE_>
struct Block_Iter< _SIZE_ >

Small iterator class to scan blocks of a MD vector (blocks described by integer indices) or scan a single big block (trustIdType). The important point: the operator*() always returns a trustIdType (TID), whether internal data is int* or trustIdType* :

  • in sequential, we can scan a whole Big array from start to end,
  • in parallel, we can scan chunks of the arrays, as defined by MD_Vector_mono::blocs_items_to_compute_ (which store int values, never long)

Definition at line 30 of file TRUSTVect_tools.tpp.

Constructor & Destructor Documentation

◆ Block_Iter() [1/5]

template<typename _SIZE_>
Block_Iter< _SIZE_ >::Block_Iter ( )
default

◆ Block_Iter() [2/5]

template<typename _SIZE_>
Block_Iter< _SIZE_ >::Block_Iter ( const Block_Iter< _SIZE_ > & other)
default

◆ Block_Iter() [3/5]

template<typename _SIZE_>
Block_Iter< _SIZE_ >::Block_Iter ( const ArrOfInt & items_blocs,
const ArrOfInt & items )
inline

Definition at line 35 of file TRUSTVect_tools.tpp.

◆ Block_Iter() [4/5]

template<typename _SIZE_>
Block_Iter< _SIZE_ >::Block_Iter ( const ArrOfInt & items_blocs)
inline

Definition at line 39 of file TRUSTVect_tools.tpp.

◆ Block_Iter() [5/5]

template<typename _SIZE_>
Block_Iter< _SIZE_ >::Block_Iter ( _SIZE_ s,
_SIZE_ e )
inline

Definition at line 40 of file TRUSTVect_tools.tpp.

Member Function Documentation

◆ empty()

template<typename _SIZE_>
bool Block_Iter< _SIZE_ >::empty ( ) const
inline

Definition at line 53 of file TRUSTVect_tools.tpp.

◆ OBS_PTR()

template<typename _SIZE_>
Block_Iter< _SIZE_ >::OBS_PTR ( ArrOfInt )

◆ operator*()

template<typename _SIZE_>
_SIZE_ Block_Iter< _SIZE_ >::operator* ( ) const
inline

Definition at line 42 of file TRUSTVect_tools.tpp.

◆ operator++()

template<typename _SIZE_>
Block_Iter Block_Iter< _SIZE_ >::operator++ ( int )
inline

Definition at line 46 of file TRUSTVect_tools.tpp.

◆ operator=()

template<typename _SIZE_>
Block_Iter & Block_Iter< _SIZE_ >::operator= ( const Block_Iter< _SIZE_ > & other)
default

Member Data Documentation

◆ end

template<typename _SIZE_>
_SIZE_ Block_Iter< _SIZE_ >::end =-1

Definition at line 58 of file TRUSTVect_tools.tpp.

◆ int_ptr

template<typename _SIZE_>
const int* Block_Iter< _SIZE_ >::int_ptr =nullptr

Definition at line 55 of file TRUSTVect_tools.tpp.

◆ start

template<typename _SIZE_>
_SIZE_ Block_Iter< _SIZE_ >::start =-1

Definition at line 57 of file TRUSTVect_tools.tpp.


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