CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
L1MuDTEtaProcessor.h
Go to the documentation of this file.
1 //-------------------------------------------------
2 //
19 //
20 //--------------------------------------------------
21 #ifndef L1MUDT_ETA_PROCESSOR_H
22 #define L1MUDT_ETA_PROCESSOR_H
23 
24 //---------------
25 // C++ Headers --
26 //---------------
27 
28 #include <vector>
29 
30 //----------------------
31 // Base Class Headers --
32 //----------------------
33 
34 //------------------------------------
35 // Collaborating Class Declarations --
36 //------------------------------------
37 
43 class L1MuDTTrackSegEta;
44 class L1MuDTTrackFinder;
45 class L1MuDTTrack;
48 class L1MuDTTFMasks;
49 
50 // ---------------------
51 // -- Class Interface --
52 // ---------------------
53 
55 
56  public:
57 
59  L1MuDTEtaProcessor(const L1MuDTTrackFinder&, int id );
60 
62  virtual ~L1MuDTEtaProcessor();
63 
65  inline int id() const { return m_epid; }
66 
68  virtual void run(int bx, const edm::Event& e, const edm::EventSetup& c);
69 
71  virtual void reset();
72 
74  void print() const;
75 
77  inline const L1MuDTTrackFinder& tf() const { return m_tf; }
78 
80  inline int eta(int id) const { return m_eta[id]; }
81 
83  inline bool fineBit(int id) const { return m_fine[id]; }
84 
85  private:
86 
88  void receiveData(int bx, const edm::Event& e, const edm::EventSetup& c);
89 
91  void receiveAddresses();
92 
94  void runEtaTrackFinder(const edm::EventSetup& c);
95 
98 
100  void assign();
101 
103  static int quality(int id, int stat);
104 
105  private:
106 
108  int m_epid;
109 
110  int m_mask;
111 
112  int m_eta[12];
113  bool m_fine[12];
114 
115  std::vector<int> m_foundPattern;
116  int m_pattern[12];
117 
118  int m_address[12];
121  std::vector<const L1MuDTTrackSegEta*> m_tseta;
122 
126 
127 };
128 
129 #endif
const L1MuDTTrackFinder & tf() const
return reference to barrel MTTF
void runEtaTrackFinder(const edm::EventSetup &c)
run Eta Track Finder (ETF)
edm::ESHandle< L1MuDTEtaPatternLut > theEtaPatternLUT
const L1MuDTTrackFinder & m_tf
virtual ~L1MuDTEtaProcessor()
destructor
L1MuDTTrack * m_TracKCand[12]
void assign()
assign eta and etaFineBit
edm::ESHandle< L1MuDTQualPatternLut > theQualPatternLUT
static int quality(int id, int stat)
get quality code; id [0,26], stat [1,3]
bool fineBit(int id) const
return fine bit, index [0,11]
virtual void run(int bx, const edm::Event &e, const edm::EventSetup &c)
run the Eta Processor
std::vector< const L1MuDTTrackSegEta * > m_tseta
void receiveAddresses()
receive addresses (from 6 Sector Processors)
int id() const
return Eta Processor identifier (0-11)
void runEtaMatchingUnit(const edm::EventSetup &c)
run Eta Matching Unit (EMU)
std::vector< int > m_foundPattern
void receiveData(int bx, const edm::Event &e, const edm::EventSetup &c)
receive data (eta trigger primitives)
virtual void reset()
reset the Eta Processor
int eta(int id) const
return eta values, index [0,11]
L1MuDTTrack * m_TrackCand[12]
L1MuDTEtaProcessor(const L1MuDTTrackFinder &, int id)
constructor
void print() const
print muon candidates found by the Eta Processor
edm::ESHandle< L1MuDTTFMasks > msks