CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes
CSCTriggerPrimitivesBuilder Class Reference

#include <CSCTriggerPrimitivesBuilder.h>

Public Types

enum  trig_cscs {
  MAX_ENDCAPS = 2, MAX_STATIONS = 4, MAX_SECTORS = 6, MAX_SUBSECTORS = 2,
  MAX_CHAMBERS = 9
}
 

Public Member Functions

void build (const CSCBadChambers *badChambers, const CSCWireDigiCollection *wiredc, const CSCComparatorDigiCollection *compdc, const GEMPadDigiCollection *gemPads, const GEMPadDigiClusterCollection *gemPadClusters, CSCALCTDigiCollection &oc_alct, CSCALCTDigiCollection &oc_alct_all, CSCCLCTDigiCollection &oc_clct, CSCCLCTDigiCollection &oc_clct_all, CSCALCTPreTriggerDigiCollection &oc_alctpretrigger, CSCCLCTPreTriggerDigiCollection &oc_clctpretrigger, CSCCLCTPreTriggerCollection &oc_pretrig, CSCCorrelatedLCTDigiCollection &oc_lct, CSCCorrelatedLCTDigiCollection &oc_sorted_lct, GEMCoPadDigiCollection &oc_gemcopad)
 
 CSCTriggerPrimitivesBuilder (const edm::ParameterSet &)
 
void setConfigParameters (const CSCDBL1TPParameters *conf)
 
void setCSCGeometry (const CSCGeometry *g)
 set CSC and GEM geometries for the matching needs More...
 
void setGEMGeometry (const GEMGeometry *g)
 
 ~CSCTriggerPrimitivesBuilder ()
 

Private Member Functions

template<class T , class S >
void put (const T &, S &, const CSCDetId &, std::string comment)
 

Private Attributes

bool checkBadChambers_
 a flag whether to skip chambers from the bad chambers map More...
 
const CSCGeometrycsc_g
 
bool disableME1a_
 
bool disableME42_
 
const GEMGeometrygem_g
 
int infoV
 
bool isSLHC_
 
int m_maxBX_
 
int m_minBX_
 
std::unique_ptr< CSCMuonPortCardm_muonportcard
 
bool runME11ILT_
 
bool runME11Up_
 
bool runME21ILT_
 
bool runME21Up_
 
bool runME31Up_
 
bool runME41Up_
 
std::unique_ptr< CSCMotherboardtmb_ [MAX_ENDCAPS][MAX_STATIONS][MAX_SECTORS][MAX_SUBSECTORS][MAX_CHAMBERS]
 
bool useClusters_
 

Static Private Attributes

static const int max_chamber = CSCTriggerNumbering::maxTriggerCscId()
 
static const int max_endcap = CSCDetId::maxEndcapId()
 
static const int max_sector = CSCTriggerNumbering::maxTriggerSectorId()
 
static const int max_station = CSCDetId::maxStationId()
 
static const int max_subsector = CSCTriggerNumbering::maxTriggerSubSectorId()
 
static const int min_chamber = CSCTriggerNumbering::minTriggerCscId()
 
static const int min_endcap = CSCDetId::minEndcapId()
 
static const int min_sector = CSCTriggerNumbering::minTriggerSectorId()
 
static const int min_station = CSCDetId::minStationId()
 
static const int min_subsector = CSCTriggerNumbering::minTriggerSubSectorId()
 

Detailed Description

Definition at line 41 of file CSCTriggerPrimitivesBuilder.h.

Member Enumeration Documentation

◆ trig_cscs

Max values of trigger labels for all CSCs; used to construct TMB processors.

Enumerator
MAX_ENDCAPS 
MAX_STATIONS 
MAX_SECTORS 
MAX_SUBSECTORS 
MAX_CHAMBERS 

Definition at line 85 of file CSCTriggerPrimitivesBuilder.h.

Constructor & Destructor Documentation

◆ CSCTriggerPrimitivesBuilder()

CSCTriggerPrimitivesBuilder::CSCTriggerPrimitivesBuilder ( const edm::ParameterSet conf)
explicit

Configure the algorithm via constructor. Receives ParameterSet percolated down from EDProducer which owns this Builder.

Definition at line 20 of file CSCTriggerPrimitivesBuilder.cc.

20  {
21  // special configuration parameters for ME11 treatment
22  edm::ParameterSet commonParams = conf.getParameter<edm::ParameterSet>("commonParam");
23  isSLHC_ = commonParams.getParameter<bool>("isSLHC");
24  infoV = commonParams.getParameter<int>("verbosity");
25  disableME1a_ = commonParams.getParameter<bool>("disableME1a");
26  disableME42_ = commonParams.getParameter<bool>("disableME42");
27 
28  checkBadChambers_ = conf.getParameter<bool>("checkBadChambers");
29 
30  runME11Up_ = commonParams.getParameter<bool>("runME11Up");
31  runME21Up_ = commonParams.getParameter<bool>("runME21Up");
32  runME31Up_ = commonParams.getParameter<bool>("runME31Up");
33  runME41Up_ = commonParams.getParameter<bool>("runME41Up");
34 
35  runME11ILT_ = commonParams.getParameter<bool>("runME11ILT");
36  runME21ILT_ = commonParams.getParameter<bool>("runME21ILT");
37 
38  useClusters_ = commonParams.getParameter<bool>("useClusters");
39 
40  // Initializing boards.
41  for (int endc = min_endcap; endc <= max_endcap; endc++) {
42  for (int stat = min_station; stat <= max_station; stat++) {
43  int numsubs = ((stat == 1) ? max_subsector : 1);
44  for (int sect = min_sector; sect <= max_sector; sect++) {
45  for (int subs = min_subsector; subs <= numsubs; subs++) {
46  for (int cham = min_chamber; cham <= max_chamber; cham++) {
47  if ((endc <= 0 || endc > MAX_ENDCAPS) || (stat <= 0 || stat > MAX_STATIONS) ||
48  (sect <= 0 || sect > MAX_SECTORS) || (subs <= 0 || subs > MAX_SUBSECTORS) ||
49  (cham <= 0 || cham > MAX_CHAMBERS)) {
50  edm::LogError("CSCTriggerPrimitivesBuilder|SetupError")
51  << "+++ trying to instantiate TMB of illegal CSC id ["
52  << " endcap = " << endc << " station = " << stat << " sector = " << sect << " subsector = " << subs
53  << " chamber = " << cham << "]; skipping it... +++\n";
54  continue;
55  }
57  // When the motherboard is instantiated, it instantiates ALCT
58  // and CLCT processors.
59 
60  // go through all possible cases
61  if (isSLHC_ and ring == 1 and stat == 1 and runME11Up_ and !runME11ILT_)
62  tmb_[endc - 1][stat - 1][sect - 1][subs - 1][cham - 1] =
63  std::make_unique<CSCMotherboardME11>(endc, stat, sect, subs, cham, conf);
64  else if (isSLHC_ and ring == 1 and stat == 1 and runME11Up_ and runME11ILT_)
65  tmb_[endc - 1][stat - 1][sect - 1][subs - 1][cham - 1] =
66  std::make_unique<CSCGEMMotherboardME11>(endc, stat, sect, subs, cham, conf);
67  else if (isSLHC_ and ring == 1 and stat == 2 and runME21Up_ and runME21ILT_)
68  tmb_[endc - 1][stat - 1][sect - 1][subs - 1][cham - 1] =
69  std::make_unique<CSCGEMMotherboardME21>(endc, stat, sect, subs, cham, conf);
70  else if (isSLHC_ and ring == 1 and
71  ((stat == 2 and runME21Up_ and !runME21ILT_) || (stat == 3 and runME31Up_) ||
72  (stat == 4 and runME41Up_)))
73  tmb_[endc - 1][stat - 1][sect - 1][subs - 1][cham - 1] =
74  std::make_unique<CSCUpgradeMotherboard>(endc, stat, sect, subs, cham, conf);
75  else
76  tmb_[endc - 1][stat - 1][sect - 1][subs - 1][cham - 1] =
77  std::make_unique<CSCMotherboard>(endc, stat, sect, subs, cham, conf);
78  }
79  }
80  }
81  }
82  }
83 
84  // Get min and max BX to sort LCTs in MPC.
85  m_minBX_ = conf.getParameter<int>("MinBX");
86  m_maxBX_ = conf.getParameter<int>("MaxBX");
87 
88  // Init MPC
89  m_muonportcard.reset(new CSCMuonPortCard(conf));
90 }

