CMS 3D CMS Logo

L1MuDTTrackFinder.h
Go to the documentation of this file.
1 //-------------------------------------------------
2 //
18 //
19 //--------------------------------------------------
20 #ifndef L1MUDT_TRACK_FINDER_H
21 #define L1MUDT_TRACK_FINDER_H
22 
23 //---------------
24 // C++ Headers --
25 //---------------
26 
27 #include <vector>
28 
29 //----------------------
30 // Base Class Headers --
31 //----------------------
32 
33 //------------------------------------
34 // Collaborating Class Declarations --
35 //------------------------------------
36 
42 class L1MuDTTFConfig;
43 class L1MuDTSecProcMap;
44 class L1MuDTSecProcId;
46 class L1MuDTEtaProcessor;
47 class L1MuDTWedgeSorter;
48 class L1MuDTMuonSorter;
49 class L1MuDTTrackCand;
50 class L1MuRegionalCand;
51 
52 // ---------------------
53 // -- Class Interface --
54 // ---------------------
55 
57 public:
59  typedef std::vector<L1MuRegionalCand>::const_iterator TFtracks_const_iter;
60  typedef std::vector<L1MuRegionalCand>::iterator TFtracks_iter;
61 
64 
66  virtual ~L1MuDTTrackFinder();
67 
69  void setup(edm::ConsumesCollector&& iC);
70 
72  void run(const edm::Event& e, const edm::EventSetup& c);
73 
75  void reset();
76 
78  const L1MuDTSectorProcessor* sp(const L1MuDTSecProcId&) const;
79 
81  inline const L1MuDTEtaProcessor* ep(int id) const { return m_epvec[id]; }
82 
84  inline const L1MuDTWedgeSorter* ws(int id) const { return m_wsvec[id]; }
85 
87  inline const L1MuDTMuonSorter* ms() const { return m_ms; }
88 
90  int numberOfTracks();
91 
93 
95 
96  void clear();
97 
99  int numberOfTracks(int bx);
100 
102  static L1MuDTTFConfig* config() { return m_config; }
103 
104  std::vector<L1MuDTTrackCand>& getcache0() { return _cache0; }
105 
106  std::vector<L1MuRegionalCand>& getcache() { return _cache; }
107 
108 private:
110  virtual void reconstruct(const edm::Event& e, const edm::EventSetup& c) {
111  reset();
112  run(e, c);
113  }
114 
115 private:
116  std::vector<L1MuDTTrackCand> _cache0;
117  std::vector<L1MuRegionalCand> _cache;
119  std::vector<L1MuDTEtaProcessor*> m_epvec;
120  std::vector<L1MuDTWedgeSorter*> m_wsvec;
123 
125 };
126 
127 #endif
L1MuDTTrackFinder::end
TFtracks_const_iter end()
Definition: L1MuDTTrackFinder.cc:303
L1MuDTTrackFinder::ep
const L1MuDTEtaProcessor * ep(int id) const
get a pointer to an Eta Processor, index [0-11]
Definition: L1MuDTTrackFinder.h:81
L1MuDTTrackFinder::m_ms
L1MuDTMuonSorter * m_ms
DT Muon Sorter.
Definition: L1MuDTTrackFinder.h:121
L1MuDTTrackFinder::m_wsvec
std::vector< L1MuDTWedgeSorter * > m_wsvec
Wedge Sorters.
Definition: L1MuDTTrackFinder.h:120
edm::EDGetTokenT< L1MuDTChambPhContainer >
L1MuDTTFConfig
Definition: L1MuDTTFConfig.h:38
L1MuDTWedgeSorter
Definition: L1MuDTWedgeSorter.h:45
l1GtPatternGenerator_cfi.bx
bx
Definition: l1GtPatternGenerator_cfi.py:18
L1MuDTTrackFinder::_cache0
std::vector< L1MuDTTrackCand > _cache0
Definition: L1MuDTTrackFinder.h:116
L1MuDTTrackFinder::~L1MuDTTrackFinder
virtual ~L1MuDTTrackFinder()
destructor
Definition: L1MuDTTrackFinder.cc:81
L1MuDTTrackFinder::ws
const L1MuDTWedgeSorter * ws(int id) const
get a pointer to a Wedge Sorter, index [0-11]
Definition: L1MuDTTrackFinder.h:84
L1MuDTTrackFinder::run
void run(const edm::Event &e, const edm::EventSetup &c)
run the barrel MTTF
Definition: L1MuDTTrackFinder.cc:156
L1MuDTTrackFinder::setup
void setup(edm::ConsumesCollector &&iC)
build the structure of the barrel MTTF
Definition: L1MuDTTrackFinder.cc:112
L1MuDTTrackFinder::begin
TFtracks_const_iter begin()
Definition: L1MuDTTrackFinder.cc:301
L1MuDTSecProcMap
Definition: L1MuDTSecProcMap.h:38
L1MuDTChambPhContainer
Definition: L1MuDTChambPhContainer.h:33
L1MuDTTrackCand
Definition: L1MuDTTrackCand.h:33
L1MuDTTrackFinder::m_DTDigiToken
edm::EDGetTokenT< L1MuDTChambPhContainer > m_DTDigiToken
Definition: L1MuDTTrackFinder.h:122
L1MuDTTrackFinder::L1MuDTTrackFinder
L1MuDTTrackFinder(const edm::ParameterSet &ps, edm::ConsumesCollector &&iC)
constructor
Definition: L1MuDTTrackFinder.cc:54
L1MuDTTrackFinder::getcache0
std::vector< L1MuDTTrackCand > & getcache0()
Definition: L1MuDTTrackFinder.h:104
L1MuDTMuonSorter
Definition: L1MuDTMuonSorter.h:45
L1MuRegionalCand
Definition: L1MuRegionalCand.h:26
L1MuDTTrackFinder::reset
void reset()
reset the barrel MTTF
Definition: L1MuDTTrackFinder.cc:265
L1MuDTTrackFinder::sp
const L1MuDTSectorProcessor * sp(const L1MuDTSecProcId &) const
get a pointer to a Sector Processor
Definition: L1MuDTTrackFinder.cc:294
EDGetToken.h
L1MuDTTrackFinder::_cache
std::vector< L1MuRegionalCand > _cache
Definition: L1MuDTTrackFinder.h:117
L1MuDTTrackFinder::getcache
std::vector< L1MuRegionalCand > & getcache()
Definition: L1MuDTTrackFinder.h:106
edm::ParameterSet
Definition: ParameterSet.h:47
L1MuDTSecProcId
Definition: L1MuDTSecProcId.h:40
Event.h
L1MuDTEtaProcessor
Definition: L1MuDTEtaProcessor.h:55
L1MuDTTrackFinder::numberOfTracks
int numberOfTracks()
get number of muon candidates found by the barrel MTTF
Definition: L1MuDTTrackFinder.cc:299
L1MuDTTrackFinder::TFtracks_iter
std::vector< L1MuRegionalCand >::iterator TFtracks_iter
Definition: L1MuDTTrackFinder.h:60
L1MuDTTrackFinder::ms
const L1MuDTMuonSorter * ms() const
get a pointer to the DT Muon Sorter
Definition: L1MuDTTrackFinder.h:87
edm::EventSetup
Definition: EventSetup.h:57
L1MuDTTrackFinder::config
static L1MuDTTFConfig * config()
return configuration
Definition: L1MuDTTrackFinder.h:102
HltBtagPostValidation_cff.c
c
Definition: HltBtagPostValidation_cff.py:31
L1MuDTTrackFinder::m_epvec
std::vector< L1MuDTEtaProcessor * > m_epvec
Eta Processors.
Definition: L1MuDTTrackFinder.h:119
L1MuDTSectorProcessor
Definition: L1MuDTSectorProcessor.h:53
L1MuDTTrackFinder
Definition: L1MuDTTrackFinder.h:56
triggerObjects_cff.id
id
Definition: triggerObjects_cff.py:31
L1MuDTTrackFinder::reconstruct
virtual void reconstruct(const edm::Event &e, const edm::EventSetup &c)
run Track Finder and store candidates in cache
Definition: L1MuDTTrackFinder.h:110
L1MuDTTrackFinder::m_config
static L1MuDTTFConfig * m_config
Track Finder configuration.
Definition: L1MuDTTrackFinder.h:124
L1MuDTTrackFinder::clear
void clear()
Definition: L1MuDTTrackFinder.cc:305
L1MuDTTrackFinder::TFtracks_const_iter
std::vector< L1MuRegionalCand >::const_iterator TFtracks_const_iter
container for muon candidates
Definition: L1MuDTTrackFinder.h:59
ConsumesCollector.h
ParameterSet.h
edm::Event
Definition: Event.h:73
edm::ConsumesCollector
Definition: ConsumesCollector.h:45
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
L1MuDTTrackFinder::m_spmap
L1MuDTSecProcMap * m_spmap
Sector Processors.
Definition: L1MuDTTrackFinder.h:118