Create the transient representation of an object, given an opaque address. This and the following update method comprise the core functionality of calibration converters. Convenience routine used by most CAL calibration types, which have a <dimension> element describing how the remainder of the Data is laid out. Read from TDS; store information internally in protected members.
Given a pointer to a TDS object which can be cast to "our" type, fill in corresponding information in the corresponding root class
52 {
53
54 MsgStream log(
msgSvc(),
"RootEstTofCalibDataCnv");
55 log<<MSG::DEBUG<<"SetProperty"<<endreq;
56
57
59 if(!sc)
60 { log<<MSG::ERROR<<"unable to open files"<<endreq;
61 }
62
68
69 std::vector<CalibData::bTofCalibBase> tmpbTof;
70 std::vector<CalibData::eTofCalibBase> tmpeTof;
71 std::vector<CalibData::etfCalibBase> tmpetf;
72 std::vector<CalibData::bTofCommonCalibBase> tmpbTofCommon;
73 std::vector<CalibData::tofCalibInfoBase> tofinfoCol;
74
75
76 int cnt;
77
88
89 TTree *btoftree = (TTree*)
m_inFile -> Get(
"BarTofPar");
90
91 char brname[10];
92 for(
unsigned int i=0; i<
nBarPar; i++ ) {
95 }
96 for(
unsigned int i=0; i<
nBarPar; i++ ) {
99 }
101 sprintf( brname,
"Bunch0_Poff%i", i );
103 }
107 }
109 sprintf( brname,
"Bunch1_Poff%i", i );
111 }
115 }
117 sprintf( brname,
"Bunch2_Poff%i", i );
119 }
123 }
125 sprintf( brname,
"Bunch3_Poff%i", i );
127 }
131 }
132
133 for(cnt=0; cnt< btoftree->GetEntries(); cnt++){
135 bTof.
setP1( cnvBarPar1 );
136 bTof.
setP2( cnvBarPar2 );
145 tmpbTof.push_back( bTof );
146 }
147
148
150
151 TTree *etoftree = (TTree*)
m_inFile -> Get(
"EndTofPar");
152
153 char ecname[10];
154 for(
unsigned int i=0; i<
nEndPar; i++ ) {
157 }
158
159 for(cnt=0; cnt<etoftree->GetEntries(); cnt++){
160 etoftree->GetEntry(cnt);
161 eTof.
setP( cnvEndPar );
162 tmpeTof.push_back(eTof);
163 }
164
165
169
171 TTree *etftree = (TTree*)
m_inFile -> Get(
"EtfTofPar");
172
173 char etfname[10];
174 for(
unsigned int i=0; i<
nEtfPar; i++ ) {
177 }
178 for(
unsigned int i=0; i<
nEtfPar; i++ ) {
181 }
182 for(
unsigned int i=0; i<
nEtfPar; i++ ) {
185 }
186
187 for(cnt=0; cnt<etftree->GetEntries(); cnt++){
189 etf.
setP( cnvEtfPar );
190 etf.
setP1( cnvEtfPar1 );
191 etf.
setP2( cnvEtfPar2 );
192 tmpetf.push_back(etf);
193 }
194 }
195
196
198 TTree *btofcommontree = (TTree*)
m_inFile -> Get(
"BarTofParCommon");
200 sprintf( brname,
"t0offset%i", i );
202 }
203
204 int entries = btofcommontree->GetEntries();
205 for(cnt=0;cnt<entries;cnt++){
206 btofcommontree->GetEntry(cnt);
208 tmpbTofCommon.push_back(bTofCommon);
209 }
210
211 int m_runFrom, m_runTo, m_eventFrom, m_eventTo;
212
213 TTree *CalibInfo = (TTree*)
m_inFile -> Get(
"CalibInfo");
214
215 if( CalibInfo->GetBranchStatus("runFrom") ) {
216 CalibInfo->SetBranchAddress("runFrom", &m_runFrom );
217 CalibInfo->SetBranchAddress("runTo", &m_runTo );
218 CalibInfo->SetBranchAddress("eventFrom", &m_eventFrom );
219 CalibInfo->SetBranchAddress("eventTo", &m_eventTo );
220 }
221 else {
222 m_runFrom = -1;
223 m_runTo = -1;
224 m_eventFrom = -1;
225 m_eventTo = -1;
226 }
227
228 entries= CalibInfo->GetEntries();
229 for(cnt=0;cnt<entries;cnt++){
230 CalibInfo->GetEntry(cnt);
235 tofinfoCol.push_back(tofinfo);
236 }
237
239
240 refpObject=tmpObject;
241
242 return StatusCode::SUCCESS;
243}
data SetBranchAddress("time",&time)
const unsigned int nBarOffset
const unsigned int nBarParOff
void setP2(const double *TofP2)
void setPoff1_bunch3(const double *TofPoff1_bunch3)
void setPoff2_bunch1(const double *TofPoff2_bunch1)
void setPoff1_bunch0(const double *TofPoff1_bunch0)
void setPoff2_bunch2(const double *TofPoff2_bunch2)
void setPoff1_bunch1(const double *TofPoff1_bunch1)
void setPoff1_bunch2(const double *TofPoff1_bunch2)
void setPoff2_bunch3(const double *TofPoff2_bunch3)
void setPoff2_bunch0(const double *TofPoff2_bunch0)
void setP1(const double *TofP1)
void setOffset(const double *offset)
void setP(const double *TofP)
void setP(const double *etfP)
void setP1(const double *etfP1)
void setP2(const double *etfP2)
void setRunFrom(const int runFrom)
void setEventTo(const int eventTo)
void setRunTo(const int runTo)
void setEventFrom(const int eventFrom)
StatusCode openRead(const std::string &fname)