References relativeConstraints::cham, checkBadChambers_, disableME1a_, disableME42_, edm::ParameterSet::getParameter(), infoV, isSLHC_, m_maxBX_, m_minBX_, m_muonportcard, max_chamber, MAX_CHAMBERS, max_endcap, MAX_ENDCAPS, max_sector, MAX_SECTORS, max_station, MAX_STATIONS, max_subsector, MAX_SUBSECTORS, min_chamber, min_endcap, min_sector, min_station, min_subsector, relativeConstraints::ring, CSCTriggerNumbering::ringFromTriggerLabels(), runME11ILT_, runME11Up_, runME21ILT_, runME21Up_, runME31Up_, runME41Up_, hgcalPlots::stat, tmb_, and useClusters_.

◆ ~CSCTriggerPrimitivesBuilder()

CSCTriggerPrimitivesBuilder::~CSCTriggerPrimitivesBuilder ( )

Definition at line 95 of file CSCTriggerPrimitivesBuilder.cc.

95 {}

Member Function Documentation

◆ build()

void CSCTriggerPrimitivesBuilder::build ( const CSCBadChambers badChambers,
const CSCWireDigiCollection wiredc,
const CSCComparatorDigiCollection compdc,
const GEMPadDigiCollection gemPads,
const GEMPadDigiClusterCollection gemPadClusters,
CSCALCTDigiCollection oc_alct,
CSCALCTDigiCollection oc_alct_all,
CSCCLCTDigiCollection oc_clct,
CSCCLCTDigiCollection oc_clct_all,
CSCALCTPreTriggerDigiCollection oc_alctpretrigger,
CSCCLCTPreTriggerDigiCollection oc_clctpretrigger,
CSCCLCTPreTriggerCollection oc_pretrig,
CSCCorrelatedLCTDigiCollection oc_lct,
CSCCorrelatedLCTDigiCollection oc_sorted_lct,
GEMCoPadDigiCollection oc_gemcopad 
)

Definition at line 114 of file CSCTriggerPrimitivesBuilder.cc.

