CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
L1MuGMTConfig.h
Go to the documentation of this file.
1 //-------------------------------------------------
2 //
6 //
7 // $Date: 2008/11/05 17:24:58 $
8 // $Revision: 1.12 $
9 //
10 // Author :
11 // N. Neumeister CERN EP
12 //
13 // Migrated to CMSSW:
14 // I. Mikulec
15 //
16 //--------------------------------------------------
17 #ifndef L1TriggerGlobalMuonTrigger_L1MuGMTConfig_h
18 #define L1TriggerGlobalMuonTrigger_L1MuGMTConfig_h
19 
20 //---------------
21 // C++ Headers --
22 //---------------
23 
24 #include <string>
25 
26 //----------------------
27 // Base Class Headers --
28 //----------------------
29 
30 //------------------------------------
31 // Collaborating Class Declarations --
32 //------------------------------------
34 
35 namespace edm {
36  class InputTag;
37 }
38 
48 
49 class L1MuGMTEtaLUT;
61 class L1MuGMTLFPhiProLUT;
62 class L1MuGMTLFPtMixLUT;
71 class L1MuGMTPhiLUT;
72 
73 class L1MuGMTScales;
74 class L1MuTriggerScales;
75 class L1MuTriggerPtScale;
76 class L1MuGMTParameters;
77 class L1MuGMTChannelMask;
78 
79 class L1CaloGeometry ;
80 
81 // ---------------------
82 // -- Class Interface --
83 // ---------------------
84 
85 
87 
88  public:
89 
90  static const unsigned int MAXRPC = 8, MAXRPCbarrel = 4, MAXRPCendcap = 4,
91  MAXDTBX = 4, MAXCSC = 4 ;
92 
93  static const unsigned int MaxMuons = 4;
94 
96  L1MuGMTConfig(const edm::ParameterSet& ps);
97 
99  virtual ~L1MuGMTConfig();
100 
106 
107  static bool Debug() { return m_debug; }
108  static bool Debug(int level) { return ( m_debug && m_dbgLevel >= level ); }
109 
110  static void setDebugLevel(int level) { m_dbgLevel = level; }
111  static int getDebugLevel() { return m_dbgLevel; }
112 
113  static int getBxMin() { return m_BxMin; }
114  static int getBxMax() { return m_BxMax; }
115 
116  static int getBxMinRo() { return m_BxMinRo; }
117  static int getBxMaxRo() { return m_BxMaxRo; }
118 
119  static float getEtaWeightBarrel() { return m_EtaWeight_barrel; }
120  static float getPhiWeightBarrel() { return m_PhiWeight_barrel; }
122  static float getEtaWeightEndcap() { return m_EtaWeight_endcap; }
123  static float getPhiWeightEndcap() { return m_PhiWeight_endcap; }
125  static float getEtaWeightCOU() { return m_EtaWeight_COU; }
126  static float getPhiWeightCOU() { return m_PhiWeight_COU; }
127  static float getEtaPhiThresholdCOU() { return m_EtaPhiThreshold_COU; }
128 
129  static bool getCaloTrigger() { return m_CaloTrigger; }
132 
134  static bool getDoOvlRpcAnd() { return m_DoOvlRpcAnd; }
135 
136  static bool getPropagatePhi() { return m_PropagatePhi; }
137 
139 
140  // Register getters
150 
151  // LUT getters
152  static L1MuGMTEtaLUT* getEtaLUT() { return m_EtaLUT; }
174  static L1MuGMTPhiLUT* getPhiLUT() { return m_PhiLUT; }
175 
176  void setGMTScales(const L1MuGMTScales* gmtscales) { m_GMTScales = gmtscales; }
177  static const L1MuGMTScales* getGMTScales() { return m_GMTScales; }
178 
179  void setCaloGeom( const L1CaloGeometry* caloGeom ) { m_caloGeom = caloGeom ; }
180  static const L1CaloGeometry* getCaloGeom() { return m_caloGeom ; }
181 
182  void setTriggerScales(const L1MuTriggerScales* trigscales) { m_TriggerScales = trigscales; }
184 
185  void setTriggerPtScale(const L1MuTriggerPtScale* trigptscale) { m_TriggerPtScale = trigptscale; }
187 
188  void setGMTParams(const L1MuGMTParameters* gmtparams) { m_GMTParams = gmtparams; }
189  static const L1MuGMTParameters* getGMTParams() { return m_GMTParams; }
190 
191  void setGMTChanMask(const L1MuGMTChannelMask* gmtchanmask) { m_GMTChanMask = gmtchanmask; }
192  static const L1MuGMTChannelMask* getGMTChanMask() { return m_GMTChanMask; }
193 
194 
195  static const edm::ParameterSet* getParameterSet() { return m_ps; }
196 
197  void createLUTsRegs();
198  void clearLUTsRegs();
199  void dumpLUTs(std::string dir);
200  void dumpRegs(std::string dir);
201 
202  void setDefaults();
203 
204  private:
205 
206  static const edm::ParameterSet* m_ps;
209 
215 
216  static bool m_debug; // debug flag
217  static int m_dbgLevel; // debug level
218 
219  static int m_BxMin;
220  static int m_BxMax;
221 
222  static int m_BxMinRo;
223  static int m_BxMaxRo;
224 
225  static float m_EtaWeight_barrel;
226  static float m_PhiWeight_barrel;
228  static float m_EtaWeight_endcap;
229  static float m_PhiWeight_endcap;
231  static float m_EtaWeight_COU;
232  static float m_PhiWeight_COU;
233  static float m_EtaPhiThreshold_COU;
234 
235  static bool m_CaloTrigger;
238 
239  static bool m_DoOvlRpcAnd;
240 
241  static bool m_PropagatePhi;
242 
243  static unsigned m_VersionSortRankEtaQLUT;
244 
245  // Register pointers
255 
256  // LUT pointers
280 
281  // scales pointers
282  static const L1MuGMTScales* m_GMTScales;
285 
286  static const L1CaloGeometry* m_caloGeom ;
287 };
288 
289 #endif
290 
291 
static L1MuGMTLFSortRankEtaPhiLUT * m_LFSortRankEtaPhiLUT
static edm::InputTag m_CSCInputTag
static L1MuGMTLFDeltaEtaLUT * m_LFDeltaEtaLUT
static float m_EtaPhiThreshold_COU
void setGMTChanMask(const L1MuGMTChannelMask *gmtchanmask)
static L1MuGMTRegMMConfigISO * getRegMMConfigISO()
static L1MuGMTRegMMConfigCharge * m_RegMMConfigCharge
static L1MuGMTEtaLUT * getEtaLUT()
static L1MuGMTRegMMConfigCharge * getRegMMConfigCharge()
static L1MuGMTLFSortRankEtaPhiLUT * getLFSortRankEtaPhiLUT()
static L1MuGMTMIAUPhiPro2LUT * m_MIAUPhiPro2LUT
static edm::InputTag m_RPCbInputTag
static int m_BxMax
static L1MuGMTMIAUPhiPro2LUT * getMIAUPhiPro2LUT()
static bool m_DoOvlRpcAnd
static int m_IsolationCellSizePhi
GMT Merge Method Config Register Phi.
Definition: L1MuGMTReg.h:140
static L1MuGMTLFMergeRankPtQLUT * getLFMergeRankPtQLUT()
static edm::InputTag getRPCfInputTag()
void setTriggerPtScale(const L1MuTriggerPtScale *trigptscale)
static L1MuGMTPhiLUT * getPhiLUT()
static edm::InputTag getRPCbInputTag()
static L1MuGMTRegMMConfigEta * getRegMMConfigEta()
static L1MuGMTLFSortRankCombineLUT * m_LFSortRankCombineLUT
static const L1MuTriggerScales * m_TriggerScales
void dumpRegs(std::string dir)
static const L1CaloGeometry * getCaloGeom()
static L1MuGMTEtaLUT * m_EtaLUT
static float getPhiWeightEndcap()
static bool m_CaloTrigger
static float getEtaWeightEndcap()
static int m_dbgLevel
static bool getCaloTrigger()
static float m_PhiWeight_barrel
static L1MuGMTPhiLUT * m_PhiLUT
static int m_IsolationCellSizeEta
static L1MuGMTLFMatchQualLUT * getLFMatchQualLUT()
static L1MuGMTLFMergeRankEtaQLUT * m_LFMergeRankEtaQLUT
static L1MuGMTLFMatchQualLUT * m_LFMatchQualLUT
static float getEtaPhiThresholdEndcap()
static L1MuGMTRegMMConfigISO * m_RegMMConfigISO
GMT Merge Method Config Register Charge.
Definition: L1MuGMTReg.h:170
static void setDebugLevel(int level)
static L1MuGMTLFOvlEtaConvLUT * getLFOvlEtaConvLUT()
static L1MuGMTMIAUEtaConvLUT * m_MIAUEtaConvLUT
GMT Merge Method Config Register ISO.
Definition: L1MuGMTReg.h:228
virtual ~L1MuGMTConfig()
destructor
static L1MuGMTLFDeltaEtaLUT * getLFDeltaEtaLUT()
static L1MuGMTMIAUEtaConvLUT * getMIAUEtaConvLUT()
static L1MuGMTLFDisableHotLUT * m_LFDisableHotLUT
void setGMTScales(const L1MuGMTScales *gmtscales)
static bool getPropagatePhi()
static const L1MuTriggerPtScale * m_TriggerPtScale
static L1MuGMTRegMMConfigPhi * m_RegMMConfigPhi
static bool Debug()
static float m_EtaWeight_endcap
static L1MuGMTRegMMConfigSRK * getRegMMConfigSRK()
static const L1MuGMTChannelMask * m_GMTChanMask
static unsigned m_VersionSortRankEtaQLUT
static float m_PhiWeight_COU
static L1MuGMTLFSortRankCombineLUT * getLFSortRankCombineLUT()
static L1MuGMTLFMergeRankPtQLUT * m_LFMergeRankPtQLUT
static L1MuGMTRegMMConfigPhi * getRegMMConfigPhi()
static L1MuGMTLFMergeRankCombineLUT * m_LFMergeRankCombineLUT
static int getIsolationCellSizeEta()
static L1MuGMTLFSortRankPtQLUT * getLFSortRankPtQLUT()
static L1MuGMTLFPhiProLUT * getLFPhiProLUT()
static L1MuGMTRegSortRankOffset * m_RegSortRankOffset
static int m_BxMinRo
GMT Register that implements Rank offset for merged cands.
Definition: L1MuGMTReg.h:271
static L1MuGMTRegMMConfigPt * getRegMMConfigPt()
static L1MuGMTLFSortRankEtaQLUT * m_LFSortRankEtaQLUT
static float getEtaWeightCOU()
static const L1MuGMTChannelMask * getGMTChanMask()
static unsigned getVersionSortRankEtaQLUT()
static L1MuGMTRegMMConfigEta * m_RegMMConfigEta
static float getEtaPhiThresholdCOU()
static float getPhiWeightCOU()
static bool getDoOvlRpcAnd()
require DT/CSC candidates to be confirmed by the RPC in the overlap region
static const unsigned int MAXCSC
Definition: L1MuGMTConfig.h:91
static const unsigned int MAXDTBX
Definition: L1MuGMTConfig.h:91
GMT Register that implements Configuration of Cancel Decisison Logic.
Definition: L1MuGMTReg.h:300
static const unsigned int MAXRPCendcap
Definition: L1MuGMTConfig.h:90
static int getBxMaxRo()
void dumpLUTs(std::string dir)
static edm::InputTag m_MipIsoInputTag
static int getBxMinRo()
static L1MuGMTLFPtMixLUT * getLFPtMixLUT()
static L1MuGMTLFDisableHotLUT * getLFDisableHotLUT()
static float m_EtaPhiThreshold_endcap
static L1MuGMTMIAUEtaProLUT * m_MIAUEtaProLUT
void setCaloGeom(const L1CaloGeometry *caloGeom)
static float m_PhiWeight_endcap
static edm::InputTag m_RPCfInputTag
static L1MuGMTLFMergeRankEtaPhiLUT * m_LFMergeRankEtaPhiLUT
static float m_EtaWeight_barrel
GMT Register that implements additional Halo Overwrites Matched bit.
Definition: L1MuGMTReg.h:239
static L1MuGMTLFMergeRankEtaPhiLUT * getLFMergeRankEtaPhiLUT()
static const L1MuGMTScales * m_GMTScales
static const L1MuTriggerPtScale * getTriggerPtScale()
static int getBxMin()
GMT Merge Method Config Register Eta.
Definition: L1MuGMTReg.h:150
static const unsigned int MaxMuons
Definition: L1MuGMTConfig.h:93
L1MuGMTConfig(const edm::ParameterSet &ps)
constructor
static const L1MuGMTParameters * getGMTParams()
static const L1MuGMTScales * getGMTScales()
static float m_EtaWeight_COU
static L1MuGMTRegMMConfigPt * m_RegMMConfigPt
static L1MuGMTMIAUPhiPro1LUT * getMIAUPhiPro1LUT()
static L1MuGMTLFPhiProLUT * m_LFPhiProLUT
static bool m_PropagatePhi
static L1MuGMTLFMergeRankCombineLUT * getLFMergeRankCombineLUT()
static const L1MuGMTParameters * m_GMTParams
static L1MuGMTRegMMConfigMIP * m_RegMMConfigMIP
static L1MuGMTLFEtaConvLUT * m_LFEtaConvLUT
static const L1MuTriggerScales * getTriggerScales()
static L1MuGMTLFSortRankEtaQLUT * getLFSortRankEtaQLUT()
static L1MuGMTLFEtaConvLUT * getLFEtaConvLUT()
void setGMTParams(const L1MuGMTParameters *gmtparams)
static L1MuGMTLFSortRankPtQLUT * m_LFSortRankPtQLUT
void clearLUTsRegs()
static L1MuGMTLFCOUDeltaEtaLUT * getLFCOUDeltaEtaLUT()
GMT Merge Method Config Register Pt.
Definition: L1MuGMTReg.h:160
static L1MuGMTRegSortRankOffset * getRegSortRankOffset()
static L1MuGMTMIAUPhiPro1LUT * m_MIAUPhiPro1LUT
static L1MuGMTLFOvlEtaConvLUT * m_LFOvlEtaConvLUT
static float m_EtaPhiThreshold_barrel
static int m_BxMin
static edm::InputTag getMipIsoInputTag()
static const L1CaloGeometry * m_caloGeom
GMT Merge Method Config Register MIP.
Definition: L1MuGMTReg.h:218
static int m_BxMaxRo
static float getEtaWeightBarrel()
static const edm::ParameterSet * getParameterSet()
static L1MuGMTLFCOUDeltaEtaLUT * m_LFCOUDeltaEtaLUT
void createLUTsRegs()
static L1MuGMTRegMMConfigMIP * getRegMMConfigMIP()
static const edm::ParameterSet * m_ps
static L1MuGMTLFPtMixLUT * m_LFPtMixLUT
static const unsigned int MAXRPCbarrel
Definition: L1MuGMTConfig.h:90
tuple level
Definition: testEve_cfg.py:34
static int getIsolationCellSizePhi()
static int getBxMax()
dbl *** dir
Definition: mlp_gen.cc:35
void setTriggerScales(const L1MuTriggerScales *trigscales)
static L1MuGMTRegCDLConfig * getRegCDLConfig()
static L1MuGMTLFPhiProEtaConvLUT * m_LFPhiProEtaConvLUT
static L1MuGMTMIAUEtaProLUT * getMIAUEtaProLUT()
static L1MuGMTRegCDLConfig * m_RegCDLConfig
static L1MuGMTLFPhiProEtaConvLUT * getLFPhiProEtaConvLUT()
static edm::InputTag getDTInputTag()
static int getDebugLevel()
static edm::InputTag m_DTInputTag
static L1MuGMTRegMMConfigSRK * m_RegMMConfigSRK
static const unsigned int MAXRPC
Definition: L1MuGMTConfig.h:90
static L1MuGMTLFMergeRankEtaQLUT * getLFMergeRankEtaQLUT()
static bool Debug(int level)
static float getEtaPhiThresholdBarrel()
static bool m_debug
static float getPhiWeightBarrel()
static edm::InputTag getCSCInputTag()