CMS 3D CMS Logo

L1MuBMTrackFinder.h
Go to the documentation of this file.
1 //-------------------------------------------------
2 //
19 //
20 //--------------------------------------------------
21 #ifndef L1MUBM_TRACK_FINDER_H
22 #define L1MUBM_TRACK_FINDER_H
23 
24 //---------------
25 // C++ Headers --
26 //---------------
27 
28 #include <vector>
29 #include <iostream>
30 //----------------------
31 // Base Class Headers --
32 //----------------------
33 
34 #include <map>
35 
36 //------------------------------------
37 // Collaborating Class Declarations --
38 //------------------------------------
39 
49 
50 class L1MuBMTFConfig;
51 class L1MuBMSecProcMap;
52 class L1MuBMSecProcId;
54 class L1MuBMEtaProcessor;
55 class L1MuBMWedgeSorter;
56 class L1MuBMMuonSorter;
57 class L1MuRegionalCand;
58 class L1MuDTTrack;
59 class L1MuDTTrackSegPhi;
60 class L1MuDTTrackSegEta;
61 
62 // ---------------------
63 // -- Class Interface --
64 // ---------------------
65 
67 public:
71 
74 
76  virtual ~L1MuBMTrackFinder();
77 
80 
82  void run(const edm::Event& e, const edm::EventSetup& c);
83 
85  void reset();
86 
87  inline int setAdd(int ust, int rel_add);
88 
90  const L1MuBMSectorProcessor* sp(const L1MuBMSecProcId&) const;
91 
93  inline const L1MuBMEtaProcessor* ep(int id) const { return m_epvec[id]; }
94 
96  inline const L1MuBMWedgeSorter* ws(int id) const { return m_wsvec[id]; }
97 
99  inline const L1MuBMMuonSorter* ms() const { return m_ms; }
100 
102  int numberOfTracks();
103 
105 
107 
108  void clear();
109 
111  int numberOfTracks(int bx);
112 
114  static const L1MuBMTFConfig* config() { return m_config; }
115 
121 
122 private:
124  virtual void reconstruct(const edm::Event& e, const edm::EventSetup& c) {
125  reset();
126  run(e, c);
127  }
128 
129 private:
135 
137  std::vector<L1MuBMEtaProcessor*> m_epvec;
138  std::vector<L1MuBMWedgeSorter*> m_wsvec;
140 
142 
144 };
145 
146 #endif
L1MuBMTrackFinder::numberOfTracks
int numberOfTracks()
get number of muon candidates found by the barrel MTTF
Definition: L1MuBMTrackFinder.cc:413
L1MuBMTrackFinder::m_ms
L1MuBMMuonSorter * m_ms
BM Muon Sorter.
Definition: L1MuBMTrackFinder.h:139
L1MuBMWedgeSorter
Definition: L1MuBMWedgeSorter.h:45
L1MuBMEtaProcessor
Definition: L1MuBMEtaProcessor.h:62
L1MuBMTrackFinder::ws
const L1MuBMWedgeSorter * ws(int id) const
get a pointer to a Wedge Sorter, index [0-11]
Definition: L1MuBMTrackFinder.h:96
L1MuBMTrackFinder::getcache1
L1MuBMTrackCollection & getcache1()
Definition: L1MuBMTrackFinder.h:118
L1MuBMTrackFinder::reset
void reset()
reset the barrel MTTF
Definition: L1MuBMTrackFinder.cc:379
edm::EDGetTokenT< L1MuDTChambPhContainer >
L1MuBMSecProcId
Definition: L1MuBMSecProcId.h:40
BXVector< RegionalMuonCand >::const_iterator
std::vector< RegionalMuonCand >::const_iterator const_iterator
Definition: BXVector.h:18
L1MuBMTrackFinder::ep
const L1MuBMEtaProcessor * ep(int id) const
get a pointer to an Eta Processor, index [0-11]
Definition: L1MuBMTrackFinder.h:93
l1GtPatternGenerator_cfi.bx
bx
Definition: l1GtPatternGenerator_cfi.py:18
L1MuBMTrackSegPhi.h
L1MuBMTrackFinder::_cache3
L1MuBMTrackSegEtaCollection _cache3
Definition: L1MuBMTrackFinder.h:134
L1MuBMTrackFinder::clear
void clear()
Definition: L1MuBMTrackFinder.cc:425
L1MuDTTrackSegEta
Definition: L1MuDTTrackSegEta.h:36
L1MuBMSectorProcessor
Definition: L1MuBMSectorProcessor.h:54
BXVector< RegionalMuonCand >
L1MuBMTrackFinder::m_wsvec
std::vector< L1MuBMWedgeSorter * > m_wsvec
Wedge Sorters.
Definition: L1MuBMTrackFinder.h:138
L1MuBMTrackFinder::_cache1
L1MuBMTrackCollection _cache1
Definition: L1MuBMTrackFinder.h:132
L1MuRegionalCand
Definition: L1MuRegionalCand.h:26
L1MuBMTrackFinder::begin
TFtracks_const_iter begin(int bx)
Definition: L1MuBMTrackFinder.cc:421
BXVector< RegionalMuonCand >::iterator
std::vector< RegionalMuonCand >::iterator iterator
Definition: BXVector.h:17
EDGetToken.h
L1MuBMTrackFinder::ms
const L1MuBMMuonSorter * ms() const
get a pointer to the BM Muon Sorter
Definition: L1MuBMTrackFinder.h:99
L1MuBMTrackFinder::end
TFtracks_const_iter end(int bx)
Definition: L1MuBMTrackFinder.cc:423
L1MuBMTrackFinder::config
static const L1MuBMTFConfig * config()
return configuration
Definition: L1MuBMTrackFinder.h:114
L1MuBMTrackFinder::run
void run(const edm::Event &e, const edm::EventSetup &c)
run the barrel MTTF
Definition: L1MuBMTrackFinder.cc:160
L1MuBMTrackFinder::m_epvec
std::vector< L1MuBMEtaProcessor * > m_epvec
Eta Processors.
Definition: L1MuBMTrackFinder.h:137
edm::ParameterSet
Definition: ParameterSet.h:36
Event.h
L1MuBMTrackFinder::L1MuBMTrackFinder
L1MuBMTrackFinder(const edm::ParameterSet &ps, edm::ConsumesCollector &&iC)
constructor
Definition: L1MuBMTrackFinder.cc:60
L1MuBMTrackCollection
std::vector< L1MuBMTrack > L1MuBMTrackCollection
Definition: L1MuBMTrack.h:47
L1MuBMTrackFinder::getcache2
L1MuBMTrackSegPhiCollection & getcache2()
Definition: L1MuBMTrackFinder.h:119
L1MuDTTrack
Definition: L1MuDTTrack.h:47
L1MuBMTrackFinder::setAdd
int setAdd(int ust, int rel_add)
Definition: L1MuBMTrackFinder.cc:442
edm::EventSetup
Definition: EventSetup.h:57
L1MuBMTrackFinder::m_config
static L1MuBMTFConfig * m_config
Track Finder configuration.
Definition: L1MuBMTrackFinder.h:141
HltBtagPostValidation_cff.c
c
Definition: HltBtagPostValidation_cff.py:31
L1MuDTChambPhContainer.h
L1MuBMTrackFinder::_cache0
l1t::RegionalMuonCandBxCollection _cache0
Definition: L1MuBMTrackFinder.h:130
L1MuBMTrackFinder::getcache3
L1MuBMTrackSegEtaCollection & getcache3()
Definition: L1MuBMTrackFinder.h:120
L1MuBMTrackFinder::_cache
l1t::RegionalMuonCandBxCollection _cache
Definition: L1MuBMTrackFinder.h:131
L1MuBMTrackFinder::_cache2
L1MuBMTrackSegPhiCollection _cache2
Definition: L1MuBMTrackFinder.h:133
L1MuBMMuonSorter
Definition: L1MuBMMuonSorter.h:45
L1MuBMTrackFinder::getcache
l1t::RegionalMuonCandBxCollection & getcache()
Definition: L1MuBMTrackFinder.h:116
L1MuBMTrackFinder::getcache0
l1t::RegionalMuonCandBxCollection & getcache0()
Definition: L1MuBMTrackFinder.h:117
triggerObjects_cff.id
id
Definition: triggerObjects_cff.py:31
RegionalMuonCand.h
L1MuBMTrackSegEta.h
L1MuBMTrackSegEtaCollection
std::vector< L1MuBMTrackSegEta > L1MuBMTrackSegEtaCollection
Definition: L1MuBMTrackSegEta.h:37
L1MuBMTrackFinder::TFtracks_const_iter
l1t::RegionalMuonCandBxCollection::const_iterator TFtracks_const_iter
container for muon candidates
Definition: L1MuBMTrackFinder.h:69
L1MuBMSecProcMap
Definition: L1MuBMSecProcMap.h:39
L1MuDTTrackSegPhi
Definition: L1MuDTTrackSegPhi.h:36
ConsumesCollector.h
L1MuBMTrack.h
L1MuBMTrackFinder::m_DTDigiToken
edm::EDGetTokenT< L1MuDTChambPhContainer > m_DTDigiToken
Definition: L1MuBMTrackFinder.h:143
ParameterSet.h
L1MuBMTrackFinder::setup
void setup(edm::ConsumesCollector &&)
build the structure of the barrel MTTF
Definition: L1MuBMTrackFinder.cc:116
L1MuBMTFConfig
Definition: L1MuBMTFConfig.h:41
edm::Event
Definition: Event.h:73
L1MuBMTrackFinder::~L1MuBMTrackFinder
virtual ~L1MuBMTrackFinder()
destructor
Definition: L1MuBMTrackFinder.cc:85
L1MuBMTrackFinder::reconstruct
virtual void reconstruct(const edm::Event &e, const edm::EventSetup &c)
run Track Finder and store candidates in cache
Definition: L1MuBMTrackFinder.h:124
L1MuBMTrackSegPhiCollection
std::vector< L1MuBMTrackSegPhi > L1MuBMTrackSegPhiCollection
Definition: L1MuBMTrackSegPhi.h:37
edm::ConsumesCollector
Definition: ConsumesCollector.h:39
L1MuBMTrackFinder::sp
const L1MuBMSectorProcessor * sp(const L1MuBMSecProcId &) const
get a pointer to a Sector Processor
Definition: L1MuBMTrackFinder.cc:408
L1MuBMTrackFinder::TFtracks_iter
l1t::RegionalMuonCandBxCollection::iterator TFtracks_iter
Definition: L1MuBMTrackFinder.h:70
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
L1MuBMTrackFinder
Definition: L1MuBMTrackFinder.h:66
L1MuBMTrackFinder::m_spmap
L1MuBMSecProcMap * m_spmap
Sector Processors.
Definition: L1MuBMTrackFinder.h:136