128  {
129  // CSC geometry.
130  for (int endc = min_endcap; endc <= max_endcap; endc++) {
131  for (int stat = min_station; stat <= max_station; stat++) {
132  int numsubs = ((stat == 1) ? max_subsector : 1);
133  for (int sect = min_sector; sect <= max_sector; sect++) {
134  for (int subs = min_subsector; subs <= numsubs; subs++) {
135  for (int cham = min_chamber; cham <= max_chamber; cham++) {
136  // extract the ring number
138 
139  // case when you want to ignore ME42
140  if (disableME42_ && stat == 4 && ring == 2)
141  continue;
142 
143  CSCMotherboard* tmb = tmb_[endc - 1][stat - 1][sect - 1][subs - 1][cham - 1].get();
144 
145  tmb->setCSCGeometry(csc_g);
146 
147  // actual chamber number =/= trigger chamber number
149 
150  // 0th layer means whole chamber.
151  CSCDetId detid(endc, stat, ring, chid, 0);
152 
153  // Run processors only if chamber exists in geometry.
154  if (tmb == nullptr || csc_g->chamber(detid) == nullptr)
155  continue;
156 
157  // Skip chambers marked as bad (usually includes most of ME4/2 chambers;
158  // also, there's no ME1/a-1/b separation, it's whole ME1/1)
159  if (checkBadChambers_ && badChambers->isInBadChamber(detid))
160  continue;
161 
162  // running upgraded ME1/1 TMBs
163  if (stat == 1 && ring == 1 && isSLHC_ && !runME11ILT_) {
164  // run the TMB
165  CSCMotherboardME11* tmb11 = static_cast<CSCMotherboardME11*>(tmb);
166  if (infoV > 1)
167  LogTrace("CSCTriggerPrimitivesBuilder")
168  << "CSCTriggerPrimitivesBuilder::build in E:" << endc << " S:" << stat << " R:" << ring;
169  tmb11->run(wiredc, compdc);
170 
171  // get all collections
172  // all ALCTs, CLCTs, LCTs are written with detid ring = 1, as data did
173  // but CLCTs and LCTs are written sperately in ME1a and ME1b, considering whether ME1a is disabled or not
174  const std::vector<CSCCorrelatedLCTDigi>& lctV = tmb11->readoutLCTs1b();
175  const std::vector<CSCCorrelatedLCTDigi>& lctV1a = tmb11->readoutLCTs1a();
176  const std::vector<CSCALCTDigi>& alctV = tmb11->alctProc->readoutALCTs();
177  const std::vector<CSCALCTDigi>& alctV_all =
178  tmb11->alctProc->readoutALCTs(CSCConstants::MAX_ALCTS_PER_PROCESSOR);
179  const std::vector<CSCCLCTDigi>& clctV = tmb11->clctProc->readoutCLCTsME1b();
180  const std::vector<CSCCLCTDigi>& clctV_all =
181  tmb11->clctProc->readoutCLCTsME1b(CSCConstants::MAX_CLCTS_PER_PROCESSOR);
182  const std::vector<int>& preTriggerBXs = tmb11->clctProc->preTriggerBXs();
183  const std::vector<CSCCLCTPreTriggerDigi>& pretriggerV = tmb11->clctProc->preTriggerDigisME1b();
184  const std::vector<CSCCLCTDigi>& clctV1a = tmb11->clctProc->readoutCLCTsME1a();
185  const std::vector<CSCCLCTPreTriggerDigi>& pretriggerV1a = tmb11->clctProc->preTriggerDigisME1a();
186  const std::vector<CSCALCTPreTriggerDigi>& alctpretriggerV = tmb11->alctProc->preTriggerDigis();
187 
188  if (infoV > 1)
189  LogTrace("CSCTriggerPrimitivesBuilder")
190  << "CSCTriggerPrimitivesBuilder:: a=" << alctV.size() << " c=" << clctV.size()
191  << " l=" << lctV.size() << " c=" << clctV1a.size() << " l=" << lctV1a.size();
192 
193  // ME1/b
194 
195  if (!(lctV.empty() && alctV.empty() && clctV.empty()) and infoV > 1) {
196  LogTrace("L1CSCTrigger") << "CSCTriggerPrimitivesBuilder results in " << detid;
197  }
198  // put collections in event
199  put(lctV, oc_lct, detid, " ME1b LCT digi");
200  put(alctV, oc_alct, detid, " ME1b ALCT digi");
201  put(alctV_all, oc_alct_all, detid, " ME1b ALCT digi");
202  put(clctV, oc_clct, detid, " ME1b CLCT digi");
203  put(clctV_all, oc_clct_all, detid, " ME1b CLCT digi");
204  put(pretriggerV, oc_pretrigger, detid, " ME1b CLCT pre-trigger digi");
205  put(preTriggerBXs, oc_pretrig, detid, " ME1b CLCT pre-trigger BX");
206  put(alctpretriggerV, oc_alctpretrigger, detid, " ME1b ALCT pre-trigger digi");
207 
208  // ME1/a
209 
210  if (disableME1a_)
211  continue;
212 
213  CSCDetId detid1a(endc, stat, 4, chid, 0);
214 
215  if (!(lctV1a.empty() && clctV1a.empty()) and infoV > 1) {
216  LogTrace("L1CSCTrigger") << "CSCTriggerPrimitivesBuilder results in " << detid1a;
217  }
218 
219  // put collections in event, still use detid ring =1
220  put(lctV1a, oc_lct, detid, " ME1a LCT digi");
221  put(clctV1a, oc_clct, detid, " ME1a CLCT digi");
222  put(pretriggerV1a, oc_pretrigger, detid, " ME1a CLCT pre-trigger digi");
223  } // upgraded TMB
224 
225  // running upgraded ME1/1 TMBs with GEMs
226  else if (stat == 1 && ring == 1 && isSLHC_ && runME11ILT_) {
227  // run the TMB
228  CSCGEMMotherboardME11* tmb11GEM = static_cast<CSCGEMMotherboardME11*>(tmb);
229  tmb11GEM->setCSCGeometry(csc_g);
230  tmb11GEM->setGEMGeometry(gem_g);
231  if (infoV > 1)
232  LogTrace("CSCTriggerPrimitivesBuilder")
233  << "CSCTriggerPrimitivesBuilder::build in E:" << endc << " S:" << stat << " R:" << ring;
234 
235  if (useClusters_) {
236  tmb11GEM->run(wiredc, compdc, gemClusters);
237  } else {
238  tmb11GEM->run(wiredc, compdc, gemPads);
239  }
240 
241  // 0th layer means whole chamber.
242  GEMDetId gemId(detid.zendcap(), 1, 1, 0, chid, 0);
243 
244  // get the collections
245  const std::vector<CSCCorrelatedLCTDigi>& lctV = tmb11GEM->readoutLCTs1b();
246  const std::vector<CSCCorrelatedLCTDigi>& lctV1a = tmb11GEM->readoutLCTs1a();
247  const std::vector<CSCALCTDigi>& alctV = tmb11GEM->alctProc->readoutALCTs();
248  const std::vector<CSCALCTDigi>& alctV_all =
249  tmb11GEM->alctProc->readoutALCTs(CSCConstants::MAX_ALCTS_PER_PROCESSOR);
250  const std::vector<CSCCLCTDigi>& clctV = tmb11GEM->clctProc->readoutCLCTsME1b();
251  const std::vector<CSCCLCTDigi>& clctV_all =
252  tmb11GEM->clctProc->readoutCLCTsME1b(CSCConstants::MAX_CLCTS_PER_PROCESSOR);
253  const std::vector<int>& preTriggerBXs = tmb11GEM->clctProc->preTriggerBXs();
254  const std::vector<CSCCLCTPreTriggerDigi>& pretriggerV = tmb11GEM->clctProc->preTriggerDigisME1b();
255  const std::vector<CSCCLCTDigi>& clctV1a = tmb11GEM->clctProc->readoutCLCTsME1a();
256  const std::vector<CSCCLCTPreTriggerDigi>& pretriggerV1a = tmb11GEM->clctProc->preTriggerDigisME1a();
257  const std::vector<GEMCoPadDigi>& copads = tmb11GEM->coPadProcessor->readoutCoPads();
258  const std::vector<CSCALCTPreTriggerDigi>& alctpretriggerV = tmb11GEM->alctProc->preTriggerDigis();
259 
260  // ME1/b
261  if (!(lctV.empty() && alctV.empty() && clctV.empty()) and infoV > 1) {
262  LogTrace("L1CSCTrigger") << "CSCTriggerPrimitivesBuilder results in " << detid;
263  }
264 
265  // put collections in event
266  put(lctV, oc_lct, detid, " ME1b LCT digi");
267  put(alctV, oc_alct, detid, " ME1b ALCT digi");
268  put(alctV_all, oc_alct_all, detid, " ME1b ALCT digi");
269  put(clctV, oc_clct, detid, " ME1b CLCT digi");
270  put(clctV_all, oc_clct_all, detid, " ME1b CLCT digi");
271  put(pretriggerV, oc_pretrigger, detid, " ME1b CLCT pre-trigger digi");
272  put(preTriggerBXs, oc_pretrig, detid, " ME1b CLCT pre-trigger BX");
273  put(copads, oc_gemcopad, gemId, " GEM coincidence pad");
274  put(alctpretriggerV, oc_alctpretrigger, detid, " ME1b ALCT pre-trigger digi");
275 
276  // ME1/a
277  if (disableME1a_)
278  continue;
279 
280  CSCDetId detid1a(endc, stat, 4, chid, 0);
281 
282  if (!(lctV1a.empty() && clctV1a.empty()) and infoV > 1) {
283  LogTrace("L1CSCTrigger") << "CSCTriggerPrimitivesBuilder results in " << detid1a;
284  }
285 
286  // put collections in event, still use detid ring =1
287  put(lctV1a, oc_lct, detid, " ME1a LCT digi");
288  put(clctV1a, oc_clct, detid, " ME1a CLCT digi");
289  put(pretriggerV1a, oc_pretrigger, detid, " ME1a CLCT pre-trigger digi");
290  }
291 
292  // running upgraded ME2/1 TMBs
293  else if (stat == 2 && ring == 1 && isSLHC_ && runME21ILT_) {
294  // run the TMB
295  CSCGEMMotherboardME21* tmb21GEM = static_cast<CSCGEMMotherboardME21*>(tmb);
296  tmb21GEM->setCSCGeometry(csc_g);
297  tmb21GEM->setGEMGeometry(gem_g);
298 
299  if (useClusters_) {
300  tmb21GEM->run(wiredc, compdc, gemClusters);
301  } else {
302  tmb21GEM->run(wiredc, compdc, gemPads);
303  }
304 
305  // 0th layer means whole chamber.
306  GEMDetId gemId(detid.zendcap(), 1, 2, 0, chid, 0);
307 
308  // get the collections
309  const std::vector<CSCCorrelatedLCTDigi>& lctV = tmb21GEM->readoutLCTs();
310  const std::vector<CSCALCTDigi>& alctV = tmb21GEM->alctProc->readoutALCTs();
311  const std::vector<CSCALCTDigi>& alctV_all =
312  tmb21GEM->alctProc->readoutALCTs(CSCConstants::MAX_ALCTS_PER_PROCESSOR);
313  const std::vector<CSCCLCTDigi>& clctV = tmb21GEM->clctProc->readoutCLCTs();
314  const std::vector<CSCCLCTDigi>& clctV_all =
315  tmb21GEM->clctProc->readoutCLCTs(CSCConstants::MAX_CLCTS_PER_PROCESSOR);
316  const std::vector<int>& preTriggerBXs = tmb21GEM->clctProc->preTriggerBXs();
317  const std::vector<CSCCLCTPreTriggerDigi>& pretriggerV = tmb21GEM->clctProc->preTriggerDigis();
318  const std::vector<GEMCoPadDigi>& copads = tmb21GEM->coPadProcessor->readoutCoPads();
319  const std::vector<CSCALCTPreTriggerDigi>& alctpretriggerV = tmb21GEM->alctProc->preTriggerDigis();
320 
321  if (!(alctV.empty() && clctV.empty() && lctV.empty()) and infoV > 1) {
322  LogTrace("L1CSCTrigger") << "CSCTriggerPrimitivesBuilder got results in " << detid;
323  }
324 
325  // put collections in event
326  put(lctV, oc_lct, detid, " ME21 LCT digi");
327  put(alctV, oc_alct, detid, " ME21 ALCT digi");
328  put(alctV_all, oc_alct_all, detid, " ME21 ALCT digi");
329  put(clctV, oc_clct, detid, " ME21 CLCT digi");
330  put(clctV_all, oc_clct_all, detid, " ME21 CLCT digi");
331  put(pretriggerV, oc_pretrigger, detid, " ME21 CLCT pre-trigger digi");
332  put(preTriggerBXs, oc_pretrig, detid, " ME21 CLCT pre-trigger BX");
333  put(copads, oc_gemcopad, gemId, " GEM coincidence pad");
334  put(alctpretriggerV, oc_alctpretrigger, detid, " ME21 ALCT pre-trigger digi");
335  }
336  // running upgraded ME2/1-ME3/1-ME4/1 TMBs (without GEMs or RPCs)
337  else if (isSLHC_ and ring == 1 and
338  ((stat == 2 and runME21Up_ and !runME21ILT_) || (stat == 3 and runME31Up_) ||
339  (stat == 4 and runME41Up_))) {
340  // run the TMB
341  CSCUpgradeMotherboard* utmb = static_cast<CSCUpgradeMotherboard*>(tmb);
342  utmb->setCSCGeometry(csc_g);
343  utmb->run(wiredc, compdc);
344 
345  // get the collections
346  const std::vector<CSCCorrelatedLCTDigi>& lctV = utmb->readoutLCTs();
347  const std::vector<CSCALCTDigi>& alctV = utmb->alctProc->readoutALCTs();
348  const std::vector<CSCALCTDigi>& alctV_all =
349  utmb->alctProc->readoutALCTs(CSCConstants::MAX_ALCTS_PER_PROCESSOR);
350  const std::vector<CSCCLCTDigi>& clctV = utmb->clctProc->readoutCLCTs();
351  const std::vector<CSCCLCTDigi>& clctV_all =
352  utmb->clctProc->readoutCLCTs(CSCConstants::MAX_CLCTS_PER_PROCESSOR);
353  const std::vector<int>& preTriggerBXs = utmb->clctProc->preTriggerBXs();
354  const std::vector<CSCCLCTPreTriggerDigi>& pretriggerV = utmb->clctProc->preTriggerDigis();
355  const std::vector<CSCALCTPreTriggerDigi>& alctpretriggerV = utmb->alctProc->preTriggerDigis();
356 
357  if (!(alctV.empty() && clctV.empty() && lctV.empty()) and infoV > 1) {
358  LogTrace("L1CSCTrigger") << "CSCTriggerPrimitivesBuilder got results in " << detid;
359  }
360 
361  // put collections in event
362  put(lctV, oc_lct, detid, " LCT digi");
363  put(alctV, oc_alct, detid, " ALCT digi");
364  put(alctV_all, oc_alct_all, detid, " ALCT digi");
365  put(clctV, oc_clct, detid, " CLCT digi");
366  put(clctV_all, oc_clct_all, detid, tmb->getCSCName() + " CLCT digi");
367  put(pretriggerV, oc_pretrigger, detid, " CLCT pre-trigger digi");
368  put(preTriggerBXs, oc_pretrig, detid, " CLCT pre-trigger BX");
369  put(alctpretriggerV, oc_alctpretrigger, detid, " ALCT pre-trigger digi");
370  }
371 
372  // running non-upgraded TMB
373  else {
374  // run the TMB
375  tmb->run(wiredc, compdc);
376 
377  // get the collections
378  const std::vector<CSCCorrelatedLCTDigi>& lctV = tmb->readoutLCTs();
379  const std::vector<CSCALCTDigi>& alctV = tmb->alctProc->readoutALCTs();
380  const std::vector<CSCALCTDigi>& alctV_all =
382  const std::vector<CSCCLCTDigi>& clctV = tmb->clctProc->readoutCLCTs();
383  const std::vector<CSCCLCTDigi>& clctV_all =
385  const std::vector<int>& preTriggerBXs = tmb->clctProc->preTriggerBXs();
386  const std::vector<CSCCLCTPreTriggerDigi>& pretriggerV = tmb->clctProc->preTriggerDigis();
387  const std::vector<CSCALCTPreTriggerDigi>& alctpretriggerV = tmb->alctProc->preTriggerDigis();
388 
389  if (!(alctV.empty() && clctV.empty() && lctV.empty()) and infoV > 1) {
390  LogTrace("L1CSCTrigger") << "CSCTriggerPrimitivesBuilder got results in " << detid;
391  }
392 
393  // put collections in event
394  put(lctV, oc_lct, detid, tmb->getCSCName() + " LCT digi");
395  put(alctV, oc_alct, detid, tmb->getCSCName() + " ALCT digi");
396  put(alctV_all, oc_alct_all, detid, tmb->getCSCName() + " ALCT digi");
397  put(clctV, oc_clct, detid, tmb->getCSCName() + " CLCT digi");
398  put(clctV_all, oc_clct_all, detid, tmb->getCSCName() + " CLCT digi");
399  put(pretriggerV, oc_pretrigger, detid, tmb->getCSCName() + " CLCT pre-trigger digi");
400  put(preTriggerBXs, oc_pretrig, detid, tmb->getCSCName() + " CLCT pre-trigger BX");
401  put(alctpretriggerV, oc_alctpretrigger, detid, tmb->getCSCName() + " ALCT pre-trigger digi");
402  } // non-upgraded TMB
403  }
404  }
405  }
406  }
407  }
408 
409  // run MPC simulation
410  m_muonportcard->loadDigis(oc_lct);
411 
412  // sort the LCTs per sector
413  // insert them into the result vector
414  std::vector<csctf::TrackStub> result;
415  for (int bx = m_minBX_; bx <= m_maxBX_; ++bx)
416  for (int e = min_endcap; e <= max_endcap; ++e)
417  for (int st = min_station; st <= max_station; ++st)
418  for (int se = min_sector; se <= max_sector; ++se) {
419  if (st == 1) {
420  std::vector<csctf::TrackStub> subs1, subs2;
421  subs1 = m_muonportcard->sort(e, st, se, 1, bx);
422  subs2 = m_muonportcard->sort(e, st, se, 2, bx);
423  result.insert(result.end(), subs1.begin(), subs1.end());
424  result.insert(result.end(), subs2.begin(), subs2.end());
425  } else {
426  std::vector<csctf::TrackStub> sector;
427  sector = m_muonportcard->sort(e, st, se, 0, bx);
428  result.insert(result.end(), sector.begin(), sector.end());
429  }
430  }
431 
432  // now convert csctf::TrackStub back into CSCCorrelatedLCTDigi
433  // put MPC stubs into the event
434  std::vector<csctf::TrackStub>::const_iterator itr = result.begin();
435  for (; itr != result.end(); itr++) {
436  oc_sorted_lct.insertDigi(CSCDetId(itr->getDetId().rawId()), *(itr->getDigi()));
437  if (infoV > 1)
438  LogDebug("L1CSCTrigger") << "MPC " << *(itr->getDigi()) << " found in ME" << ((itr->endcap() == 1) ? "+" : "-")
439  << itr->station() << "/" << CSCDetId(itr->getDetId().rawId()).ring() << "/"
440  << CSCDetId(itr->getDetId().rawId()).chamber() << " (sector " << itr->sector()
441  << " trig id. " << itr->cscid() << ")"
442  << "\n";
443  }
444 }

