CMS 3D CMS Logo

CSCTFSectorProcessor.h
Go to the documentation of this file.
1 
8 #ifndef CSCTrackFinder_CSCTFSectorProcessor_h
9 #define CSCTrackFinder_CSCTFSectorProcessor_h
10 
11 #include <vector>
12 #include <map>
13 #include <string>
20 
27 
29 public:
30  struct Tokens {
33  };
34 
36 
37  CSCTFSectorProcessor(const unsigned& endcap,
38  const unsigned& sector,
39  const edm::ParameterSet& pset,
40  bool tmb07,
41  const L1MuTriggerScales* scales,
43 
45  void initialize(const edm::EventSetup& c, const Tokens& tokens);
47 
49 
50  //returns 0 for normal fail, 1 for success, and -1 for exception
51  // on -1, Producer should produce empty collections for event
53 
55  std::vector<csctf::TrackStub> filteredStubs() const { return stub_vec_filtered; }
56 
58 
59  int minBX() const { return m_minBX; }
60  int maxBX() const { return m_maxBX; }
61 
63 
64  void printDisclaimer(int firmSP, int firmFA);
65 
66 private:
67  // disallow copy and assignment
68  CSCTFSectorProcessor& operator=(const CSCTFSectorProcessor& rhs) { return *this; };
70 
72 
74  unsigned m_endcap, m_sector, TMB07;
75  unsigned m_latency;
76 
77  // All parameters below are signed to allow for uninitialized (<0) state
80  int m_etawin[7], m_etamin[8], m_etamax[8];
89  int m_widePhi;
90 
91  // following parameters were moved here from the CSCTFTrackBuilder because they naturally belong here
97  int run_core;
100  unsigned int singlesTrackOutput;
102 
104 
105  CSCTriggerContainer<csc::L1Track> l1_tracks; // fully defined L1Tracks
106  CSCTriggerContainer<csctf::TrackStub> dt_stubs; // Track Stubs to be sent to the DTTF
107  std::vector<csctf::TrackStub>
108  stub_vec_filtered; // Collectin of stubs after applying kill_fiber and QualityEnable masks
109 
110  static const std::string FPGAs[5];
111 
112  std::map<std::string, CSCSectorReceiverLUT*> srLUTs_; // indexed by FPGA
115 
116  // firmware map
117  std::map<int, int> firmSP_Map;
119  bool initFail_;
120 };
121 
122 #endif
CSCTFSectorProcessor::QualityEnableME4b
int QualityEnableME4b
Definition: CSCTFSectorProcessor.h:95
CSCTFSectorProcessor::m_maxdeta12_accp
int m_maxdeta12_accp
Definition: CSCTFSectorProcessor.h:82
CSCTFSectorProcessor::QualityEnableME1e
int QualityEnableME1e
Definition: CSCTFSectorProcessor.h:92
CSCTFSectorProcessor::m_etawin
int m_etawin[7]
Definition: CSCTFSectorProcessor.h:80
CSCTFSectorProcessor::QualityEnableME1a
int QualityEnableME1a
Definition: CSCTFSectorProcessor.h:92
CSCTFSectorProcessor::maxBX
int maxBX() const
Definition: CSCTFSectorProcessor.h:60
CSCTFSectorProcessor::m_allowCLCTonly
int m_allowCLCTonly
Definition: CSCTFSectorProcessor.h:78
CSCTFSectorProcessor::m_gangedME1a
bool m_gangedME1a
Definition: CSCTFSectorProcessor.h:71
CSCTFSectorProcessor::dt_stubs
CSCTriggerContainer< csctf::TrackStub > dt_stubs
Definition: CSCTFSectorProcessor.h:106
CSCTFSectorProcessor::QualityEnableME1d
int QualityEnableME1d
Definition: CSCTFSectorProcessor.h:92
CSCTFSectorProcessor::m_maxdphi113_accp
int m_maxdphi113_accp
Definition: CSCTFSectorProcessor.h:85
CSCTFSectorProcessor::m_mindeta12_accp
int m_mindeta12_accp
Definition: CSCTFSectorProcessor.h:82
CSCTFSectorProcessor::QualityEnableME2b
int QualityEnableME2b
Definition: CSCTFSectorProcessor.h:93
CSCTFSectorProcessor::QualityEnableME2c
int QualityEnableME2c
Definition: CSCTFSectorProcessor.h:93
CSCTFSectorProcessor
KK.
Definition: CSCTFSectorProcessor.h:28
CSCTFSectorProcessor::tracks
CSCTriggerContainer< csc::L1Track > tracks() const
Definition: CSCTFSectorProcessor.h:54
CSCTFSectorProcessor::trigger_on_MB1a
int trigger_on_MB1a
Definition: CSCTFSectorProcessor.h:99
CSCTFSectorProcessor::m_maxBX
int m_maxBX
Definition: CSCTFSectorProcessor.h:79
CSCTFSectorProcessor::QualityEnableME3b
int QualityEnableME3b
Definition: CSCTFSectorProcessor.h:94
CSCTFSectorProcessor::m_mindphip
int m_mindphip
Definition: CSCTFSectorProcessor.h:81
CSCTFSectorProcessor::minBX
int minBX() const
Definition: CSCTFSectorProcessor.h:59
CSCTFSectorProcessor::m_mbaPhiOff
int m_mbaPhiOff
Definition: CSCTFSectorProcessor.h:88
makeMuonMisalignmentScenario.endcap
endcap
Definition: makeMuonMisalignmentScenario.py:320
CSCTFSectorProcessor::stub_vec_filtered
std::vector< csctf::TrackStub > stub_vec_filtered
Definition: CSCTFSectorProcessor.h:108
CSCTFSectorProcessor::FPGAs
static const std::string FPGAs[5]
Definition: CSCTFSectorProcessor.h:110
CSCTFSectorProcessor::run_core
int run_core
Definition: CSCTFSectorProcessor.h:97
CSCTFSectorProcessor::m_maxdeta113_accp
int m_maxdeta113_accp
Definition: CSCTFSectorProcessor.h:85
CSCTFSectorProcessor::l1_tracks
CSCTriggerContainer< csc::L1Track > l1_tracks
Definition: CSCTFSectorProcessor.h:105
CSCTFSPCoreLogic.h
CSCTFSectorProcessor::m_endcap
unsigned m_endcap
Definition: CSCTFSectorProcessor.h:74
CSCTFSectorProcessor::isCoreVerbose
bool isCoreVerbose
Definition: CSCTFSectorProcessor.h:118
CSCTFSectorProcessor::m_allowALCTonly
int m_allowALCTonly
Definition: CSCTFSectorProcessor.h:78
CSCTFSectorProcessor::m_mindeta112_accp
int m_mindeta112_accp
Definition: CSCTFSectorProcessor.h:84
CSCTFSectorProcessor::trigger_on_MB1d
int trigger_on_MB1d
Definition: CSCTFSectorProcessor.h:99
CSCTFSectorProcessor::QualityEnableME1f
int QualityEnableME1f
Definition: CSCTFSectorProcessor.h:92
L1MuTriggerPtScale
Definition: L1MuTriggerPtScale.h:33
CSCTFSectorProcessor::dtStubs
CSCTriggerContainer< csctf::TrackStub > dtStubs() const
Definition: CSCTFSectorProcessor.h:57
CSCTFSPCoreLogic
Definition: CSCTFSPCoreLogic.h:34
CSCTFSectorProcessor::QualityEnableME3c
int QualityEnableME3c
Definition: CSCTFSectorProcessor.h:94
CSCTFSectorProcessor::readParameters
void readParameters(const edm::ParameterSet &pset)
Definition: CSCTFSectorProcessor.cc:599
CSCTFSectorProcessor::QualityEnableME4a
int QualityEnableME4a
Definition: CSCTFSectorProcessor.h:95
CSCTFSectorProcessor::m_straightp
int m_straightp
Definition: CSCTFSectorProcessor.h:87
CSCTFSectorProcessor::TMB07
unsigned TMB07
Definition: CSCTFSectorProcessor.h:74
CSCTFSectorProcessor::m_mbbPhiOff
int m_mbbPhiOff
Definition: CSCTFSectorProcessor.h:88
CSCTFSectorProcessor::m_mindphip_halo
int m_mindphip_halo
Definition: CSCTFSectorProcessor.h:86
CSCTFSectorProcessor::singlesTrackOutput
unsigned int singlesTrackOutput
Definition: CSCTFSectorProcessor.h:100
CSCTFSectorProcessor::Tokens::config
edm::ESGetToken< L1MuCSCTFConfiguration, L1MuCSCTFConfigurationRcd > config
Definition: CSCTFSectorProcessor.h:32
CSCTFSectorProcessor::run
int run(const CSCTriggerContainer< csctf::TrackStub > &)
Definition: CSCTFSectorProcessor.cc:689
CSCTFSectorProcessor::operator=
CSCTFSectorProcessor & operator=(const CSCTFSectorProcessor &rhs)
Definition: CSCTFSectorProcessor.h:68
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
CSCTFSectorProcessor::printDisclaimer
void printDisclaimer(int firmSP, int firmFA)
Definition: CSCTFSectorProcessor.cc:1121
CSCTFSectorProcessor::m_curvedp
int m_curvedp
Definition: CSCTFSectorProcessor.h:87
CSCTFSectorProcessor::QualityEnableME3a
int QualityEnableME3a
Definition: CSCTFSectorProcessor.h:94
CSCTFSectorProcessor::kill_fiber
int kill_fiber
Definition: CSCTFSectorProcessor.h:96
L1MuCSCTFConfiguration.h
edm::ParameterSet
Definition: ParameterSet.h:47
CSCTFSectorProcessor::trigger_on_ME3
int trigger_on_ME3
Definition: CSCTFSectorProcessor.h:98
CSCTFSectorProcessor::m_preTrigger
int m_preTrigger
Definition: CSCTFSectorProcessor.h:78
CSCTFSectorProcessor::m_firmSP
int m_firmSP
Definition: CSCTFSectorProcessor.h:103
L1CSCTrackCollection.h
CSCTriggerContainer.h
CSCTFSectorProcessor::m_mindetap
int m_mindetap
Definition: CSCTFSectorProcessor.h:81
CSCTFSectorProcessor::Tokens::ptLUT
CSCTFPtLUT::Tokens ptLUT
Definition: CSCTFSectorProcessor.h:31
CSCTFSectorProcessor::m_maxdeta13_accp
int m_maxdeta13_accp
Definition: CSCTFSectorProcessor.h:83
CSCTFSectorProcessor::m_etamax
int m_etamax[8]
Definition: CSCTFSectorProcessor.h:80
CSCTFSectorProcessor::srLUTs_
std::map< std::string, CSCSectorReceiverLUT * > srLUTs_
Definition: CSCTFSectorProcessor.h:112
CSCTFSectorProcessor::~CSCTFSectorProcessor
~CSCTFSectorProcessor()
Definition: CSCTFSectorProcessor.cc:672
CSCTFSectorProcessor::consumes
static Tokens consumes(const edm::ParameterSet &pset, edm::ConsumesCollector iC)
Definition: CSCTFSectorProcessor.cc:13
CSCTFSectorProcessor::initFail_
bool initFail_
Definition: CSCTFSectorProcessor.h:119
CSCTFSectorProcessor::m_maxdeta112_accp
int m_maxdeta112_accp
Definition: CSCTFSectorProcessor.h:84
CSCTFSectorProcessor::ptLUT_
CSCTFPtLUT * ptLUT_
Definition: CSCTFSectorProcessor.h:114
CSCTFSectorProcessor::m_firmVM
int m_firmVM
Definition: CSCTFSectorProcessor.h:103
CSCTFSectorProcessor::initializeFromPSet
bool initializeFromPSet
Definition: CSCTFSectorProcessor.h:73
edm::EventSetup
Definition: EventSetup.h:58
ptScale
const std::vector< double > ptScale
Definition: Utilities.cc:33
L1MuTriggerScales
Definition: L1MuTriggerScales.h:33
CSCTFSectorProcessor::m_maxdphi13_accp
int m_maxdphi13_accp
Definition: CSCTFSectorProcessor.h:83
edm::ESGetToken< L1MuCSCTFConfiguration, L1MuCSCTFConfigurationRcd >
CSCTFSectorProcessor::m_widePhi
int m_widePhi
Definition: CSCTFSectorProcessor.h:89
CSCTFSectorProcessor::m_firmDD
int m_firmDD
Definition: CSCTFSectorProcessor.h:103
CSCTFSectorProcessor::m_minBX
int m_minBX
Definition: CSCTFSectorProcessor.h:79
CSCTFSectorProcessor::CSCTFSectorProcessor
CSCTFSectorProcessor(const CSCTFSectorProcessor &par)
Definition: CSCTFSectorProcessor.h:69
CSCTFSectorProcessor::m_firmFA
int m_firmFA
Definition: CSCTFSectorProcessor.h:103
CSCTFSectorProcessor::trigger_on_ME4
int trigger_on_ME4
Definition: CSCTFSectorProcessor.h:98
CSCTFSectorProcessor::QualityEnableME4c
int QualityEnableME4c
Definition: CSCTFSectorProcessor.h:95
CSCTFSectorProcessor::m_mindeta113_accp
int m_mindeta113_accp
Definition: CSCTFSectorProcessor.h:85
CSCTFSectorProcessor::m_latency
unsigned m_latency
Definition: CSCTFSectorProcessor.h:75
CSCTFSectorProcessor::CSCTFSectorProcessor
CSCTFSectorProcessor(const unsigned &endcap, const unsigned &sector, const edm::ParameterSet &pset, bool tmb07, const L1MuTriggerScales *scales, const L1MuTriggerPtScale *ptScale)
Definition: CSCTFSectorProcessor.cc:22
CSCTriggerContainer< csctf::TrackStub >
CSCTFSectorProcessor::m_maxdphi12_accp
int m_maxdphi12_accp
Definition: CSCTFSectorProcessor.h:82
CSCTFPtLUT
KK.
Definition: CSCTFPtLUT.h:19
EventSetup.h
CSCTFSectorProcessor::m_bxa_depth
int m_bxa_depth
Definition: CSCTFSectorProcessor.h:78
CSCTFSectorProcessor::m_sector
unsigned m_sector
Definition: CSCTFSectorProcessor.h:74
CSCTFSectorProcessor::core_
CSCTFSPCoreLogic * core_
Definition: CSCTFSectorProcessor.h:113
CSCTFSectorProcessor::trigger_on_ME2
int trigger_on_ME2
Definition: CSCTFSectorProcessor.h:98
CSCTFSectorProcessor::QualityEnableME2a
int QualityEnableME2a
Definition: CSCTFSectorProcessor.h:93
CSCTFSectorProcessor::m_mindetap_halo
int m_mindetap_halo
Definition: CSCTFSectorProcessor.h:86
L1MuCSCTFConfigurationRcd.h
CSCTFSectorProcessor::filteredStubs
std::vector< csctf::TrackStub > filteredStubs() const
Definition: CSCTFSectorProcessor.h:55
CSCTFSectorProcessor::trigger_on_ME1a
int trigger_on_ME1a
Definition: CSCTFSectorProcessor.h:98
CSCTFSectorProcessor::m_mindeta13_accp
int m_mindeta13_accp
Definition: CSCTFSectorProcessor.h:83
ParameterSet.h
c
auto & c
Definition: CAHitNtupletGeneratorKernelsImpl.h:46
CSCTFSectorProcessor::QualityEnableME1b
int QualityEnableME1b
Definition: CSCTFSectorProcessor.h:92
TrackStub.h
CSCTFSectorProcessor::m_maxdphi112_accp
int m_maxdphi112_accp
Definition: CSCTFSectorProcessor.h:84
edm::ConsumesCollector
Definition: ConsumesCollector.h:45
CSCTFSectorProcessor::rescaleSinglesPhi
int rescaleSinglesPhi
Definition: CSCTFSectorProcessor.h:101
CSCTFPtLUT::Tokens
Definition: CSCTFPtLUT.h:21
CSCSectorReceiverLUT.h
CSCTFSectorProcessor::Tokens
Definition: CSCTFSectorProcessor.h:30
CSCTFSectorProcessor::initialize
void initialize(const edm::EventSetup &c, const Tokens &tokens)
KK.
Definition: CSCTFSectorProcessor.cc:188
muonDTDigis_cfi.pset
pset
Definition: muonDTDigis_cfi.py:27
CSCTFSectorProcessor::QualityEnableME1c
int QualityEnableME1c
Definition: CSCTFSectorProcessor.h:92
CSCTFSectorProcessor::m_etamin
int m_etamin[8]
Definition: CSCTFSectorProcessor.h:80
CSCTFSectorProcessor::trigger_on_ME1b
int trigger_on_ME1b
Definition: CSCTFSectorProcessor.h:98
CSCTFPtLUT.h
CSCTFSectorProcessor::firmSP_Map
std::map< int, int > firmSP_Map
Definition: CSCTFSectorProcessor.h:117