21 std::string::size_type end=payLoad.find(
"END ");
22 std::string_view etaRec=payLoad.substr(0,end);
23 payLoad=payLoad.substr(end+4,payLoad.size()-end-4);
25 end=payLoad.find(
"END ");
26 std::string_view etaDet=payLoad.substr(0,end);
27 payLoad=payLoad.substr(end+4,payLoad.size()-end-4);
29 end=payLoad.find(
"END ");
30 std::string_view phiRec1=payLoad.substr(0,end);
31 payLoad=payLoad.substr(end+4,payLoad.size()-end-4);
33 end=payLoad.find(
"END ");
34 std::string_view phiRec2=payLoad.substr(0,end);
35 payLoad=payLoad.substr(end+4,payLoad.size()-end-4);
37 end=payLoad.find(
"END ");
38 std::string_view phiDet1=payLoad.substr(0,end);
39 payLoad=payLoad.substr(end+4,payLoad.size()-end-4);
41 end=payLoad.find(
"END ");
42 std::string_view phiDet2=payLoad.substr(0,end);
44 this->initData(std::string(etaRec), std::string(etaDet),std::string(phiRec1),std::string(phiRec2),std::string(phiDet1),std::string(phiDet2));
48 void RpcCalibDBEntry::initData(std::string etaRec, std::string etaDet, std::string phiRec1, std::string phiRec2, std::string phiDet1, std::string phiDet2){
51 unsigned long int pos = 0;
52 std::string::size_type start = etaRec.find_first_not_of(
' ',pos);
53 if(start == std::string::npos) {
54 std::cout <<
"RpcCalibDBEntry::initData -- problems extracting m_nRecEta -- crashing." << std::endl;
57 std::string::size_type stop = etaRec.find_first_of(
' ',start+1);
58 if (stop == std::string::npos) stop = etaRec.size();
59 m_nRecEta = std::stoi(etaRec.substr(start,stop-start),
nullptr);
60 etaRec.erase(pos,stop-pos);
63 start = phiRec1.find_first_not_of(
' ',pos);
64 if(start == std::string::npos) {
65 std::cout <<
"RpcCalibDBEntry::initData -- problems extracting m_nRecPhi1 -- crashing." << std::endl;
68 stop = phiRec1.find_first_of(
' ',start+1);
69 if (stop == std::string::npos) stop = phiRec1.size();
70 m_nRecPhi1 = std::stoi(phiRec1.substr(start,stop-start),
nullptr);
71 phiRec1.erase(pos,stop-pos);
73 std::istringstream etaRec_str;
74 std::istringstream etaDet_str;
75 std::istringstream phiRec1_str;
76 std::istringstream phiRec2_str;
77 std::istringstream phiDet1_str;
78 std::istringstream phiDet2_str;
80 etaRec_str.str(etaRec);
81 etaDet_str.str(etaDet);
82 phiRec1_str.str(phiRec1);
83 phiRec2_str.str(phiRec2);
84 phiDet1_str.str(phiDet1);
85 phiDet2_str.str(phiDet2);
92 float eff, errEff, res1, res2, resX, errRes1, errRes2, errResX, time, errTime, noise, errNoise, noiseC, errNoiseC, cs, errCs;
98 etaRec_str>>eff>>errEff>>res1>>errRes1>>res2>>errRes2>>resX>>errResX>>time>>errTime;
99 etaDet_str>>noise>>errNoise>>noiseC>>errNoiseC>>cs>>errCs;
101 auto etaData= std::make_unique<RpcCalibData>();
104 etaData->setEff(eff);
105 etaData->setErrEff(errEff);
106 etaData->setRes1(res1);
107 etaData->setRes2(res2);
108 etaData->setResX(resX);
109 etaData->setErrRes1(errRes1);
110 etaData->setErrRes2(errRes2);
111 etaData->setErrResX(errResX);
112 etaData->setTime(time);
113 etaData->setErrTime(errTime);
114 etaData->setNoise(noise);
115 etaData->setNoiseC(noiseC);
116 etaData->setErrNoise(errNoise);
117 etaData->setErrNoiseC(errNoiseC);
119 etaData->setErrCs(errCs);
129 phiRec1_str>>eff>>res1>>res2>>resX>>time;
130 phiRec2_str>>errEff>>errRes1>>errRes2>>errResX>>errTime;
131 phiDet1_str>>noise>>errNoise>>noiseC>>errNoiseC>>cs>>errCs;
133 auto phiData= std::make_unique<RpcCalibData>();
136 phiData->setEff(eff);
137 phiData->setErrEff(errEff);
138 phiData->setRes1(res1);
139 phiData->setRes2(res2);
140 phiData->setResX(resX);
141 phiData->setErrRes1(errRes1);
142 phiData->setErrRes2(errRes2);
143 phiData->setErrResX(errResX);
144 phiData->setTime(time);
145 phiData->setErrTime(errTime);
146 phiData->setNoise(noise);
147 phiData->setNoiseC(noiseC);
148 phiData->setErrNoise(errNoise);
149 phiData->setErrNoiseC(errNoiseC);
151 phiData->setErrCs(errCs);
176 void RpcCalibDBEntry::getColumns(std::string &recEta, std::string &detEta,std::string &recPhi1, std::string &recPhi2, std::string &detPhi1,std::string &detPhi2)
const{
179 std::ostringstream recEta_str,detEta_str,recPhi1_str,recPhi2_str,detPhi1_str,detPhi2_str;
181 float eff, errEff, res1, res2, resX, errRes1, errRes2, errResX, time, errTime, noise, errNoise, noiseC, errNoiseC, cs, errCs;
198 eff=theData->getEff();
199 errEff=theData->getErrEff();
200 res1=theData->getRes1();
201 res2=theData->getRes2();
202 resX=theData->getResX();
203 errRes1=theData->getErrRes1();
204 errRes2=theData->getErrRes2();
205 errResX=theData->getErrResX();
206 time=theData->getTime();
207 errTime=theData->getErrTime();
208 noise=theData->getNoise();
209 noiseC=theData->getNoiseC();
210 errNoise=theData->getErrNoise();
211 errNoiseC=theData->getErrNoiseC();
213 errCs=theData->getErrCs();
215 recEta_str<< eff<<
' '<<errEff<<
' '<<res1<<
' '<<errRes1<<
' '<<res2<<
' '<<errRes2<<
' '<<resX<<
' '<<errResX<<
' '<<time<<
' '<<errTime<<
' ';
216 detEta_str<<noise<<
' '<<errNoise<<
' '<<noiseC<<
' '<<errNoiseC<<
' '<<cs<<
' '<<errCs<<
' ';
225 eff=theData->getEff();
226 errEff=theData->getErrEff();
227 res1=theData->getRes1();
228 res2=theData->getRes2();
229 resX=theData->getResX();
230 errRes1=theData->getErrRes1();
231 errRes2=theData->getErrRes2();
232 errResX=theData->getErrResX();
233 time=theData->getTime();
234 errTime=theData->getErrTime();
235 noise=theData->getNoise();
236 noiseC=theData->getNoiseC();
237 errNoise=theData->getErrNoise();
238 errNoiseC=theData->getErrNoiseC();
240 errCs=theData->getErrCs();
242 recPhi1_str<<eff<<
' ' <<res1<<
' ' <<res2<<
' ' <<resX<<
' ' <<time<<
' ';
243 recPhi2_str<<errEff<<
' ' <<errRes1<<
' ' <<errRes2<<
' ' <<errResX<<
' ' <<errTime<<
' ';
244 detPhi1_str<<noise<<
' ' <<errNoise<<
' ' <<noiseC<<
' ' <<errNoiseC<<
' ' <<cs<<
' ' <<errCs<<
' ';
251 recEta=recEta_str.str();
252 detEta=detEta_str.str();
253 recPhi1=recPhi1_str.str();
254 recPhi2=recPhi2_str.str();
255 detPhi1=detPhi1_str.str();
256 detPhi2=detPhi2_str.str();
std::vector< std::unique_ptr< RpcCalibData > > m_thePhiData
void initData(std::string etaRec, std::string etaDet, std::string phiRec1, std::string phiRec2, std::string phiDet1, std::string phiDet2)
void getColumns(std::string &recEta, std::string &detEta, std::string &recPhi1, std::string &recPhi2, std::string &detPhi1, std::string &detPhi2) const
std::vector< std::unique_ptr< RpcCalibData > > m_theEtaData