References CSCMotherboard::alctProc, l1GtPatternGenerator_cfi::bx, relativeConstraints::cham, relativeConstraints::chamber, CSCGeometry::chamber(), CSCTriggerNumbering::chamberFromTriggerLabels(), checkBadChambers_, CSCMotherboard::clctProc, CSCGEMMotherboard::coPadProcessor, csc_g, disableME1a_, disableME42_, MillePedeFileConverter_cfg::e, gem_g, CSCBaseboard::getCSCName(), infoV, CSCBadChambers::isInBadChamber(), isSLHC_, LogDebug, LogTrace, m_maxBX_, m_minBX_, m_muonportcard, CSCConstants::MAX_ALCTS_PER_PROCESSOR, max_chamber, CSCConstants::MAX_CLCTS_PER_PROCESSOR, max_endcap, max_sector, max_station, max_subsector, min_chamber, min_endcap, min_sector, min_station, min_subsector, put(), CSCGEMMotherboardME21::readoutLCTs(), CSCMotherboard::readoutLCTs(), CSCUpgradeMotherboard::readoutLCTs(), CSCGEMMotherboardME11::readoutLCTs1a(), CSCMotherboardME11::readoutLCTs1a(), CSCGEMMotherboardME11::readoutLCTs1b(), CSCMotherboardME11::readoutLCTs1b(), mps_fire::result, relativeConstraints::ring, CSCTriggerNumbering::ringFromTriggerLabels(), CSCGEMMotherboardME11::run(), CSCGEMMotherboardME21::run(), CSCMotherboardME11::run(), CSCMotherboard::run(), CSCUpgradeMotherboard::run(), runME11ILT_, runME21ILT_, runME21Up_, runME31Up_, runME41Up_, CSCBaseboard::setCSCGeometry(), CSCGEMMotherboard::setGEMGeometry(), hgcalPlots::stat, tmb_, useClusters_, and CSCDetId::zendcap().

