11 allLCTs(match_trig_window_size) {
13 edm::LogError(
"CSCUpgradeMotherboard|SetupError") <<
"+++ TMB constructed while isSLHC_ is not set! +++\n";
17 edm::LogError(
"CSCUpgradeMotherboard|SetupError") <<
"+++ TMB constructed while runME11Up_ is not set! +++\n";
19 edm::LogError(
"CSCUpgradeMotherboard|SetupError") <<
"+++ TMB constructed while runME21Up_ is not set! +++\n";
21 edm::LogError(
"CSCUpgradeMotherboard|SetupError") <<
"+++ TMB constructed while runME31Up_ is not set! +++\n";
23 edm::LogError(
"CSCUpgradeMotherboard|SetupError") <<
"+++ TMB constructed while runME41Up_ is not set! +++\n";
53 edm::LogError(
"CSCUpgradeMotherboard|SetupError") <<
"+++ TMB constructed while isSLHC_ is not set! +++\n";
57 edm::LogError(
"CSCUpgradeMotherboard|SetupError") <<
"+++ TMB constructed while runME11Up_ is not set! +++\n";
59 edm::LogError(
"CSCUpgradeMotherboard|SetupError") <<
"+++ TMB constructed while runME21Up_ is not set! +++\n";
61 edm::LogError(
"CSCUpgradeMotherboard|SetupError") <<
"+++ TMB constructed while runME31Up_ is not set! +++\n";
63 edm::LogError(
"CSCUpgradeMotherboard|SetupError") <<
"+++ TMB constructed while runME41Up_ is not set! +++\n";
74 <<
"+++ run() called for non-existing ALCT/CLCT processor! +++ \n";
89 unsigned alctBits =
alctProc->getHighMultiplictyBits();
92 int used_clct_mask[20];
93 for (
int c = 0;
c < 20; ++
c)
94 used_clct_mask[
c] = 0;
98 if (
alctProc->getBestALCT(bx_alct).isValid()) {
104 <<
"========================================================================" << std::endl;
105 LogTrace(
"CSCUpgradeMotherboard") <<
"ALCT-CLCT matching in ME34/1 chamber: " <<
cscId_ << std::endl;
107 <<
"------------------------------------------------------------------------" << std::endl;
108 LogTrace(
"CSCUpgradeMotherboard") <<
"+++ Best ALCT Details: ";
109 alctProc->getBestALCT(bx_alct).print();
110 LogTrace(
"CSCUpgradeMotherboard") <<
"+++ Second ALCT Details: ";
111 alctProc->getSecondALCT(bx_alct).print();
114 <<
"------------------------------------------------------------------------" << std::endl;
115 LogTrace(
"CSCUpgradeMotherboard") <<
"Attempt ALCT-CLCT matching in ME34/13 in bx range: [" << bx_clct_start
116 <<
"," << bx_clct_stop <<
"]" << std::endl;
120 for (
int bx_clct = bx_clct_start; bx_clct <= bx_clct_stop; bx_clct++) {
125 if (
clctProc->getBestCLCT(bx_clct).isValid()) {
127 LogTrace(
"CSCUpgradeMotherboard") <<
"++Valid ME21 CLCT: " <<
clctProc->getBestCLCT(bx_clct) << std::endl;
129 int mbx = bx_clct - bx_clct_start;
138 <<
"Successful ALCT-CLCT match in ME21: bx_alct = " << bx_alct <<
"; match window: [" << bx_clct_start
139 <<
"; " << bx_clct_stop <<
"]; bx_clct = " << bx_clct << std::endl;
140 LogTrace(
"CSCUpgradeMotherboard") <<
"+++ Best CLCT Details: ";
141 clctProc->getBestCLCT(bx_clct).print();
142 LogTrace(
"CSCUpgradeMotherboard") <<
"+++ Second CLCT Details: ";
143 clctProc->getSecondCLCT(bx_clct).print();
144 if (
allLCTs(bx_alct, mbx, 0).isValid()) {
145 used_clct_mask[bx_clct] += 1;
198 LogDebug(
"CSCUpgradeMotherboard") <<
"bx " <<
bx <<
" nnLCT:" <<
n <<
" " <<
n << std::endl;
206 LogTrace(
"CSCUpgradeMotherboard") <<
"========================================================================"
208 LogTrace(
"CSCUpgradeMotherboard") <<
"Counting the final LCTs" << std::endl;
209 LogTrace(
"CSCUpgradeMotherboard") <<
"========================================================================"
216 LogTrace(
"CSCUpgradeMotherboard") <<
"LCT " <<
n <<
" " <<
p << std::endl;
231 const bool anodeBestValid = bestALCT.
isValid();
232 const bool anodeSecondValid = secondALCT.
isValid();
233 const bool cathodeBestValid = bestCLCT.
isValid();
234 const bool cathodeSecondValid = secondCLCT.
isValid();
236 if (anodeBestValid and !anodeSecondValid)
237 secondALCT = bestALCT;
238 if (!anodeBestValid and anodeSecondValid)
239 bestALCT = secondALCT;
240 if (cathodeBestValid and !cathodeSecondValid)
241 secondCLCT = bestCLCT;
242 if (!cathodeBestValid and cathodeSecondValid)
243 bestCLCT = secondCLCT;
252 if (((secondALCT != bestALCT)
or (secondCLCT != bestCLCT)) and
261 std::vector<CSCCorrelatedLCTDigi>
result;
267 for (
const auto& lct :
result) {
283 }
else if (keystrip <= CSCConstants::MAX_HALF_STRIP_ME1B and keystrip >= 0)
294 edm::LogError(
"CSCUpgradeMotherboard|Error") <<
" ++ getCSCPart() failed to find the CSC chamber for in case ";
314 std::sort(lcts.begin(), lcts.end(), *
sorter);
316 lcts.erase(lcts.begin() +
max_lcts, lcts.end());