22 MsgStream log(
msgSvc(), name() );
25 StatusCode sc = serviceLocator()->service(
"DatabaseSvc", m_dbsvc,
true );
28 log << MSG::ERROR <<
"Unable to find DatabaseSvc " << endmsg;
32 std::cout <<
"*************************************************************" << std::endl;
33 std::cout <<
"Test 1: Numbers" << std::endl;
34 std::cout <<
"*************************************************************" << std::endl;
37 sprintf( stmt,
"select Vx, Vy, Vz, SigmaVx, SigmaVy, SigmaVz,RunNo from BeamPar where RunNo "
38 "> 9950 and RunNo < 9980 and SftVer='6.5.1'" );
42 row_no = m_dbsvc->
query(
"offlinedb", stmt, res );
45 std::cerr <<
"Query \"" << stmt <<
"\" failed" << std::endl;
46 return StatusCode::FAILURE;
54 for ( row = 0; row < row_no; row++ )
57 sscanf( records[
"Vx"],
"%lf", &vx );
58 sscanf( records[
"SigmaVx"],
"%lf", &svx );
59 cout <<
"Read from DB: RunNo " << records[
"RunNo"] <<
" Vx= " << vx <<
" SigmaVx= " << svx
61 cout <<
" " << records.
GetLong(
"RunNo" )
63 <<
" SigmaVx= " << records.
GetDouble(
"SigmaVx" ) << endl;
67 std::cout <<
"*************************************************************" << std::endl;
68 std::cout <<
"Test 2: BLOBs" << std::endl;
69 std::cout <<
"*************************************************************" << std::endl;
72 sprintf( stmt,
"select EndTofPar,BarTofPar from TofCalConst where RunFrom <= 11000 and "
73 "RunTo >= 11000 and SftVer='6.5.1'" );
74 row_no = m_dbsvc->
query(
"offlinedb", stmt, res );
77 std::cerr <<
"Query \"" << stmt <<
"\" failed" << std::endl;
78 return StatusCode::FAILURE;
80 for ( row = 0; row < row_no; row++ )
84 TBufferFile* buf1 =
new TBufferFile( TBuffer::kRead );
85 buf1->SetBuffer( records[
"EndTofPar"], 32768, kFALSE );
86 TTree* curvetree =
new TTree();
87 curvetree->Streamer( *buf1 );
89 curvetree->SetBranchAddress(
"Atten0", &cnvAtten[0] );
90 curvetree->SetBranchAddress(
"Atten1", &cnvAtten[1] );
91 curvetree->SetBranchAddress(
"Atten2", &cnvAtten[2] );
92 curvetree->SetBranchAddress(
"Atten3", &cnvAtten[3] );
93 curvetree->SetBranchAddress(
"Atten4", &cnvAtten[4] );
94 int entries = curvetree->GetEntries();
95 if ( entries > 10 ) entries = 10;
96 for (
int iiii = 0; iiii < entries; iiii++ )
98 curvetree->GetEntry( iiii );
99 for (
int jjj = 0; jjj < 5; jjj++ )
100 { std::cout <<
"cnvAtten[" << jjj <<
"]=" << cnvAtten[jjj] <<
" "; }
101 std::cout << std::endl;
107 std::cout <<
"*************************************************************" << std::endl;
108 std::cout <<
"Test 3: Strings" << std::endl;
109 std::cout <<
"*************************************************************" << std::endl;
112 sprintf( stmt,
"select XtTree,QtTree,T0Tree,SdTree,RunFrom,RunTo,CalParVer,FileName from "
113 "MdcCalConst where SftVer = '6.5.3'" );
114 row_no = m_dbsvc->
query(
"offlinedb", stmt, res );
117 std::cerr <<
"Query \"" << stmt <<
"\" failed" << std::endl;
118 return StatusCode::FAILURE;
121 for ( row = 0; row < row_no; row++ )
124 cout <<
"Read from DB: Runs " << records[
"RunFrom"] <<
" " << records[
"RunTo"]
125 <<
" FileName = " << records[
"FileName"] << endl;
128 return StatusCode::SUCCESS;
sprintf(cut, "kal_costheta0_em>-0.93&&kal_costheta0_em<0.93&&kal_pxy0_em>=0.05+%d*0.1&&kal_" "pxy0_em<0.15+%d*0.1&&NGch>=2", j, j)