CMS 3D CMS Logo

L1MuDTSectorProcessor.h
Go to the documentation of this file.
1 //-------------------------------------------------
2 //
18 //
19 //--------------------------------------------------
20 #ifndef L1MUDT_SECTOR_PROCESSOR_H
21 #define L1MUDT_SECTOR_PROCESSOR_H
22 
23 //---------------
24 // C++ Headers --
25 //---------------
26 
27 #include <vector>
28 
29 //----------------------
30 // Base Class Headers --
31 //----------------------
32 
34 
35 //------------------------------------
36 // Collaborating Class Declarations --
37 //------------------------------------
38 
42 class L1MuDTDataBuffer;
46 class L1MuDTTrackFinder;
47 class L1MuDTTrack;
48 
49 // ---------------------
50 // -- Class Interface --
51 // ---------------------
52 
54 public:
57 
59  virtual ~L1MuDTSectorProcessor();
60 
62  virtual void run(int bx, const edm::Event& e, const edm::EventSetup& c);
63 
65  virtual void reset();
66 
68  void print() const;
69 
71  const L1MuDTSectorProcessor* neighbour() const;
72 
74  inline const L1MuDTSecProcId& id() const { return m_spid; }
75 
77  inline const L1MuDTTrackFinder& tf() const { return m_tf; }
78 
80  inline bool brl() const { return !m_spid.ovl(); }
81 
83  inline bool ovl() const { return m_spid.ovl(); }
84 
86  inline const L1MuDTDataBuffer* data() const { return m_DataBuffer; }
87  inline L1MuDTDataBuffer* data() { return m_DataBuffer; }
88 
90  inline const L1MuDTExtrapolationUnit* EU() const { return m_EU; }
91 
93  inline const L1MuDTTrackAssembler* TA() const { return m_TA; }
94 
96  inline const L1MuDTAssignmentUnit* AU(int id) const { return m_AUs[id]; }
97 
99  inline L1MuDTTrack* track(int id) const { return m_TrackCands[id]; }
100 
102  inline L1MuDTTrack* tracK(int id) const { return m_TracKCands[id]; }
103 
104 private:
106  bool anyTrack() const;
107 
108 private:
111 
116  std::vector<L1MuDTAssignmentUnit*> m_AUs;
117 
118  std::vector<L1MuDTTrack*> m_TrackCands;
119  std::vector<L1MuDTTrack*> m_TracKCands;
120 };
121 
122 #endif
L1MuDTSectorProcessor::m_TrackCands
std::vector< L1MuDTTrack * > m_TrackCands
Definition: L1MuDTSectorProcessor.h:118
L1MuDTSectorProcessor::neighbour
const L1MuDTSectorProcessor * neighbour() const
return pointer to the next wheel neighbour
Definition: L1MuDTSectorProcessor.cc:271
L1MuDTSectorProcessor::ovl
bool ovl() const
is it an overlap region Sector Processor?
Definition: L1MuDTSectorProcessor.h:83
L1MuDTSecProcId.h
L1MuDTSectorProcessor::print
void print() const
print muon candidates found by the Sector Processor
Definition: L1MuDTSectorProcessor.cc:256
l1GtPatternGenerator_cfi.bx
bx
Definition: l1GtPatternGenerator_cfi.py:18
L1MuDTSectorProcessor::anyTrack
bool anyTrack() const
are there any non-empty muon candidates?
Definition: L1MuDTSectorProcessor.cc:291
L1MuDTSectorProcessor::track
L1MuDTTrack * track(int id) const
return pointer to muon candidate, index [0,1]
Definition: L1MuDTSectorProcessor.h:99
L1MuDTSectorProcessor::m_spid
L1MuDTSecProcId m_spid
Definition: L1MuDTSectorProcessor.h:110
L1MuDTSectorProcessor::run
virtual void run(int bx, const edm::Event &e, const edm::EventSetup &c)
run the Sector Processor
Definition: L1MuDTSectorProcessor.cc:104
L1MuDTSectorProcessor::brl
bool brl() const
is it a barrel-only Sector Processor?
Definition: L1MuDTSectorProcessor.h:80
L1MuDTSectorProcessor::m_SectorReceiver
L1MuDTSectorReceiver * m_SectorReceiver
Definition: L1MuDTSectorProcessor.h:112
L1MuDTSectorProcessor::tf
const L1MuDTTrackFinder & tf() const
return reference to barrel MTTF
Definition: L1MuDTSectorProcessor.h:77
L1MuDTSectorProcessor::id
const L1MuDTSecProcId & id() const
return Sector Processor identifier
Definition: L1MuDTSectorProcessor.h:74
L1MuDTSectorProcessor::reset
virtual void reset()
reset the Sector Processor
Definition: L1MuDTSectorProcessor.cc:230
L1MuDTSectorProcessor::m_EU
L1MuDTExtrapolationUnit * m_EU
Definition: L1MuDTSectorProcessor.h:114
L1MuDTSectorProcessor::L1MuDTSectorProcessor
L1MuDTSectorProcessor(const L1MuDTTrackFinder &, const L1MuDTSecProcId &, edm::ConsumesCollector &&)
constructor
Definition: L1MuDTSectorProcessor.cc:53
L1MuDTTrackAssembler
Definition: L1MuDTTrackAssembler.h:49
L1MuDTSectorProcessor::data
const L1MuDTDataBuffer * data() const
return pointer to Data Buffer
Definition: L1MuDTSectorProcessor.h:86
L1MuDTAssignmentUnit
Definition: L1MuDTAssignmentUnit.h:50
L1MuDTSectorProcessor::EU
const L1MuDTExtrapolationUnit * EU() const
return pointer to Extrapolation Unit
Definition: L1MuDTSectorProcessor.h:90
L1MuDTSectorProcessor::data
L1MuDTDataBuffer * data()
Definition: L1MuDTSectorProcessor.h:87
L1MuDTSectorProcessor::m_tf
const L1MuDTTrackFinder & m_tf
Definition: L1MuDTSectorProcessor.h:109
L1MuDTSectorProcessor::m_DataBuffer
L1MuDTDataBuffer * m_DataBuffer
Definition: L1MuDTSectorProcessor.h:113
L1MuDTSectorProcessor::m_TracKCands
std::vector< L1MuDTTrack * > m_TracKCands
Definition: L1MuDTSectorProcessor.h:119
L1MuDTSecProcId
Definition: L1MuDTSecProcId.h:40
Event.h
L1MuDTTrack
Definition: L1MuDTTrack.h:47
edm::EventSetup
Definition: EventSetup.h:57
L1MuDTSectorProcessor::AU
const L1MuDTAssignmentUnit * AU(int id) const
return pointer to Assignment Unit, index [0,1]
Definition: L1MuDTSectorProcessor.h:96
HltBtagPostValidation_cff.c
c
Definition: HltBtagPostValidation_cff.py:31
L1MuDTSecProcId::ovl
bool ovl() const
is it an overlap region Sector Processor?
Definition: L1MuDTSecProcId.h:61
L1MuDTSectorReceiver
Definition: L1MuDTSectorReceiver.h:54
L1MuDTSectorProcessor
Definition: L1MuDTSectorProcessor.h:53
L1MuDTTrackFinder
Definition: L1MuDTTrackFinder.h:56
L1MuDTSectorProcessor::m_TA
L1MuDTTrackAssembler * m_TA
Definition: L1MuDTSectorProcessor.h:115
L1MuDTSectorProcessor::~L1MuDTSectorProcessor
virtual ~L1MuDTSectorProcessor()
destructor
Definition: L1MuDTSectorProcessor.cc:84
L1MuDTDataBuffer
Definition: L1MuDTDataBuffer.h:41
ConsumesCollector.h
edm::Event
Definition: Event.h:73
L1MuDTSectorProcessor::m_AUs
std::vector< L1MuDTAssignmentUnit * > m_AUs
Definition: L1MuDTSectorProcessor.h:116
L1MuDTSectorProcessor::TA
const L1MuDTTrackAssembler * TA() const
return pointer to Track Assembler
Definition: L1MuDTSectorProcessor.h:93
L1MuDTExtrapolationUnit
Definition: L1MuDTExtrapolationUnit.h:52
edm::ConsumesCollector
Definition: ConsumesCollector.h:39
L1MuDTSectorProcessor::tracK
L1MuDTTrack * tracK(int id) const
return pointer to muon candidate, index [0,1]
Definition: L1MuDTSectorProcessor.h:102
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37