CMS 3D CMS Logo

L1MuBMMuonSorter.h
Go to the documentation of this file.
1 //-------------------------------------------------
2 //
16 //
17 //--------------------------------------------------
18 #ifndef L1MUBM_MUON_SORTER_H
19 #define L1MUBM_MUON_SORTER_H
20 
21 //---------------
22 // C++ Headers --
23 //---------------
24 
25 #include <vector>
26 
27 //----------------------
28 // Base Class Headers --
29 //----------------------
30 
32 
33 //------------------------------------
34 // Collaborating Class Declarations --
35 //------------------------------------
36 
37 class L1MuBMTrackFinder;
38 class L1MuBMTrack;
39 class L1MuBMSecProcId;
40 
41 // ---------------------
42 // -- Class Interface --
43 // ---------------------
44 
46 
47  public:
48 
51 
53  ~L1MuBMMuonSorter() override;
54 
56  void run() override;
57 
59  void reset() override;
60 
62  void print() const;
63 
65  inline int numberOfTracks() const { return m_TrackCands.size(); }
66 
68  inline const L1MuBMTrack* track(int id) const { return m_TrackCands[id]; }
69 
71  inline const std::vector<const L1MuBMTrack*>& tracks() const { return m_TrackCands; }
72 
73  private:
74 
76  void runCOL(std::vector<L1MuBMTrack*>&) const;
77 
79  static int neighbour(const L1MuBMSecProcId& spid1, const L1MuBMSecProcId& spid2);
80 
81  private:
82 
84  std::vector<const L1MuBMTrack*> m_TrackCands;
85 
86 };
87 
88 #endif
void reset() override
reset Muon Sorter
void runCOL(std::vector< L1MuBMTrack * > &) const
run the Cancel Out Logic of the muon sorter
L1MuBMMuonSorter(const L1MuBMTrackFinder &)
constructor
int numberOfTracks() const
return number of found muon candidates after sorter
const std::vector< const L1MuBMTrack * > & tracks() const
return vector of muon candidates
void print() const
print results after sorting
static int neighbour(const L1MuBMSecProcId &spid1, const L1MuBMSecProcId &spid2)
find out if two Sector Processors are neighbours
const L1MuBMTrackFinder & m_tf
std::vector< const L1MuBMTrack * > m_TrackCands
const L1MuBMTrack * track(int id) const
return pointer to a muon candidate
void run() override
run Muon Sorter
~L1MuBMMuonSorter() override
destructor