15 {611, 612, 602, 700, 718, 1118},
16 {627, 610, 601, 716, 722, 1122},
17 {625, 626, 609, 714, 722, 1122},
18 {623, 624, 608, 712, 722, 1122},
19 {621, 622, 607, 710, 720, 1120},
20 {619, 620, 606, 708, 720, 1120},
21 {617, 618, 605, 706, 720, 1120},
22 {615, 616, 604, 704, 718, 1118},
23 {631, 632, 648, 703, 719, 1118},
24 {629, 630, 647, 701, 719, 1118},
25 {645, 628, 646, 717, 723, 1122},
26 {643, 644, 654, 715, 723, 1122},
27 {641, 642, 653, 713, 723, 1122},
28 {639, 640, 652, 711, 721, 1120},
29 {637, 638, 651, 709, 721, 1120},
30 {635, 636, 650, 707, 721, 1120},
31 {633, 634, 649, 705, 719, 1118}};
35 rct(new
L1RCT(rctLookupTables.
get())),
40 bunchCrossings(conf.getParameter<
std::vector<
int>>(
"BunchCrossings")),
45 fedUpdatedMask(nullptr) {
46 produces<L1CaloEmCollection>();
47 produces<L1CaloRegionCollection>();
49 for (
unsigned int ihc = 0; ihc <
hcalDigis.size(); ihc++) {
50 consumes<edm::SortedCollection<HcalTriggerPrimitiveDigi, edm::StrictWeakOrdering<HcalTriggerPrimitiveDigi>>>(
54 for (
unsigned int iec = 0; iec <
ecalDigis.size(); iec++) {
55 consumes<edm::SortedCollection<EcalTriggerPrimitiveDigi, edm::StrictWeakOrdering<EcalTriggerPrimitiveDigi>>>(
152 for (
int i = 0;
i < 18;
i++) {
153 for (
int j = 0;
j < 2;
j++) {
154 for (
int k = 0;
k < 28;
k++) {
158 for (
int k = 0;
k < 4;
k++) {
176 bool useUpgradedHF =
false;
178 std::vector<int> caloFeds;
181 for (std::vector<int>::const_iterator cf = Feds.begin(); cf != Feds.end(); ++cf) {
183 if ((fedNum > 600 && fedNum < 724) || fedNum == 1118 || fedNum == 1120 || fedNum == 1122)
184 caloFeds.push_back(fedNum);
186 if (fedNum == 1118 || fedNum == 1120 || fedNum == 1122)
187 useUpgradedHF =
true;
190 for (
int cr = 0; cr < 18; ++cr) {
192 bool fedFound =
false;
195 std::vector<int>::iterator fv =
std::find(caloFeds.begin(), caloFeds.end(),
crateFED[cr][
cs]);
196 if (fv != caloFeds.end())
202 bool phi_even[2] = {
false};
265 for (
int even = 0; even <= 1; even++) {
266 if (phi_even[even]) {
274 for (
int even = 0; even <= 1; even++)
292 const std::vector<int> fedvector =
summary->m_fed_in;
308 const std::vector<int> fedvector =
summary->m_fed_in;
321 throw cms::Exception(
"BadInput") <<
"From what I see the number of your your ECAL input digi "
323 <<
"is different from the size of your HCAL digi input collections\n"
324 <<
"or the size of your BX factor collection"
325 <<
"They must be the same to correspond to the same Bxs\n"
326 <<
"It does not matter if one of them is empty\n";
342 rct->digiInput(ecalIn, hcalIn);
346 for (
int j = 0;
j < 18;
j++) {
349 for (
int i = 0;
i < 4;
i++) {
352 rctEmCands->push_back(isolatedEGObjects.at(
i));
353 rctEmCands->push_back(nonisolatedEGObjects.at(
i));
357 for (
int i = 0;
i < 18;
i++) {
358 std::vector<L1CaloRegion>
regions =
rct->getRegions(
i);
359 for (
int j = 0;
j < 22;
j++) {
361 rctRegions->push_back(
regions.at(
j));
373 std::cout <<
"Contents of given fedVector: ";
374 std::copy(fedVector.begin(), fedVector.end(), std::ostream_iterator<int>(
std::cout,
", "));
383 std::cout <<
"Trying to print contents of fedUpdatedMask, but it doesn't exist!" << std::endl;
391 std::cout <<
"Contents of fedUpdatedMask: ";
394 std::cout <<
"--> ECAL mask: " << std::endl;
395 for (
int i = 0;
i < 18;
i++) {
396 for (
int j = 0;
j < 2;
j++) {
397 for (
int k = 0;
k < 28;
k++) {
402 std::cout <<
"--> HCAL mask: " << std::endl;
403 for (
int i = 0;
i < 18;
i++) {
404 for (
int j = 0;
j < 2;
j++) {
405 for (
int k = 0;
k < 28;
k++) {
410 std::cout <<
"--> HF mask: " << std::endl;
411 for (
int i = 0;
i < 18;
i++) {
412 for (
int j = 0;
j < 2;
j++) {
413 for (
int k = 0;
k < 4;
k++) {
422 std::cout <<
"Trying to print contents of fedUpdatedMask, but it doesn't exist!" << std::endl;