◆ put()

template<class T , class S >
void CSCTriggerPrimitivesBuilder::put ( const T t,
S s,
const CSCDetId detid,
std::string  comment 
)
private

template function to put data in the output helps to reduce the large amount of code duplication!

Definition at line 150 of file CSCTriggerPrimitivesBuilder.h.

150  {
151  if (!t.empty()) {
152  LogTrace("L1CSCTrigger") << "Put " << t.size() << comment << ((t.size() > 1) ? "s " : " ") << "in collection\n";
153  s.put(std::make_pair(t.begin(), t.end()), detid);
154  }
155 }

References comment, LogTrace, alignCSCRings::s, and OrderedSet::t.

Referenced by build().

◆ setConfigParameters()

void CSCTriggerPrimitivesBuilder::setConfigParameters ( const CSCDBL1TPParameters conf)

Sets configuration parameters obtained via EventSetup mechanism.

Definition at line 97 of file CSCTriggerPrimitivesBuilder.cc.

97  {
98  // Receives CSCDBL1TPParameters percolated down from ESProducer.
99 
100  for (int endc = min_endcap; endc <= max_endcap; endc++) {
101  for (int stat = min_station; stat <= max_station; stat++) {
102  int numsubs = ((stat == 1) ? max_subsector : 1);
103  for (int sect = min_sector; sect <= max_sector; sect++) {
104  for (int subs = min_subsector; subs <= numsubs; subs++) {
105  for (int cham = min_chamber; cham <= max_chamber; cham++) {
106  tmb_[endc - 1][stat - 1][sect - 1][subs - 1][cham - 1]->setConfigParameters(conf);
107  }
108  }
109  }
110  }
111  }
112 }

