CMS 3D CMS Logo

LCTQualityAssignment.h
Go to the documentation of this file.
1 #ifndef L1Trigger_CSCTriggerPrimitives_LCTQualityAssignment_h
2 #define L1Trigger_CSCTriggerPrimitives_LCTQualityAssignment_h
3 
20 
22 public:
23  // 4-bit LCT quality number. Made by TMB lookup tables and used for MPC sorting.
24  enum class LCT_QualityRun2 : unsigned int {
25  INVALID = 0,
26  NO_CLCT = 1,
27  NO_ALCT = 2,
29  LOW_QUALITY = 4,
33  HQ_ACCEL_ALCT = 8,
34  HQ_RESERVED_1 = 9,
35  HQ_RESERVED_2 = 10,
36  HQ_PATTERN_2_3 = 11,
37  HQ_PATTERN_4_5 = 12,
38  HQ_PATTERN_6_7 = 13,
39  HQ_PATTERN_8_9 = 14,
40  HQ_PATTERN_10 = 15
41  };
42 
43  // See DN-20-016
44  enum class LCT_QualityRun3 : unsigned int { INVALID = 0, LowQ = 1, MedQ = 2, HighQ = 3 };
45 
46  // See DN-20-016
47  enum class LCT_QualityRun3GEM : unsigned int {
48  INVALID = 0,
49  ALCT_2GEM = 1,
50  CLCT_2GEM = 2,
51  ALCT_CLCT = 3,
56  };
57 
58  // constructor
60  unsigned station,
61  unsigned sector,
62  unsigned subsector,
63  unsigned chamber,
64  const edm::ParameterSet& conf);
65 
67  ~LCTQualityAssignment() override {}
68 
69  // setter
70  void setGEMCSCBending(const bool setBend) { assignGEMCSCBending_ = setBend; }
71 
72  // quality for all LCTs in Run-1/2 or Run-3
73  unsigned findQuality(const CSCALCTDigi& aLCT, const CSCCLCTDigi& cLCT) const;
74  unsigned findQuality(const CSCALCTDigi& aLCT, const CSCCLCTDigi& cLCT, const GEMInternalCluster& cl) const;
75  unsigned findQuality(const CSCALCTDigi& aLCT, const GEMInternalCluster& cl) const;
76  unsigned findQuality(const CSCCLCTDigi& cLCT, const GEMInternalCluster& cl) const;
77 
78 private:
79  // quality for all LCTs in Run-1 and Run-2 (CCLUT off)
80  unsigned findQualityRun2(const CSCALCTDigi& aLCT, const CSCCLCTDigi& cLCT) const;
81 
82  // quality for non-ME1/1 LCTs in Run-3 without GEMs (CCLUT on)
83  unsigned findQualityRun3(const CSCALCTDigi& aLCT, const CSCCLCTDigi& cLCT) const;
84 
85  // quality for LCTs in Run-3 with GEMs (CCLUT off)
86  // old-style to be compatible with EMTF Run-2
87  unsigned findQualityGEMv1(const CSCCLCTDigi&, const GEMInternalCluster& cl) const;
88  unsigned findQualityGEMv1(const CSCALCTDigi&, const CSCCLCTDigi&, const GEMInternalCluster& cl) const;
89 
90  // quality for LCTs in Run-3 with GEMs (CCLUT on(
91  unsigned findQualityGEMv2(const CSCALCTDigi&, const CSCCLCTDigi&, const GEMInternalCluster& cl) const;
92 
94  bool runILT_;
95 };
96 
97 #endif
LCTQualityAssignment::~LCTQualityAssignment
~LCTQualityAssignment() override
Definition: LCTQualityAssignment.h:67
LCTQualityAssignment::LCT_QualityRun3GEM::ALCT_CLCT_2GEM_CSCBend
LCTQualityAssignment::LCT_QualityRun2
LCT_QualityRun2
Definition: LCTQualityAssignment.h:24
LCTQualityAssignment::LCT_QualityRun2::HQ_PATTERN_6_7
LCTQualityAssignment::LCT_QualityRun2::HQ_PATTERN_2_3
relativeConstraints.station
station
Definition: relativeConstraints.py:67
LCTQualityAssignment::findQualityGEMv2
unsigned findQualityGEMv2(const CSCALCTDigi &, const CSCCLCTDigi &, const GEMInternalCluster &cl) const
Definition: LCTQualityAssignment.cc:315
LCTQualityAssignment::LCT_QualityRun2::HQ_CATHODE_MARGINAL_ANODE
makeMuonMisalignmentScenario.endcap
endcap
Definition: makeMuonMisalignmentScenario.py:320
LCTQualityAssignment::LCT_QualityRun2::HQ_PATTERN_4_5
GEMInternalCluster.h
CSCCLCTDigi
Definition: CSCCLCTDigi.h:17
GetRecoTauVFromDQM_MC_cff.cl
cl
Definition: GetRecoTauVFromDQM_MC_cff.py:38
LCTQualityAssignment::LCT_QualityRun2::HQ_ANODE_MARGINAL_CATHODE
LCTQualityAssignment::LCT_QualityRun2::LOW_QUALITY
LCTQualityAssignment::findQuality
unsigned findQuality(const CSCALCTDigi &aLCT, const CSCCLCTDigi &cLCT) const
Definition: LCTQualityAssignment.cc:14
LCTQualityAssignment::LCT_QualityRun2::CLCT_LAYER_TRIGGER
CSCALCTDigi.h
LCTQualityAssignment::LCT_QualityRun2::MARGINAL_ANODE_CATHODE
LCTQualityAssignment::LCT_QualityRun3GEM::ALCT_CLCT
LCTQualityAssignment::LCT_QualityRun3::MedQ
LCTQualityAssignment::LCT_QualityRun3GEM::ALCT_CLCT_2GEM_GEMCSCBend
LCTQualityAssignment::LCT_QualityRun2::HQ_PATTERN_8_9
LCTQualityAssignment::LCT_QualityRun3GEM::CLCT_2GEM
LCTQualityAssignment::LCT_QualityRun2::NO_CLCT
LCTQualityAssignment::LCT_QualityRun2::HQ_RESERVED_2
LCTQualityAssignment::runILT_
bool runILT_
Definition: LCTQualityAssignment.h:94
LCTQualityAssignment::LCT_QualityRun3::INVALID
LCTQualityAssignment::LCT_QualityRun2::HQ_ACCEL_ALCT
LCTQualityAssignment
Definition: LCTQualityAssignment.h:21
edm::ParameterSet
Definition: ParameterSet.h:47
CSCBaseboard
Definition: CSCBaseboard.h:14
LCTQualityAssignment::setGEMCSCBending
void setGEMCSCBending(const bool setBend)
Definition: LCTQualityAssignment.h:70
LCTQualityAssignment::findQualityRun2
unsigned findQualityRun2(const CSCALCTDigi &aLCT, const CSCCLCTDigi &cLCT) const
Definition: LCTQualityAssignment.cc:72
LCTQualityAssignment::findQualityRun3
unsigned findQualityRun3(const CSCALCTDigi &aLCT, const CSCCLCTDigi &cLCT) const
Definition: LCTQualityAssignment.cc:156
createfilelist.int
int
Definition: createfilelist.py:10
LCTQualityAssignment::LCT_QualityRun2::NO_ALCT
LCTQualityAssignment::LCT_QualityRun2::HQ_PATTERN_10
LCTQualityAssignment::LCT_QualityRun3GEM::ALCT_2GEM
LCTQualityAssignment::LCT_QualityRun3GEM::INVALID
LCTQualityAssignment::LCT_QualityRun3GEM::ALCT_CLCT_1GEM_CSCBend
LCTQualityAssignment::LCT_QualityRun3GEM::ALCT_CLCT_1GEM_GEMCSCBend
LCTQualityAssignment::LCT_QualityRun3::HighQ
LCTQualityAssignment::findQualityGEMv1
unsigned findQualityGEMv1(const CSCCLCTDigi &, const GEMInternalCluster &cl) const
Definition: LCTQualityAssignment.cc:184
LCTQualityAssignment::LCT_QualityRun3::LowQ
LCTQualityAssignment::LCT_QualityRun3
LCT_QualityRun3
Definition: LCTQualityAssignment.h:44
CSCALCTDigi
Definition: CSCALCTDigi.h:17
LCTQualityAssignment::LCT_QualityRun2::INVALID
CSCCLCTDigi.h
relativeConstraints.chamber
chamber
Definition: relativeConstraints.py:53
LCTQualityAssignment::LCT_QualityRun2::HQ_RESERVED_1
GEMInternalCluster
Definition: GEMInternalCluster.h:18
LCTQualityAssignment::LCT_QualityRun3GEM
LCT_QualityRun3GEM
Definition: LCTQualityAssignment.h:47
LCTQualityAssignment::LCTQualityAssignment
LCTQualityAssignment(unsigned endcap, unsigned station, unsigned sector, unsigned subsector, unsigned chamber, const edm::ParameterSet &conf)
Definition: LCTQualityAssignment.cc:3
LCTQualityAssignment::assignGEMCSCBending_
bool assignGEMCSCBending_
Definition: LCTQualityAssignment.h:93
CSCBaseboard.h