37 #ifndef __RAT_DBLink__
38 #define __RAT_DBLink__
41 #include <RAT/DBTable.hh>
83 int GetI(
const std::string &name);
90 double GetD(
const std::string &name);
97 std::string
GetS(
const std::string &name);
104 bool GetZ(
const std::string &name);
111 std::vector<int>
GetIArray(
const std::string &name);
119 std::vector<float> DArrayToFArray(
const std::vector<double> &input);
126 std::vector<double>
GetDArray(
const std::string &name);
133 std::vector<std::string>
GetSArray(
const std::string &name);
140 std::vector<bool>
GetZArray(
const std::string &name);
156 T
Get(
const std::string &fieldname);
159 void Unlink() {
db = 0; };
193 T value = tbl->DBTable::Get<T>(fieldname);
std::string tblname
Definition: DBLink.hh:166
json::Value GetJSON(const std::string &name)
Definition: DBLink.cc:57
void SetCurrentRun(int runNumber)
Definition: DBLink.hh:76
std::vector< float > GetFArrayFromD(const std::string &name)
Definition: DBLink.cc:32
std::vector< std::string > GetSArray(const std::string &name)
Definition: DBLink.cc:53
T Get(const std::string &fieldname)
Definition: DBLink.hh:176
DB * db
Definition: DBLink.hh:159
std::string GetName() const
Definition: DBLink.hh:70
std::vector< bool > GetZArray(const std::string &name)
Definition: DBLink.cc:55
std::vector< double > GetDArray(const std::string &name)
Definition: DBLink.cc:51
DBLink(DB *db, std::string tblname, std::string index, int currentRun=1)
Definition: DBLink.cc:9
std::string index
Definition: DBLink.hh:169
std::string GetS(const std::string &name)
Definition: DBLink.cc:26
int GetI(const std::string &name)
Definition: DBLink.cc:22
double GetD(const std::string &name)
Definition: DBLink.cc:24
int currentRun
Definition: DBLink.hh:172
std::string GetIndex() const
Definition: DBLink.hh:72
std::vector< int > GetIArray(const std::string &name)
Definition: DBLink.cc:30
bool GetZ(const std::string &name)
Definition: DBLink.cc:28
~DBLink()
Definition: DBLink.cc:16
Definition: DBTable.hh:275
Definition: DBTable.hh:25
FieldType GetFieldType(std::string name) const
Definition: DBTable.cc:78
@ NOTFOUND
Definition: DBTable.hh:81
DBTable * GetUserTable(std::string tblname, std::string index)
Definition: DB.hh:282
DBTable * GetRunTable(std::string tblname, std::string index, int runNumber)
Definition: DB.hh:286
DBTable * GetDefaultTable(std::string tblname, std::string index)
Definition: DB.hh:292
static void TraceDBAccess(const std::string &table, const std::string &index, const std::string &field, int value)
Definition: Log.hh:258
Definition: CCCrossSecMessenger.hh:29