References relativeConstraints::cham, max_chamber, max_endcap, max_sector, max_station, max_subsector, min_chamber, min_endcap, min_sector, min_station, min_subsector, hgcalPlots::stat, and tmb_.

◆ setCSCGeometry()

void CSCTriggerPrimitivesBuilder::setCSCGeometry ( const CSCGeometry g)
inline

set CSC and GEM geometries for the matching needs

Definition at line 55 of file CSCTriggerPrimitivesBuilder.h.

55 { csc_g = g; }

References csc_g, and g.

◆ setGEMGeometry()

void CSCTriggerPrimitivesBuilder::setGEMGeometry ( const GEMGeometry g)
inline

Definition at line 56 of file CSCTriggerPrimitivesBuilder.h.

56 { gem_g = g; }

References g, and gem_g.

Member Data Documentation

◆ checkBadChambers_

bool CSCTriggerPrimitivesBuilder::checkBadChambers_
private

a flag whether to skip chambers from the bad chambers map

Definition at line 110 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), and CSCTriggerPrimitivesBuilder().

◆ csc_g

const CSCGeometry* CSCTriggerPrimitivesBuilder::csc_g
private

Definition at line 142 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), and setCSCGeometry().

◆ disableME1a_

bool CSCTriggerPrimitivesBuilder::disableME1a_
private

SLHC: special switch for disabling ME42

Definition at line 116 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), and CSCTriggerPrimitivesBuilder().

◆ disableME42_

bool CSCTriggerPrimitivesBuilder::disableME42_
private

SLHC: special switch for disabling ME42

Definition at line 119 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), and CSCTriggerPrimitivesBuilder().

◆ gem_g

const GEMGeometry* CSCTriggerPrimitivesBuilder::gem_g
private

Definition at line 143 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), and setGEMGeometry().

◆ infoV

int CSCTriggerPrimitivesBuilder::infoV
private

Definition at line 108 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), and CSCTriggerPrimitivesBuilder().

◆ isSLHC_

bool CSCTriggerPrimitivesBuilder::isSLHC_
private

SLHC: special configuration parameters for ME11 treatment.

Definition at line 113 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), and CSCTriggerPrimitivesBuilder().

◆ m_maxBX_

int CSCTriggerPrimitivesBuilder::m_maxBX_
private

Definition at line 136 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), and CSCTriggerPrimitivesBuilder().

◆ m_minBX_

int CSCTriggerPrimitivesBuilder::m_minBX_
private

Definition at line 136 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), and CSCTriggerPrimitivesBuilder().

◆ m_muonportcard

std::unique_ptr<CSCMuonPortCard> CSCTriggerPrimitivesBuilder::m_muonportcard
private

Pointer to MPC processor.

Definition at line 146 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), and CSCTriggerPrimitivesBuilder().

◆ max_chamber

const int CSCTriggerPrimitivesBuilder::max_chamber = CSCTriggerNumbering::maxTriggerCscId()
staticprivate

◆ max_endcap

const int CSCTriggerPrimitivesBuilder::max_endcap = CSCDetId::maxEndcapId()
staticprivate

◆ max_sector

const int CSCTriggerPrimitivesBuilder::max_sector = CSCTriggerNumbering::maxTriggerSectorId()
staticprivate

◆ max_station

const int CSCTriggerPrimitivesBuilder::max_station = CSCDetId::maxStationId()
staticprivate

◆ max_subsector

const int CSCTriggerPrimitivesBuilder::max_subsector = CSCTriggerNumbering::maxTriggerSubSectorId()
staticprivate

◆ min_chamber

const int CSCTriggerPrimitivesBuilder::min_chamber = CSCTriggerNumbering::minTriggerCscId()
staticprivate

◆ min_endcap

const int CSCTriggerPrimitivesBuilder::min_endcap = CSCDetId::minEndcapId()
staticprivate

Min and max allowed values for various CSC elements, defined in CSCDetId and CSCTriggerNumbering classes.

Definition at line 96 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), CSCTriggerPrimitivesBuilder(), and setConfigParameters().

◆ min_sector

const int CSCTriggerPrimitivesBuilder::min_sector = CSCTriggerNumbering::minTriggerSectorId()
staticprivate

◆ min_station

const int CSCTriggerPrimitivesBuilder::min_station = CSCDetId::minStationId()
staticprivate

◆ min_subsector

const int CSCTriggerPrimitivesBuilder::min_subsector = CSCTriggerNumbering::minTriggerSubSectorId()
staticprivate

◆ runME11ILT_

bool CSCTriggerPrimitivesBuilder::runME11ILT_
private

SLHC: special switch for the upgrade ME1/1 TMB

Definition at line 128 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), and CSCTriggerPrimitivesBuilder().

◆ runME11Up_

bool CSCTriggerPrimitivesBuilder::runME11Up_
private

