17 {36, 19, 20, 21, 22, 23, 18, 1, 2, 3, 4, 5},
18 {24, 25, 26, 27, 28, 29, 6, 7, 8, 9, 10, 11},
19 {30, 31, 32, 33, 34, 35, 12, 13, 14, 15, 16, 17},
21 {54, 37, 38, 39, 40, 41, -1, -1, -1, -1, -1, -1},
22 {42, 43, 44, 45, 46, 47, -1, -1, -1, -1, -1, -1},
23 {48, 49, 50, 51, 52, 53, -1, -1, -1, -1, -1, -1},
25 {72, 55, 56, 57, 58, 59, -1, -1, -1, -1, -1, -1},
26 {60, 61, 62, 63, 64, 65, -1, -1, -1, -1, -1, -1},
27 {66, 67, 68, 69, 70, 71, -1, -1, -1, -1, -1, -1},
29 {90, 73, 74, 75, 76, 77, 108, 91, 92, 93, 94, 95},
30 {78, 79, 80, 81, 82, 83, 96, 97, 98, 99, 100, 101},
31 {84, 85, 86, 87, 88, 89, 102, 103, 104, 105, 106, 107}
35 {1, 2, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1},
36 {4, 5, 6, -1, -1, -1, -1, -1, -1, -1, -1, -1},
37 {7, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1},
38 {10, 11, 12, 13, 14, 15, -1, -1, -1, -1, -1, -1},
39 {16, 17, 18, 19, 20, 21, -1, -1, -1, -1, -1, -1},
40 {22, 23, 24, 25, 26, 27, -1, -1, -1, -1, -1, -1},
41 {28, 29, 30, 31, 32, 33, -1, -1, -1, -1, -1, -1},
42 {34, 35, 36, 37, 38, 39, -1, -1, -1, -1, -1, -1},
43 {40, 41, 42, 43, 44, 45, -1, -1, -1, -1, -1, -1},
44 {46, 47, 48, -1, -1, -1, -1, -1, -1, -1, -1, -1},
45 {49, 50, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1},
46 {52, 53, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1}
59 while (pos0 < len &&
find(delim.begin(), delim.end(),
s[pos0]) != delim.end()) {
64 pos =
s.find_first_of(delim, pos0);
65 return s.substr(pos0, (
pos > 0 ?
pos : len) - pos0);
70 if (pos0 == string::npos) {
74 if (pos1 == string::npos) {
77 return s.substr(pos0, pos1 - pos0);
90 const std::vector<double>&
w = ps.
getParameter<std::vector<double> >(
"dccNormalizedWeights");
141 stringstream sErr(
"");
142 while (!
f.eof() && sErr.str().empty()) {
146 if (
line[0] ==
'#' ||
line.empty()) {
151 if (iValueSet >= nValueSets)
157 int nChs[nValueSets] = {
256 while (((sValue =
tokenize(
line,
" \t",
pos)) !=
string(
"")) && (iCh <
nChs[iValueSet]) && sErr.str().empty()) {
257 value = strtoul(sValue.c_str(),
nullptr, 0);
259 if (iValueSet < 12) {
262 int tcc =
tccNum[iSrp][iCh];
265 cout <<
"tccMasksFromConfig_[" << tcc <<
"] <- " <<
value <<
"\n";
268 }
else if (iValueSet < 24) {
270 cout <<
"srpMasks_[" << iSrp <<
"][" << iCh <<
"] <- " <<
value <<
"\n";
272 }
else if (iValueSet < 36) {
279 cout <<
"dccMasks_[" << (
dcc - 1) <<
"] <- " <<
value <<
"\n";
282 }
else if (iValueSet < 48) {
288 cout <<
"srfMasks_[" << (
dcc - 1) <<
"] <- " <<
value <<
"\n";
292 }
else if (iValueSet < 60) {
296 cout <<
"substitutionMasks_[" << iSrp <<
"][" << iCh <<
"] <- " <<
value <<
"\n";
298 }
else if (iValueSet < 72) {
303 cout <<
"testerTccEmuSrpIds_[" << iSrp <<
"] <- " <<
value <<
"\n";
309 cout <<
"testerSrpEmuSrpIds_[" << iSrp <<
"] <- " <<
value <<
"\n";
315 cout <<
"testerDccTestSrpIds_[" << iSrp <<
"] <- " <<
value <<
"\n";
321 cout <<
"testerSrpTestSrpIds_[" << iSrp <<
"] <- " <<
value <<
"\n";
325 sErr <<
"Syntax error in SRP system configuration " 326 <<
" line " << iLine <<
".";
328 }
else if (iValueSet < 73) {
331 cout <<
"bxOffset_[" << iCh <<
"] <- " <<
value <<
"\n";
333 }
else if (iValueSet < 74) {
344 <<
"Value of parameter algo ," <<
algo <<
", is invalid. Valid values are 0 and 1.";
348 <<
"deltaPhi_[0] <- " << sr.
deltaPhi_[0] <<
"\n";
349 }
else if (iValueSet < 75) {
352 cout <<
"actions_[" << iCh <<
"] <- " <<
value <<
"\n";
354 }
else if (iValueSet < 76) {
358 }
else if (iValueSet < 77) {
362 }
else if (iValueSet < 78) {
366 }
else if (iValueSet < 79) {
370 }
else if (iValueSet < 80) {
374 }
else if (iValueSet < 81) {
383 if (iCh !=
nChs[iValueSet]) {
384 sErr <<
"Syntax error in imported SRP system configuration file " 389 if (sErr.str().empty() && iValueSet != (nValueSets - 1)) {
390 sErr <<
"Syntax Error in imported SRP system configuration file " 394 if (!sErr.str().empty())
401 if (hwWeight & (1 << 11))
403 return hwWeight / 1024.;
T getParameter(std::string const &) const
ALPAKA_FN_ACC int dcc(int ieta, int iphi)
std::vector< short > srfMasks_
static void trim(std::string &s)
std::vector< std::vector< float > > dccNormalizedWeights_
std::vector< int > testerSrpEmuSrpIds_
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
std::vector< float > srpHighInterestChannelZS_
std::vector< int > actions_
std::vector< std::vector< short > > substitutionSrfs_
std::vector< int > testerDccTestSrpIds_
std::vector< int > ecalDccZs1stSample_
std::vector< short > tccMasksFromConfig_
std::vector< short > bxOffsets_
std::vector< short > dccMasks_
std::vector< int > deltaPhi_
std::vector< int > symetricZS_
float ebDccAdcToGeV_
ADC to GeV conversion factor used in ZS filter for EB.
std::vector< int > testerTccEmuSrpIds_
std::vector< float > srpLowInterestChannelZS_
std::vector< int > deltaEta_
std::vector< int > testerSrpTestSrpIds_
float eeDccAdcToGeV_
ADC to GeV conversion factor used in ZS filter for EE.
std::vector< std::vector< short > > srpMasksFromConfig_