OpenM++ runtime library (libopenm)
openm::IMetaLoadedTable< TRow > Struct Template Referenceabstract

base class for preloaded metadata db-tables More...

Inheritance diagram for openm::IMetaLoadedTable< TRow >:
Collaboration diagram for openm::IMetaLoadedTable< TRow >:

Public Types

typedef function< bool(const TRow &i_dbRow)> RowEqual
 db table row comparator.
 

Public Member Functions

virtual const IRowBaseVecrowsCRef (void) const =0
 get const reference to list of all table rows.
 
virtual IRowBaseVecrowsRef (void)=0
 get reference to list of all table rows.
 
IRowBaseVec::difference_type rowCount (void) const
 return number of rows.
 
vector< TRow > rows (void) const
 get list of loaded table rows.
 
const TRow * firstRow (void) const
 return first table row or NULL if table is empty.
 
vector< TRow > findAll (RowEqual i_cmp) const
 get list of rows by predicate: all rows where comparator to i_row return true.
 
const TRow * findFirst (RowEqual i_cmp) const
 get first row by predicate or NULL if not found: first row where comparator to i_row return true.
 
const TRow * byIndex (IRowBaseVec::difference_type i_index) const
 return row value by index or NULL if out of range.
 
IRowBaseVec::difference_type indexOf (RowEqual i_cmp, IRowBaseVec::difference_type i_startPos=0) const
 get first row by predicate or -1 if not found: first row where comparator to i_row return true.
 
IRowBaseVec::size_type countOf (RowEqual i_cmp) const
 count rows by predicate: where comparator to i_row return true.
 

Protected Member Functions

const TRow * findKey (const IRowBaseUptr &i_row) const
 binary search row by primary key, return NULL if not found.
 

Static Protected Member Functions

static IRowBaseVec load (const string &i_sqlSelect, IDbExec *i_dbExec, const IRowAdapter &i_adapter)
 load table: return vector of selected rows sorted by primary key.
 
- Static Protected Member Functions inherited from openm::IMetaTable< TRow >
static vector< TRow > rows (const IRowBaseVec &i_rowVec)
 get list of table rows.
 

Detailed Description

template<class TRow>
struct openm::IMetaLoadedTable< TRow >

base class for preloaded metadata db-tables


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