SLHC: individual switches

Definition at line 122 of file CSCTriggerPrimitivesBuilder.h.

Referenced by CSCTriggerPrimitivesBuilder().

◆ runME21ILT_

bool CSCTriggerPrimitivesBuilder::runME21ILT_
private

SLHC: special switch for the upgrade ME2/1 TMB

Definition at line 131 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), and CSCTriggerPrimitivesBuilder().

◆ runME21Up_

bool CSCTriggerPrimitivesBuilder::runME21Up_
private

Definition at line 123 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), and CSCTriggerPrimitivesBuilder().

◆ runME31Up_

bool CSCTriggerPrimitivesBuilder::runME31Up_
private

Definition at line 124 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), and CSCTriggerPrimitivesBuilder().

◆ runME41Up_

bool CSCTriggerPrimitivesBuilder::runME41Up_
private

Definition at line 125 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), and CSCTriggerPrimitivesBuilder().

◆ tmb_

std::unique_ptr<CSCMotherboard> CSCTriggerPrimitivesBuilder::tmb_[MAX_ENDCAPS][MAX_STATIONS][MAX_SECTORS][MAX_SUBSECTORS][MAX_CHAMBERS]
private

Pointers to TMB processors for all possible chambers.

Definition at line 139 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), CSCTriggerPrimitivesBuilder(), and setConfigParameters().

◆ useClusters_

bool CSCTriggerPrimitivesBuilder::useClusters_
private

SLHC: special switch to use gem clusters

Definition at line 134 of file CSCTriggerPrimitivesBuilder.h.

Referenced by build(), and CSCTriggerPrimitivesBuilder().

