CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
L1MuGlobalMuonTrigger.h
Go to the documentation of this file.
1 //---------------------------------------------
2 //
3 // \class L1MuGlobalMuonTrigger
4 //
5 // Description: L1 Global Muon Trigger
6 //
7 //
8 // $Date: 2009/12/18 20:44:58 $
9 // $Revision: 1.6 $
10 //
11 // Author :
12 // Ivan Mikulec HEPHY Vienna
13 //
14 //--------------------------------------------------
15 #ifndef L1TriggerGlobalMuonTrigger_L1MuGlobalMuonTrigger_h
16 #define L1TriggerGlobalMuonTrigger_L1MuGlobalMuonTrigger_h
17 
18 //---------------
19 // C++ Headers --
20 //---------------
21 
22 //----------------------
23 // Base Class Headers --
24 //----------------------
26 
27 //------------------------------------
28 // Collaborating Class Declarations --
29 //------------------------------------
36 
37 class L1MuGMTConfig;
38 class L1MuGMTPSB;
39 class L1MuGMTMatcher;
41 class L1MuGMTMipIsoAU;
42 class L1MuGMTMerger;
43 class L1MuGMTSorter;
44 
46 
47 class L1MuGMTDebugBlock;
48 
49 //---------------------
50 //-- Class Interface --
51 //---------------------
53 
54  public:
55 
58  virtual void beginJob();
59 
60  virtual void produce(edm::Event&, const edm::EventSetup&);
61 
62  void reset();
63 
65  inline const L1MuGMTPSB* Data() const { return m_PSB; }
66 
68  inline const L1MuGMTMatcher* Matcher(int id) const { return m_Matcher[id]; }
69 
71  inline const L1MuGMTCancelOutUnit* CancelOutUnit(int id) const { return m_CancelOutUnit[id]; }
72 
74  inline const L1MuGMTMipIsoAU* MipIsoAU(int id) const { return m_MipIsoAU[id]; }
75 
77  inline const L1MuGMTMerger* Merger(int id) const { return m_Merger[id]; }
78 
80  inline const L1MuGMTSorter* Sorter() const { return m_Sorter; }
81 
82 
86  std::auto_ptr<L1MuGMTReadoutCollection> getReadoutCollection();
87 
90 
91 
94 
95  private:
96 
103 
104  std::vector<L1MuGMTExtendedCand> m_ExtendedCands;
105  std::vector<L1MuGMTReadoutRecord*> m_ReadoutRingbuffer;
106 
109 
111 
113 
114  unsigned long long m_L1MuGMTScalesCacheID;
115  unsigned long long m_L1MuTriggerScalesCacheID;
116  unsigned long long m_L1MuTriggerPtScaleCacheID;
117  unsigned long long m_L1MuGMTParametersCacheID;
118  unsigned long long m_L1MuGMTChannelMaskCacheID;
119  unsigned long long m_L1CaloGeometryCacheID;
120 };
121 
122 #endif // L1TriggerGlobalMuonTrigger_L1MuGlobalMuonTrigger_h
unsigned long long m_L1MuTriggerScalesCacheID
std::vector< L1MuGMTReadoutRecord * > m_ReadoutRingbuffer
unsigned long long m_L1MuGMTChannelMaskCacheID
const L1MuGMTMatcher * Matcher(int id) const
return pointer to Matcher
std::vector< L1MuGMTExtendedCand > m_ExtendedCands
const L1MuGMTSorter * Sorter() const
return pointer to Sorter
L1MuGlobalMuonTrigger(const edm::ParameterSet &)
unsigned long long m_L1CaloGeometryCacheID
std::auto_ptr< L1MuGMTReadoutCollection > getReadoutCollection()
unsigned long long m_L1MuTriggerPtScaleCacheID
L1MuGMTMipIsoAU * m_MipIsoAU[2]
const L1MuGMTPSB * Data() const
return pointer to PSB
const L1MuGMTCancelOutUnit * CancelOutUnit(int id) const
return pointer to Cancel Out Unit
const L1MuGMTMerger * Merger(int id) const
return pointer to Merger
L1MuGMTMatcher * m_Matcher[2]
L1MuGMTMerger * m_Merger[2]
unsigned long long m_L1MuGMTScalesCacheID
const L1MuGMTMipIsoAU * MipIsoAU(int id) const
return pointer to MIP &amp; ISO bit assignment unit
L1MuGMTCancelOutUnit * m_CancelOutUnit[4]
static L1MuGMTConfig * m_config
unsigned long long m_L1MuGMTParametersCacheID
static L1MuGMTDebugBlock * m_db
virtual void produce(edm::Event &, const edm::EventSetup &)
L1MuGMTDebugBlock * DebugBlockForFill() const
for debug: return the debug block (in order to fill it)
L1MuGMTReadoutRecord * currentReadoutRecord() const
return a reference to the current record in the ring buffer