L1Trigger
CSCTriggerPrimitives
interface
LCTQualityAssignment.h
Go to the documentation of this file.
1
#ifndef L1Trigger_CSCTriggerPrimitives_LCTQualityAssignment_h
2
#define L1Trigger_CSCTriggerPrimitives_LCTQualityAssignment_h
3
16
#include "
L1Trigger/CSCTriggerPrimitives/interface/CSCBaseboard.h
"
17
#include "
DataFormats/CSCDigi/interface/CSCCLCTDigi.h
"
18
#include "
DataFormats/CSCDigi/interface/CSCALCTDigi.h
"
19
#include "
L1Trigger/CSCTriggerPrimitives/interface/GEMInternalCluster.h
"
20
21
class
LCTQualityAssignment
:
public
CSCBaseboard
{
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,
28
CLCT_LAYER_TRIGGER
= 3,
29
LOW_QUALITY
= 4,
30
MARGINAL_ANODE_CATHODE
= 5,
31
HQ_ANODE_MARGINAL_CATHODE
= 6,
32
HQ_CATHODE_MARGINAL_ANODE
= 7,
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,
52
ALCT_CLCT_1GEM_CSCBend
= 4,
53
ALCT_CLCT_1GEM_GEMCSCBend
= 5,
54
ALCT_CLCT_2GEM_CSCBend
= 6,
55
ALCT_CLCT_2GEM_GEMCSCBend
= 7
56
};
57
58
// constructor
59
LCTQualityAssignment
(
unsigned
endcap
,
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
93
bool
assignGEMCSCBending_
;
94
bool
runILT_
;
95
};
96
97
#endif
LCTQualityAssignment
Definition:
LCTQualityAssignment.h:21
LCTQualityAssignment::LCT_QualityRun2::CLCT_LAYER_TRIGGER
CSCALCTDigi
Definition:
CSCALCTDigi.h:17
LCTQualityAssignment::LCT_QualityRun2::HQ_PATTERN_4_5
LCTQualityAssignment::LCT_QualityRun3GEM::INVALID
LCTQualityAssignment::LCT_QualityRun2::HQ_PATTERN_6_7
LCTQualityAssignment::LCT_QualityRun3::INVALID
LCTQualityAssignment::LCT_QualityRun2::MARGINAL_ANODE_CATHODE
LCTQualityAssignment::LCT_QualityRun2::HQ_PATTERN_10
LCTQualityAssignment::LCT_QualityRun3GEM::ALCT_CLCT_2GEM_CSCBend
LCTQualityAssignment::LCT_QualityRun2::NO_CLCT
GEMInternalCluster.h
LCTQualityAssignment::findQuality
unsigned findQuality(const CSCALCTDigi &aLCT, const CSCCLCTDigi &cLCT) const
Definition:
LCTQualityAssignment.cc:14
LCTQualityAssignment::LCT_QualityRun3GEM::CLCT_2GEM
haddnano.cl
cl
Definition:
haddnano.py:49
LCTQualityAssignment::findQualityRun3
unsigned findQualityRun3(const CSCALCTDigi &aLCT, const CSCCLCTDigi &cLCT) const
Definition:
LCTQualityAssignment.cc:156
LCTQualityAssignment::LCT_QualityRun2::LOW_QUALITY
LCTQualityAssignment::assignGEMCSCBending_
bool assignGEMCSCBending_
Definition:
LCTQualityAssignment.h:93
LCTQualityAssignment::LCT_QualityRun2::HQ_PATTERN_8_9
CSCALCTDigi.h
LCTQualityAssignment::LCT_QualityRun2::HQ_ANODE_MARGINAL_CATHODE
LCTQualityAssignment::LCT_QualityRun3GEM::ALCT_2GEM
createfilelist.int
int
Definition:
createfilelist.py:10
LCTQualityAssignment::LCT_QualityRun2::HQ_CATHODE_MARGINAL_ANODE
LCTQualityAssignment::LCT_QualityRun3::LowQ
CSCBaseboard.h
LCTQualityAssignment::LCT_QualityRun3::MedQ
LCTQualityAssignment::LCT_QualityRun2::INVALID
CSCCLCTDigi
Definition:
CSCCLCTDigi.h:17
LCTQualityAssignment::runILT_
bool runILT_
Definition:
LCTQualityAssignment.h:94
LCTQualityAssignment::LCT_QualityRun3::HighQ
LCTQualityAssignment::LCT_QualityRun2::HQ_RESERVED_1
LCTQualityAssignment::LCT_QualityRun2::HQ_ACCEL_ALCT
relativeConstraints.chamber
chamber
Definition:
relativeConstraints.py:53
LCTQualityAssignment::LCT_QualityRun2::NO_ALCT
LCTQualityAssignment::LCT_QualityRun3GEM::ALCT_CLCT_1GEM_CSCBend
LCTQualityAssignment::findQualityGEMv1
unsigned findQualityGEMv1(const CSCCLCTDigi &, const GEMInternalCluster &cl) const
Definition:
LCTQualityAssignment.cc:184
LCTQualityAssignment::~LCTQualityAssignment
~LCTQualityAssignment() override
Definition:
LCTQualityAssignment.h:67
LCTQualityAssignment::LCT_QualityRun3GEM::ALCT_CLCT
LCTQualityAssignment::findQualityGEMv2
unsigned findQualityGEMv2(const CSCALCTDigi &, const CSCCLCTDigi &, const GEMInternalCluster &cl) const
Definition:
LCTQualityAssignment.cc:315
LCTQualityAssignment::LCT_QualityRun2::HQ_PATTERN_2_3
makeMuonMisalignmentScenario.endcap
endcap
Definition:
makeMuonMisalignmentScenario.py:320
LCTQualityAssignment::LCT_QualityRun3
LCT_QualityRun3
Definition:
LCTQualityAssignment.h:44
CSCBaseboard
Definition:
CSCBaseboard.h:13
LCTQualityAssignment::LCT_QualityRun2::HQ_RESERVED_2
LCTQualityAssignment::LCT_QualityRun3GEM
LCT_QualityRun3GEM
Definition:
LCTQualityAssignment.h:47
LCTQualityAssignment::findQualityRun2
unsigned findQualityRun2(const CSCALCTDigi &aLCT, const CSCCLCTDigi &cLCT) const
Definition:
LCTQualityAssignment.cc:72
GEMInternalCluster
Definition:
GEMInternalCluster.h:18
LCTQualityAssignment::LCTQualityAssignment
LCTQualityAssignment(unsigned endcap, unsigned station, unsigned sector, unsigned subsector, unsigned chamber, const edm::ParameterSet &conf)
Definition:
LCTQualityAssignment.cc:3
edm::ParameterSet
Definition:
ParameterSet.h:47
CSCCLCTDigi.h
LCTQualityAssignment::LCT_QualityRun2
LCT_QualityRun2
Definition:
LCTQualityAssignment.h:24
LCTQualityAssignment::LCT_QualityRun3GEM::ALCT_CLCT_1GEM_GEMCSCBend
relativeConstraints.station
station
Definition:
relativeConstraints.py:67
LCTQualityAssignment::setGEMCSCBending
void setGEMCSCBending(const bool setBend)
Definition:
LCTQualityAssignment.h:70
LCTQualityAssignment::LCT_QualityRun3GEM::ALCT_CLCT_2GEM_GEMCSCBend
Generated for CMSSW Reference Manual by
1.8.14