CSCMotherboard::run
virtual void run(const CSCWireDigiCollection *wiredc, const CSCComparatorDigiCollection *compdc)
Definition: CSCMotherboard.cc:130
CSCTriggerPrimitivesBuilder::max_sector
static const int max_sector
Definition: CSCTriggerPrimitivesBuilder.h:101
CSCUpgradeMotherboard
Definition: CSCUpgradeMotherboard.h:35
CSCTriggerPrimitivesBuilder::m_minBX_
int m_minBX_
Definition: CSCTriggerPrimitivesBuilder.h:136
CSCTriggerPrimitivesBuilder::tmb_
std::unique_ptr< CSCMotherboard > tmb_[MAX_ENDCAPS][MAX_STATIONS][MAX_SECTORS][MAX_SUBSECTORS][MAX_CHAMBERS]
Definition: CSCTriggerPrimitivesBuilder.h:139
CSCTriggerPrimitivesBuilder::max_endcap
static const int max_endcap
Definition: CSCTriggerPrimitivesBuilder.h:97
CSCTriggerPrimitivesBuilder::useClusters_
bool useClusters_
Definition: CSCTriggerPrimitivesBuilder.h:134
CSCTriggerPrimitivesBuilder::max_chamber
static const int max_chamber
Definition: CSCTriggerPrimitivesBuilder.h:105
CSCTriggerPrimitivesBuilder::put
void put(const T &, S &, const CSCDetId &, std::string comment)
Definition: CSCTriggerPrimitivesBuilder.h:150
relativeConstraints.cham
cham
Definition: relativeConstraints.py:69
CSCTriggerPrimitivesBuilder::checkBadChambers_
bool checkBadChambers_
a flag whether to skip chambers from the bad chambers map
Definition: CSCTriggerPrimitivesBuilder.h:110
CSCMotherboard::alctProc
std::unique_ptr< CSCAnodeLCTProcessor > alctProc
Definition: CSCMotherboard.h:75
CSCTriggerPrimitivesBuilder::min_subsector
static const int min_subsector
Definition: CSCTriggerPrimitivesBuilder.h:102
CSCGEMMotherboardME21::run
void run(const CSCWireDigiCollection *wiredc, const CSCComparatorDigiCollection *compdc, const GEMPadDigiClusterCollection *gemPads) override
Definition: CSCGEMMotherboardME21.cc:38
CSCTriggerPrimitivesBuilder::max_subsector
static const int max_subsector
Definition: CSCTriggerPrimitivesBuilder.h:103
l1GtPatternGenerator_cfi.bx
bx
Definition: l1GtPatternGenerator_cfi.py:18
CSCGEMMotherboardME21::readoutLCTs
std::vector< CSCCorrelatedLCTDigi > readoutLCTs() const override
Definition: CSCGEMMotherboardME21.cc:441
CSCGEMMotherboardME11::run
void run(const CSCWireDigiCollection *wiredc, const CSCComparatorDigiCollection *compdc, const GEMPadDigiClusterCollection *gemPads) override
Definition: CSCGEMMotherboardME11.cc:55
CSCGEMMotherboardME11::readoutLCTs1a
std::vector< CSCCorrelatedLCTDigi > readoutLCTs1a() const
Definition: CSCGEMMotherboardME11.cc:420
CSCMotherboard
Definition: CSCMotherboard.h:41
CSCGEMMotherboard::setGEMGeometry
void setGEMGeometry(const GEMGeometry *g)
set CSC and GEM geometries for the matching needs
Definition: CSCGEMMotherboard.h:66
CSCTriggerPrimitivesBuilder::MAX_ENDCAPS
Definition: CSCTriggerPrimitivesBuilder.h:85
CSCMuonPortCard
Definition: CSCMuonPortCard.h:35
CSCConstants::MAX_CLCTS_PER_PROCESSOR
Definition: CSCConstants.h:67
CSCTriggerPrimitivesBuilder::m_maxBX_
int m_maxBX_
Definition: CSCTriggerPrimitivesBuilder.h:136
CSCMotherboard::clctProc
std::unique_ptr< CSCCathodeLCTProcessor > clctProc
Definition: CSCMotherboard.h:78
alignCSCRings.s
s
Definition: alignCSCRings.py:92
CSCBaseboard::setCSCGeometry
void setCSCGeometry(const CSCGeometry *g)
Definition: CSCBaseboard.cc:84
CSCTriggerPrimitivesBuilder::runME21Up_
bool runME21Up_
Definition: CSCTriggerPrimitivesBuilder.h:123
hgcalPlots.stat
stat
Definition: hgcalPlots.py:1111
CSCUpgradeMotherboard::readoutLCTs
std::vector< CSCCorrelatedLCTDigi > readoutLCTs() const override
Definition: CSCUpgradeMotherboard.cc:260
CSCGEMMotherboardME21
Definition: CSCGEMMotherboardME21.h:16
CSCTriggerPrimitivesBuilder::MAX_SUBSECTORS
Definition: CSCTriggerPrimitivesBuilder.h:85
CSCTriggerPrimitivesBuilder::min_sector
static const int min_sector
Definition: CSCTriggerPrimitivesBuilder.h:100
CSCTriggerPrimitivesBuilder::infoV
int infoV
Definition: CSCTriggerPrimitivesBuilder.h:108
OrderedSet.t
t
Definition: OrderedSet.py:90
CSCGEMMotherboard::coPadProcessor
std::unique_ptr< GEMCoPadProcessor > coPadProcessor
Definition: CSCGEMMotherboard.h:63
CSCBaseboard::getCSCName
std::string getCSCName() const
Definition: CSCBaseboard.h:33
CSCTriggerPrimitivesBuilder::MAX_CHAMBERS
Definition: CSCTriggerPrimitivesBuilder.h:85
CSCTriggerPrimitivesBuilder::disableME42_
bool disableME42_
Definition: CSCTriggerPrimitivesBuilder.h:119
CSCBadChambers::isInBadChamber
bool isInBadChamber(IndexType ichamber) const
Is the chamber with index 'ichamber' flagged as bad?
Definition: CSCBadChambers.cc:4
CSCGEMMotherboardME11::readoutLCTs1b
std::vector< CSCCorrelatedLCTDigi > readoutLCTs1b() const
Definition: CSCGEMMotherboardME11.cc:422
LogDebug
#define LogDebug(id)
Definition: MessageLogger.h:670
edm::ParameterSet
Definition: ParameterSet.h:36
edm::LogError
Definition: MessageLogger.h:183
CSCTriggerPrimitivesBuilder::runME31Up_
bool runME31Up_
Definition: CSCTriggerPrimitivesBuilder.h:124
CSCTriggerPrimitivesBuilder::runME41Up_
bool runME41Up_
Definition: CSCTriggerPrimitivesBuilder.h:125
CSCTriggerPrimitivesBuilder::isSLHC_
bool isSLHC_
Definition: CSCTriggerPrimitivesBuilder.h:113
CSCMotherboardME11::run
void run(const CSCWireDigiCollection *wiredc, const CSCComparatorDigiCollection *compdc) override
Definition: CSCMotherboardME11.cc:53
CSCConstants::MAX_ALCTS_PER_PROCESSOR
Definition: CSCConstants.h:70
CSCTriggerPrimitivesBuilder::gem_g
const GEMGeometry * gem_g
Definition: CSCTriggerPrimitivesBuilder.h:143
GEMDetId
Definition: GEMDetId.h:17
CSCDetId
Definition: CSCDetId.h:26
CSCTriggerPrimitivesBuilder::MAX_SECTORS
Definition: CSCTriggerPrimitivesBuilder.h:85
CSCTriggerPrimitivesBuilder::m_muonportcard
std::unique_ptr< CSCMuonPortCard > m_muonportcard
Definition: CSCTriggerPrimitivesBuilder.h:146
CSCMotherboardME11
Definition: CSCMotherboardME11.h:18
CSCTriggerNumbering::ringFromTriggerLabels
static int ringFromTriggerLabels(int station, int triggerCSCID)
Definition: CSCTriggerNumbering.cc:5
CSCTriggerNumbering::chamberFromTriggerLabels
static int chamberFromTriggerLabels(int TriggerSector, int TriggerSubSector, int station, int TriggerCSCID)
Definition: CSCTriggerNumbering.cc:30
itr
std::vector< std::pair< float, float > >::iterator itr
Definition: HGCDigitizer.cc:28
CSCMotherboard::readoutLCTs
virtual std::vector< CSCCorrelatedLCTDigi > readoutLCTs() const
Definition: CSCMotherboard.cc:331
CSCTriggerPrimitivesBuilder::runME11Up_
bool runME11Up_
Definition: CSCTriggerPrimitivesBuilder.h:122
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
CSCTriggerPrimitivesBuilder::MAX_STATIONS
Definition: CSCTriggerPrimitivesBuilder.h:85
comment
#define comment(par)
Definition: vmac.h:163
CSCTriggerPrimitivesBuilder::min_chamber
static const int min_chamber
Definition: CSCTriggerPrimitivesBuilder.h:104
CSCTriggerPrimitivesBuilder::csc_g
const CSCGeometry * csc_g
Definition: CSCTriggerPrimitivesBuilder.h:142
CSCTriggerPrimitivesBuilder::min_station
static const int min_station
Definition: CSCTriggerPrimitivesBuilder.h:98
relativeConstraints.ring
ring
Definition: relativeConstraints.py:68
CSCUpgradeMotherboard::run
void run(const CSCWireDigiCollection *wiredc, const CSCComparatorDigiCollection *compdc) override
Definition: CSCUpgradeMotherboard.cc:69
relativeConstraints.chamber
chamber
Definition: relativeConstraints.py:53
CSCTriggerPrimitivesBuilder::min_endcap
static const int min_endcap
Definition: CSCTriggerPrimitivesBuilder.h:96
mps_fire.result
result
Definition: mps_fire.py:303
CSCGEMMotherboardME11
Definition: CSCGEMMotherboardME11.h:16
LogTrace
#define LogTrace(id)
Definition: MessageLogger.h:671
CSCMotherboardME11::readoutLCTs1a
std::vector< CSCCorrelatedLCTDigi > readoutLCTs1a() const
Definition: CSCMotherboardME11.cc:227
CSCTriggerPrimitivesBuilder::max_station
static const int max_station
Definition: CSCTriggerPrimitivesBuilder.h:99
CSCTriggerPrimitivesBuilder::runME21ILT_
bool runME21ILT_
Definition: CSCTriggerPrimitivesBuilder.h:131
CSCMotherboardME11::readoutLCTs1b
std::vector< CSCCorrelatedLCTDigi > readoutLCTs1b() const
Definition: CSCMotherboardME11.cc:229
CSCGeometry::chamber
const CSCChamber * chamber(CSCDetId id) const
Return the chamber corresponding to given DetId.
Definition: CSCGeometry.cc:100
g
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e g
Definition: Activities.doc:4
CSCTriggerPrimitivesBuilder::runME11ILT_
bool runME11ILT_
Definition: CSCTriggerPrimitivesBuilder.h:128
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
CSCTriggerPrimitivesBuilder::disableME1a_
bool disableME1a_
Definition: CSCTriggerPrimitivesBuilder.h:116