COOLFluiD  Release kernel
COOLFluiD is a Collaborative Simulation Environment (CSE) focused on complex MultiPhysics simulations.
Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
DynArrayBufferT< T > Class Template Reference

#include <DynTable.hpp>

Classes

struct  Buffer
 

Public Types

typedef std::vector< std::vector< T > > Array_t
 
typedef std::vector< T > & Row
 
typedef const std::vector< T > & ConstRow
 

Public Member Functions

 DynArrayBufferT (Array_t &array, const size_t nb_rows)
 
 ~DynArrayBufferT ()
 
void reset ()
 
std::string string ()
 
template<typename VectorT >
Uint add_row (const VectorT &row)
 
template<typename vectorType >
void set_row (const Uint array_idx, const vectorType &row)
 
void rm_row (const Uint array_idx)
 
Row get_row (const Uint idx)
 
void flush ()
 
Array_tget_appointed ()
 
Uint total_allocated ()
 

Private Member Functions

void add_buffer ()
 
bool is_array_row_empty (const Uint row) const
 

Private Attributes

Array_tm_array
 reference to the object the buffer works on More...
 
Uint m_buffersize
 
std::deque< std::vector< T > > m_buffer
 buffer storage; More...
 
std::vector< Bufferm_buffers
 vector of temporary buffers More...
 
std::deque< Uintm_empty_array_rows
 storage of removed array rows More...
 
std::deque< Uintm_new_array_rows
 storage of array rows where rows can be added directly using add_row_directly More...
 
std::deque< Uintm_empty_buffer_rows
 storage of removed buffer rows More...
 
std::deque< Uintm_new_buffer_rows
 storage of buffer rows where rows can be added More...
 

Detailed Description

template<typename T>
class cf3::common::DynArrayBufferT< T >

Definition at line 26 of file DynTable.hpp.

Member Typedef Documentation

typedef std::vector< std::vector<T> > Array_t

Definition at line 136 of file DynTable.hpp.

typedef const std::vector<T>& ConstRow

Definition at line 138 of file DynTable.hpp.

typedef std::vector<T>& Row

Definition at line 137 of file DynTable.hpp.

Constructor & Destructor Documentation

DynArrayBufferT ( Array_t array,
const size_t  nb_rows 
)
inline

Definition at line 163 of file DynTable.hpp.

~DynArrayBufferT ( )
inline

Definition at line 168 of file DynTable.hpp.

Member Function Documentation

void add_buffer ( )
inlineprivate

Definition at line 435 of file DynTable.hpp.

Uint add_row ( const VectorT &  row)
inline

Definition at line 241 of file DynTable.hpp.

void flush ( )
inline

Definition at line 327 of file DynTable.hpp.

Array_t& get_appointed ( )
inline

Definition at line 423 of file DynTable.hpp.

Row get_row ( const Uint  idx)
inline

Definition at line 306 of file DynTable.hpp.

bool is_array_row_empty ( const Uint  row) const
inlineprivate

Definition at line 444 of file DynTable.hpp.

void reset ( )
inline

Definition at line 173 of file DynTable.hpp.

void rm_row ( const Uint  array_idx)
inline

Definition at line 281 of file DynTable.hpp.

void set_row ( const Uint  array_idx,
const vectorType &  row 
)
inline

Definition at line 252 of file DynTable.hpp.

std::string string ( )
inline

Definition at line 188 of file DynTable.hpp.

Uint total_allocated ( )
inline

Definition at line 425 of file DynTable.hpp.

Member Data Documentation

Array_t& m_array
private

reference to the object the buffer works on

Definition at line 452 of file DynTable.hpp.

std::deque< std::vector<T> > m_buffer
private

buffer storage;

Definition at line 459 of file DynTable.hpp.

std::vector<Buffer> m_buffers
private

vector of temporary buffers

Definition at line 462 of file DynTable.hpp.

Uint m_buffersize
private

The size newly created buffers will have

Note
it is safe to change in the middle of buffer operations

Definition at line 456 of file DynTable.hpp.

std::deque<Uint> m_empty_array_rows
private

storage of removed array rows

Definition at line 465 of file DynTable.hpp.

std::deque<Uint> m_empty_buffer_rows
private

storage of removed buffer rows

Definition at line 471 of file DynTable.hpp.

std::deque<Uint> m_new_array_rows
private

storage of array rows where rows can be added directly using add_row_directly

Definition at line 468 of file DynTable.hpp.

std::deque<Uint> m_new_buffer_rows
private

storage of buffer rows where rows can be added

Definition at line 474 of file DynTable.hpp.


The documentation for this class was generated from the following file:
Send comments to:
COOLFluiD Web Admin