00001 {
00002
00003
00004 gSystem->Load("St_base");
00005 gSystem->Load("StChain");
00006 gSystem->Load("StBFChain");
00007 gSystem->Load("StUtilities");
00008 gSystem->Load("StIOMaker");
00009 gSystem->Load("StarClassLibrary");
00010
00011
00012 gSystem->Load("St_Tables");
00013 gSystem->Load("StDbLib");
00014 gSystem->Load("StDbBroker");
00015 gSystem->Load("St_db_Maker");
00016
00017
00018
00019 St_db_Maker *dbMk=new St_db_Maker("db", "MySQL:StarDb", "$STAR/StarDb");
00020 dbMk->SetDebug();
00021 dbMk->SetDateTime(20090425,55558);
00022 dbMk->SetFlavor("ofl");
00023
00024 dbMk->Init();
00025 int runNumber = 10115007;
00026 dbMk->InitRun(runNumber);
00027 dbMk->Make();
00028
00029
00030 TDataSet *DB = 0;
00031
00032 DB = dbMk->GetInputDB("RunLog/onl/trgDsmReg");
00033 if (!DB) { std::cout << "ERROR: no db maker constructed?" << std::endl; }
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043 St_trgDsmReg *desc = 0;
00044 desc = (St_trgDsmReg*) DB->Find("trgDsmReg");
00045
00046 if (desc) {
00047 trgDsmReg_st *table = desc->GetTable();
00048 Int_t numrows = desc->GetNRows();
00049 std::cout << "total rows for trgDsmReg, run " << runNumber << " found: " << numrows << std::endl;
00050
00051 for (int i = 0; i < numrows; i++) {
00052 std::cout << table[i].runNumber << ", "
00053 << (unsigned)table[i].dcObject << ", "
00054 << (unsigned)table[i].dcIndex << ", "
00055 << table[i].dcRegister << ", "
00056 << table[i].dcLabel << ", "
00057 << table[i].dcValue << ", "
00058 << table[i].dcDefaultvalue << "\n";
00059 }
00060 } else {
00061 std::cout << "WARNING: No data in trgDsmReg table (wrong timestamp?). Nothing to return, then.\n";
00062 }
00063
00064 }