BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
TofCalibData.cxx
Go to the documentation of this file.
1#include "CalibData/Tof/TofCalibData.h"
2#include "CalibData/Tof/bTofCalibBase.h"
3#include "CalibData/Tof/bTofCommonCalibBase.h"
4#include "CalibData/Tof/eTofCalibBase.h"
5#include "CalibData/Tof/etfCalibBase.h"
6#include "GaudiKernel/MsgStream.h"
7
8namespace CalibData {
9
10 TofCalibData::TofCalibData( std::vector<bTofCalibBase> bTofCal,
11 std::vector<bTofCommonCalibBase> bTofComCal,
12 std::vector<eTofCalibBase> eTofCal,
13 std::vector<etfCalibBase> etfCal,
14 std::vector<etfBunchCalibBase> etfBunchCal,
15 std::vector<tofCalibInfoBase> tofInfoCal )
16 : m_bTofCalibData( bTofCal )
17 , m_bTofCommonCalibData( bTofComCal )
18 , m_eTofCalibData( eTofCal )
19 , m_etfCalibData( etfCal )
20 , m_etfBunchCalibData( etfBunchCal )
21 , m_tofCalibInfoData( tofInfoCal )
22 , m_hasEtf( etfCal.size() > 0 )
23 , m_hasEtfBunch( etfBunchCal.size() > 0 ) {}
24
25 TofCalibData::TofCalibData( std::vector<bTofCalibBase> bTofCal,
26 std::vector<bTofCommonCalibBase> bTofComCal,
27 std::vector<eTofCalibBase> eTofCal,
28 std::vector<etfCalibBase> etfCal,
29 std::vector<tofCalibInfoBase> tofInfoCal )
30 : m_bTofCalibData( bTofCal )
31 , m_bTofCommonCalibData( bTofComCal )
32 , m_eTofCalibData( eTofCal )
33 , m_etfCalibData( etfCal )
34 , m_tofCalibInfoData( tofInfoCal )
35 , m_hasEtf( etfCal.size() > 0 )
36 , m_hasEtfBunch( false ) {}
37
38 TofCalibData::TofCalibData( std::vector<bTofCalibBase> bTofCal,
39 std::vector<bTofCommonCalibBase> bTofComCal,
40 std::vector<eTofCalibBase> eTofCal,
41 std::vector<tofCalibInfoBase> tofInfoCal )
42 : m_bTofCalibData( bTofCal )
43 , m_bTofCommonCalibData( bTofComCal )
44 , m_eTofCalibData( eTofCal )
45 , m_tofCalibInfoData( tofInfoCal )
46 , m_hasEtf( false )
47 , m_hasEtfBunch( false ) {}
48
49 StatusCode TofCalibData::update( CalibBase1& other, MsgStream* log ) {
50 TofCalibData& other1 = dynamic_cast<TofCalibData&>( other );
51 std::cout << "========================================"
52 << "\n"
53 << "here is the update in the TofCalibData"
54 << "\n"
55 << "========================================" << std::endl;
56 CalibBase1::update( other, log );
57 m_bTofCalibData = other1.m_bTofCalibData;
58 m_bTofCommonCalibData = other1.m_bTofCommonCalibData;
59 m_eTofCalibData = other1.m_eTofCalibData;
60 m_tofCalibInfoData = other1.m_tofCalibInfoData;
61
62 if ( other1.m_etfCalibData.size() > 0 )
63 {
64 m_etfCalibData = other1.m_etfCalibData;
65 m_hasEtf = true;
66 }
67 else
68 {
69 m_etfCalibData.clear();
70 m_hasEtf = false;
71 }
72
73 if ( other1.m_etfBunchCalibData.size() > 0 )
74 {
75 m_etfBunchCalibData = other1.m_etfBunchCalibData;
76 m_hasEtfBunch = true;
77 }
78 else
79 {
80 m_etfBunchCalibData.clear();
81 m_hasEtfBunch = false;
82 }
83
84 return StatusCode::SUCCESS;
85 }
86
87 // get the CalibData
88 unsigned int TofCalibData::getBTofSize() const { return m_bTofCalibData.size(); }
89
90 bTofCalibBase TofCalibData::getBTof( int cnt ) const { return m_bTofCalibData[cnt]; }
91
92 int TofCalibData::getBTofComSize() const { return m_bTofCommonCalibData.size(); }
93
95 return m_bTofCommonCalibData[cnt];
96 }
97
98 unsigned int TofCalibData::getETofSize() const { return m_eTofCalibData.size(); }
99
100 eTofCalibBase TofCalibData::getETof( int cnt ) const { return m_eTofCalibData[cnt]; }
101
102 unsigned int TofCalibData::getEtfSize() const {
103 unsigned int size = 72 * 12;
104 if ( m_hasEtf ) { size = m_etfCalibData.size(); }
105 return size;
106 }
107
108 etfCalibBase TofCalibData::getEtf( int cnt, int strip ) const {
109 auto it = m_etfCalibData.begin();
110 for ( int i = 0; i != cnt; i++ )
111 {
112 for ( int j = 0; j != 12; j++, it++ ) {}
113 }
114 for ( int j = 0; j != strip; j++, it++ ) {}
115 return *it;
116 }
117
118 unsigned int TofCalibData::getEtfBunchSize() const {
119 unsigned int size = 0;
120 if ( m_hasEtfBunch ) { size = m_etfBunchCalibData.size(); }
121 return size;
122 }
123
125 auto it = m_etfBunchCalibData.begin();
126 for ( int i = 0; i != cnt; i++, it++ ) {}
127 return *it;
128 }
129
130 unsigned int TofCalibData::getTofInfoSize() const { return m_tofCalibInfoData.size(); }
131
133 auto it = m_tofCalibInfoData.begin();
134 for ( int i = 0; i != cnt; i++, it++ ) {}
135 return *it;
136 }
137
138 double TofCalibData::getBTofAtten( int index, int pardex ) {
139 bTofCalibBase bTof = getBTof( index );
140 return bTof.getAtten( pardex );
141 }
142
143 double TofCalibData::getBTofSpeed( int index, int pardex ) {
144 bTofCalibBase bTof = getBTof( index );
145 return bTof.getSpeed( pardex );
146 }
147
148 double TofCalibData::getBTofPleft( int index, int pardex ) {
149 bTofCalibBase bTof = getBTof( index );
150 return bTof.getP1( pardex );
151 }
152
153 double TofCalibData::getBTofPright( int index, int pardex ) {
154 bTofCalibBase bTof = getBTof( index );
155 return bTof.getP2( pardex );
156 }
157
158 double TofCalibData::getBTofPoffleft_bunch0( int index, int pardex ) {
159 bTofCalibBase bTof = getBTof( index );
160 return bTof.getPoff1_bunch0( pardex );
161 }
162
163 double TofCalibData::getBTofPoffright_bunch0( int index, int pardex ) {
164 bTofCalibBase bTof = getBTof( index );
165 return bTof.getPoff2_bunch0( pardex );
166 }
167
168 double TofCalibData::getBTofPoffleft_bunch1( int index, int pardex ) {
169 bTofCalibBase bTof = getBTof( index );
170 return bTof.getPoff1_bunch1( pardex );
171 }
172
173 double TofCalibData::getBTofPoffright_bunch1( int index, int pardex ) {
174 bTofCalibBase bTof = getBTof( index );
175 return bTof.getPoff2_bunch1( pardex );
176 }
177
178 double TofCalibData::getBTofPoffleft_bunch2( int index, int pardex ) {
179 bTofCalibBase bTof = getBTof( index );
180 return bTof.getPoff1_bunch2( pardex );
181 }
182
183 double TofCalibData::getBTofPoffright_bunch2( int index, int pardex ) {
184 bTofCalibBase bTof = getBTof( index );
185 return bTof.getPoff2_bunch2( pardex );
186 }
187
188 double TofCalibData::getBTofPoffleft_bunch3( int index, int pardex ) {
189 bTofCalibBase bTof = getBTof( index );
190 return bTof.getPoff1_bunch3( pardex );
191 }
192
193 double TofCalibData::getBTofPoffright_bunch3( int index, int pardex ) {
194 bTofCalibBase bTof = getBTof( index );
195 return bTof.getPoff2_bunch3( pardex );
196 }
197
198 double TofCalibData::getBTofFleft( int index, int pardex ) {
199 bTofCalibBase bTof = getBTof( index );
200 return bTof.getFleft( pardex );
201 }
202
203 double TofCalibData::getBTofFright( int index, int pardex ) {
204 bTofCalibBase bTof = getBTof( index );
205 return bTof.getFright( pardex );
206 }
207
208 double TofCalibData::getBTofFcounter( int index, int pardex ) {
209 bTofCalibBase bTof = getBTof( index );
210 return bTof.getFcounter( pardex );
211 }
212
213 double TofCalibData::getBTofOffset( int cnt, int pardex ) {
214 bTofCommonCalibBase bTofCom = getBTofCom( cnt );
215 return bTofCom.getOffset( pardex );
216 }
217
218 double TofCalibData::getBTofSigmaCorr( int cnt, int pardex ) {
219 bTofCommonCalibBase bTofCom = getBTofCom( cnt );
220 return bTofCom.getSigmaCorr( pardex );
221 }
222
223 double TofCalibData::getETofAtten( int index, int pardex ) {
224 eTofCalibBase eTof = getETof( index );
225 return eTof.getAtten( pardex );
226 }
227
228 double TofCalibData::getETofSpeed( int index, int pardex ) {
229 eTofCalibBase eTof = getETof( index );
230 return eTof.getSpeed( pardex );
231 }
232
233 double TofCalibData::getETofP( int index, int pardex ) {
234 return getETof( index ).getP( pardex );
235 }
236
237 double TofCalibData::getETofFP( int index, int pardex ) {
238 eTofCalibBase eTof = getETof( index );
239
240 return eTof.getFP( pardex );
241 }
242
243 double TofCalibData::getEtfSpeed( int index, int strip, int pardex ) {
244 if ( !m_hasEtf ) { return 1.0; }
245 etfCalibBase etf = getEtf( index, strip );
246 return etf.getSpeed( pardex );
247 }
248
249 double TofCalibData::getEtfPcombine( int index, int strip, int pardex ) {
250 if ( !m_hasEtf ) { return 1.0; }
251 etfCalibBase etf = getEtf( index, strip );
252 return etf.getP( pardex );
253 }
254
255 double TofCalibData::getEtfPleft( int index, int strip, int pardex ) {
256 if ( !m_hasEtf ) { return 1.0; }
257 etfCalibBase etf = getEtf( index, strip );
258 return etf.getP1( pardex );
259 }
260
261 double TofCalibData::getEtfPright( int index, int strip, int pardex ) {
262 if ( !m_hasEtf ) { return 1.0; }
263 etfCalibBase etf = getEtf( index, strip );
264 return etf.getP2( pardex );
265 }
266
267 double TofCalibData::getEtfPBunch( int cnt, int pardex ) {
268 if ( !m_hasEtfBunch ) { return 0.0; }
269 etfBunchCalibBase etfBunch = getEtfBunch( cnt );
270 return etfBunch.getPBunch( pardex );
271 }
272
274 tofCalibInfoBase tofInfo = getTofInfo( cnt );
275 return tofInfo.getRunBegin();
276 }
277
278 int TofCalibData::getRunEnd( int cnt ) {
279 tofCalibInfoBase tofInfo = getTofInfo( cnt );
280 return tofInfo.getRunEnd();
281 }
282
284 tofCalibInfoBase tofInfo = getTofInfo( cnt );
285 return tofInfo.getVersion();
286 }
287
288 int TofCalibData::getQCorr( int cnt ) {
289 tofCalibInfoBase tofInfo = getTofInfo( cnt );
290 return tofInfo.getQCorr();
291 }
292
293 int TofCalibData::getQElec( int cnt ) {
294 tofCalibInfoBase tofInfo = getTofInfo( cnt );
295 return tofInfo.getQElec();
296 }
297
299 tofCalibInfoBase tofInfo = getTofInfo( cnt );
300 return tofInfo.getMisLable();
301 }
302
303 int TofCalibData::getBrEast( int cnt, int index ) {
304 tofCalibInfoBase tofInfo = getTofInfo( cnt );
305 return tofInfo.getBrEast( index );
306 }
307
308 int TofCalibData::getBrWest( int cnt, int index ) {
309 tofCalibInfoBase tofInfo = getTofInfo( cnt );
310 return tofInfo.getBrWest( index );
311 }
312
313 int TofCalibData::getEndcap( int cnt, int index ) {
314 tofCalibInfoBase tofInfo = getTofInfo( cnt );
315 return tofInfo.getEndcap( index );
316 }
317
319 tofCalibInfoBase tofInfo = getTofInfo( cnt );
320 return tofInfo.getRunFrom();
321 }
322
323 int TofCalibData::getRunTo( int cnt ) {
324 tofCalibInfoBase tofInfo = getTofInfo( cnt );
325 return tofInfo.getRunTo();
326 }
327
329 tofCalibInfoBase tofInfo = getTofInfo( cnt );
330 return tofInfo.getEventFrom();
331 }
332
334 tofCalibInfoBase tofInfo = getTofInfo( cnt );
335 return tofInfo.getEventTo();
336 }
337
338} // namespace CalibData
virtual StatusCode update(CalibBase1 &obj, MsgStream *)
double getETofFP(int index, int pardex)
double getBTofPoffleft_bunch1(int index, int pardex)
unsigned int getEtfBunchSize() const
unsigned int getEtfSize() const
double getBTofPoffleft_bunch3(int index, int pardex)
double getBTofSpeed(int index, int pardex)
double getBTofOffset(int cnt, int pardex)
double getETofP(int index, int pardex)
double getBTofPoffright_bunch3(int index, int pardex)
unsigned int getETofSize() const
double getEtfPBunch(int cnx, int pardex)
unsigned int getTofInfoSize() const
double getBTofSigmaCorr(int cnt, int pardex)
tofCalibInfoBase getTofInfo(int cnt) const
double getBTofPoffright_bunch2(int index, int pardex)
int getBrWest(int cnt, int index)
double getBTofFleft(int index, int pardex)
double getBTofPoffright_bunch0(int index, int pardex)
etfCalibBase getEtf(int cnt, int strip) const
eTofCalibBase getETof(int cnt) const
double getBTofPoffright_bunch1(int index, int pardex)
double getEtfSpeed(int index, int strip, int pardex)
double getBTofFright(int index, int pardex)
double getBTofFcounter(int index, int pardex)
int getEndcap(int cnt, int index)
double getBTofPoffleft_bunch2(int index, int pardex)
etfBunchCalibBase getEtfBunch(int cnt) const
double getEtfPleft(int index, int strip, int pardex)
double getEtfPcombine(int index, int strip, int pardex)
double getETofAtten(int index, int pardex)
double getBTofAtten(int index, int pardex)
int getBrEast(int cnt, int index)
bTofCommonCalibBase getBTofCom(int cnt) const
virtual StatusCode update(CalibBase1 &other, MsgStream *log)
unsigned int getBTofSize() const
double getBTofPoffleft_bunch0(int index, int pardex)
double getEtfPright(int index, int strip, int pardex)
double getBTofPleft(int index, int pardex)
bTofCalibBase getBTof(int cnt) const
double getETofSpeed(int index, int pardex)
double getBTofPright(int index, int pardex)