BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
BesEvtGen/src/ReadME.h
Go to the documentation of this file.
1/****** Write By Lianjin WU <wulj@ihep.ac.cn> ******/
2/****** Reading offline beam information ******/
3#ifndef Analysis_ReadME_H
4#define Analysis_ReadME_H
5/******/
6#include "GaudiKernel/Bootstrap.h"
7#include "GaudiKernel/IDataProviderSvc.h"
8#include "GaudiKernel/ISvcLocator.h"
9#include "GaudiKernel/MsgStream.h"
10#include "GaudiKernel/PropertyMgr.h"
11// #include "GaudiKernel/AlgFactory.h"
12#include "DatabaseSvc/IDatabaseSvc.h"
13#include <fstream>
14#include <iomanip>
15#include <iostream>
16#include <mysql.h>
17#include <string.h>
18#include <string>
19class ReadME {
20public:
21 ReadME( int runNo ) {
22 if ( runNo != preRunNo )
23 {
24 Gaudi::svcLocator()->service( "DatabaseSvc", m_dbSvc, true );
25 readDB( runNo );
26 preRunNo = runNo;
27 }
28 }
29 virtual ~ReadME() {}
30 /******/
31 void readMeasuredEcms( int runNo );
32 int getSampleName() { return m_sampleName; }
33 int getRunFrom() { return m_runFrom; }
34 int getRunTo() { return m_runTo; }
35 bool isRunNoValid() { return m_runNoValid; }
36 double getEcms() { return m_ecms; }
37 double getEcmsErr() { return m_ecmsErr; }
38 double getAveEcms() { return m_aveEcms; }
39 double getAveEcmsErr() { return m_aveEcmsErr; }
40 void readDB( int runNo );
41 void readRunParams( int runNo );
42
43private:
44 // RunParamsMin and RunParamsMax are used to set range for psi3773 listed in RunParams
45 int RunParamsMin, RunParamsMax;
46 // MeasuredEcmsMin and MeasuredEcmsMax for the data listed in MeasuredEcms2
47 int MeasuredEcmsMin, MeasuredEcmsMax;
48 // DsRunParamsMin and DsRunParamsMax are used to set range for the new 4180 data listed in
49 // RunParams
50 int DsRunParamsMin, DsRunParamsMax;
51 // runxyzMin and runxyzMax are used to set range for the new xyz data listed in RunParams
52 int runxyzMin, runxyzMax;
53
54 IDatabaseSvc* m_dbSvc;
55 static int preRunNo;
56 int m_sampleName, m_runFrom, m_runTo;
57 double m_ecms, m_ecmsErr, m_aveEcms, m_aveEcmsErr;
58 double m_px, m_py, m_pz;
59 bool m_runNoValid;
60};
61#endif
int runNo
Definition DQA_TO_DB.cxx:13
NTuple::Item< double > m_pz
void readDB(int runNo)
double getEcms()
double getAveEcms()
virtual ~ReadME()
double getAveEcmsErr()
bool isRunNoValid()
double getEcmsErr()
ReadME(int runNo)
void readRunParams(int runNo)
void readMeasuredEcms(int runNo)