BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
Calibration/CalibData/include/CalibData/Mdc/MdcCalibData.h
Go to the documentation of this file.
1#ifndef MDCCALIBDATA_H
2#define MDCCALIBDATA_H
3
4#include "CalibData/CalibBase1.h"
5#include "CalibData/CalibModel.h"
6#include "GaudiKernel/DataObject.h"
7#include "TBufferFile.h"
8#include "TObjArray.h"
9#include "TTree.h"
10#include <map>
11#include <vector>
12typedef std::map<int, double>::value_type valType;
13namespace CalibData {
14 class MdcCalibData : public CalibBase1 {
15 public:
18 // virtual ~MdcCalibData() {}
19 // Re-implemented from DataObject
20 inline virtual const CLID& clID() const { return classID(); }
21
22 inline static const CLID& classID() { return CLID_Calib_MdcCal; }
23
24 virtual StatusCode update( CalibBase1& other, MsgStream* log );
25
26 void setXtpar( int xtkey, double val ); // huangb add
27 void setNewXtpar( TObjArray* newXtTrees ); // yzhang add 2011-12-12
28 void setR2tpar( TObjArray* r2tTrees ); // yzhang add 2011-12-15
29 void setT0( double val );
30 void setDelT0( double val );
31 void setQtpar0( double val );
32 void setQtpar1( double val );
33 // parameters of sigma vs. distance
34 void setSdpar( int sdkey, double val ); // huangb add
35
36 double getXtpar( int layid, int entr, int lr, int order ); /* wulh updated on 08-3-24 */
37 TTree* getNewXtpar( int layid, int entr, int lr ); /* yzhang updated on 2011-12-12 */
38 TTree* getR2tpar( int layid ); /* yzhang updated on 2011-12-15 */
39 double getT0( int wireid ) { return m_t0[wireid]; }
40 double getDelT0( int wireid ) { return m_delt0[wireid]; }
41 double getQtpar0( int layid ) { return m_qtpar0[layid]; }
42 double getQtpar1( int layid ) { return m_qtpar1[layid]; }
43 double getSdpar( int layid, int entr, int lr, int bin ); /* wulh updated on 08-3-24 */
44 void clear();
45
46 int getXtKey( int layid, int entr, int lr, int order ); /* wulh updated on 08-3-24 */
47 void setXtBegin();
48 int getNextXtpar( int& key, double& xtpar );
49
50 int getSdKey( int layid, int entr, int lr, int bin ); /* wulh updated on 08-3-24 */
51 void setSdBegin();
52 int getNextSdpar( int& key, double& sdpar );
53
54 // acquire the size of the vectors and maps
55 // huangb add
56 int getqtparNo() { return m_qtpar0.size(); }
57 int getxtNo() { return m_xtmap.size(); }
58 int gett0No() { return m_t0.size(); }
59
60 private:
61 std::map<int, double> m_xtmap;
62
63 TBufferFile* newXtTreesBuf;
64 TBufferFile* r2tTreesBuf;
65 TObjArray* newXtTreesArray;
66 TObjArray* r2tTreesArray;
67 TTree* m_newxt[43][18][2];
68 TTree* m_r2t[43];
69 // TBufferFile* newXtTreesBuf;
70 // TBufferFile* r2tTreesBuf;
71 // TObjArray* newXtTreesArray;
72 // TObjArray* r2tTreesArray;
73 // TTree* m_newxt[43][18][2];
74 // TTree* m_r2t[43];
75
76 std::vector<double> m_t0;
77 std::vector<double> m_delt0;
78 std::vector<double> m_qtpar0;
79 std::vector<double> m_qtpar1;
80 std::map<int, double> m_sdmap;
81
82 std::map<int, double>::iterator m_xtiter;
83 std::map<int, double>::iterator m_sditer;
84 static const int XTLAYER_INDEX = 11;
85 static const int XTLAYER_MASK = 0x1F800;
86
87 static const int XTENTRA_INDEX = 6;
88 static const int XTENTRA_MASK = 0x7C0;
89
90 static const int XTLR_INDEX = 4;
91 static const int XTLR_MASK = 0x30;
92
93 static const int XTORDER_INDEX = 0;
94 static const int XTORDER_MASK = 0xF;
95
96 static const int SDLAYER_INDEX = 10;
97 static const int SDLAYER_MASK = 0xFC00;
98
99 static const int SDENTRA_INDEX = 7;
100 static const int SDENTRA_MASK = 0x380;
101
102 static const int SDLR_INDEX = 5;
103 static const int SDLR_MASK = 0x60;
104
105 static const int SDBIN_INDEX = 0;
106 static const int SDBIN_MASK = 0x1F;
107 };
108} // namespace CalibData
109#endif /* MDCCALIBCONST_H */
std::map< int, double >::value_type valType
*******INTEGER m_nBinMax INTEGER m_NdiMax !No of bins in histogram for cell exploration division $ !Last vertex $ !Last active cell $ !Last cell in buffer $ !No of sampling when dividing cell $ !No of function total $ !Flag for random ceel for $ !Flag for type of for WtMax $ !Flag which decides whether vertices are included in the sampling $ entire domain is hyp !Maximum effective eevents per bin
Definition FoamA.h:85
NTuple::Item< double > m_t0
*************DOUBLE PRECISION m_pi *DOUBLE PRECISION m_HvecTau2 DOUBLE PRECISION m_HvClone2 DOUBLE PRECISION m_gamma1 DOUBLE PRECISION m_gamma2 DOUBLE PRECISION m_thet1 DOUBLE PRECISION m_thet2 INTEGER m_IFPHOT *COMMON c_Taupair $ !Spin Polarimeter vector first Tau $ !Spin Polarimeter vector second Tau $ !Clone Spin Polarimeter vector first Tau $ !Clone Spin Polarimeter vector second Tau $ !Random Euler angle for cloning st tau $ !Random Euler angle for cloning st tau $ !Random Euler angle for cloning st tau $ !Random Euler angle for cloning nd tau $ !Random Euler angle for cloning nd tau $ !Random Euler angle for cloning nd tau $ !phi of HvecTau1 $ !theta of HvecTau1 $ !phi of HvecTau2 $ !theta of HvecTau2 $ !super key
Definition Taupair.h:42
void setR2tpar(TObjArray *r2tTrees)
void setQtpar1(double val)
void setXtpar(int xtkey, double val)
void setNewXtpar(TObjArray *newXtTrees)
int getNextXtpar(int &key, double &xtpar)
virtual StatusCode update(CalibBase1 &other, MsgStream *log)
double getXtpar(int layid, int entr, int lr, int order)
TTree * getR2tpar(int layid)
void setSdpar(int sdkey, double val)
void setDelT0(double val)
double getSdpar(int layid, int entr, int lr, int bin)
int getXtKey(int layid, int entr, int lr, int order)
int getNextSdpar(int &key, double &sdpar)
int getSdKey(int layid, int entr, int lr, int bin)
TTree * getNewXtpar(int layid, int entr, int lr)
void setQtpar0(double val)