3#include "rdbModel/Rdb.h"
4#include "rdbModel/RdbException.h"
5#include "rdbModel/Tables/Table.h"
10 while ( m_tables.size() )
12 Table* table = m_tables.back();
19 unsigned nTable = m_tables.size();
20 for (
unsigned iTable = 0; iTable < nTable; iTable++ )
22 Table* table = m_tables[iTable];
23 if ( table->
getName() == name )
return table;
30 if ( !table )
return 0;
37 if ( !table )
return 0;
43 m_connection = connection;
46 for (
unsigned i = 0; i < m_tables.size(); i++ )
47 { m_tables[i]->setConnection( connection ); }
54 std::string msg(
"Rdb::insertRow unknown table " );
58 return (
t->insertRow( row, serial ) );
65 std::string msg(
"Rdb::insertRow unknown table " );
69 return (
t->updateRows( row, where ) );
73 return (
t->insertLatest( row, serial ) );
80 std::string msg(
"Rdb::insertLatest unknown table " );
84 return (
t->insertLatest( row, serial ) );
91 std::string msg(
"Rdb::supersedeRow unknown table " );
95 return (
t->supersedeRow( row, oldKey, newKey ) );
102 unsigned nTable = m_tables.size();
104 for (
unsigned i = 0; i < nTable; i++ )
106 state = m_tables[i]->accept(
v );
**********Class see also m_nmax DOUBLE PRECISION m_amel DOUBLE PRECISION m_x2 DOUBLE PRECISION m_alfinv DOUBLE PRECISION m_Xenph INTEGER m_KeyWtm INTEGER m_idyfs DOUBLE PRECISION m_zini DOUBLE PRECISION m_q2 DOUBLE PRECISION m_Wt_KF DOUBLE PRECISION m_WtCut INTEGER m_KFfin *COMMON c_KarLud $ !Input CMS energy[GeV] $ !CMS energy after beam spread beam strahlung[GeV] $ !Beam energy spread[GeV] $ !z boost due to beam spread $ !electron beam mass *ff pair spectrum $ !minimum v
int supersedeRow(const std::string &tName, Row &row, int oldKey, int *newKey=0) const
Table * getTable(const std::string &name) const
int insertLatest(Table *t, Row &row, int *serial=0) const
Index * getIndex(const std::string &tableName, const std::string &indexName) const
void setConnection(Connection *connection)
int updateRows(const std::string &tName, Row &row, Assertion *where) const
Column * getColumn(const std::string &tableName, const std::string &colName) const
int insertRow(const std::string &tName, Row &row, int *serial=0) const
unsigned int accept(Visitor *v)
This is the recursive accept for the visitor pattern.
Index * getIndexByName(const std::string &name) const
const std::string & getName() const
Column * getColumnByName(const std::string &name) const