CMS 3D CMS Logo

L1MuBMTrackSegEta.h
Go to the documentation of this file.
1 //-------------------------------------------------
2 //
11 //
12 //--------------------------------------------------
13 #ifndef L1MUBM_TRACK_SEG_ETA_H
14 #define L1MUBM_TRACK_SEG_ETA_H
15 
16 //---------------
17 // C++ Headers --
18 //---------------
19 
20 #include <iosfwd>
21 #include <vector>
22 
23 //----------------------
24 // Base Class Headers --
25 //----------------------
26 
27 //------------------------------------
28 // Collaborating Class Declarations --
29 //------------------------------------
30 
32 
33 // ---------------------
34 // -- Class Interface --
35 // ---------------------
36 
38 
39 typedef std::vector<L1MuBMTrackSegEta> L1MuBMTrackSegEtaCollection;
40 
42 
43  public:
44 
47 
49  L1MuBMTrackSegEta(int wheel_id, int sector_id, int station_id,
50  int position = 0, int quality = 0, int bx = 17);
51 
54  int position = 0, int quality = 0, int bx = 17);
55 
58 
60  virtual ~L1MuBMTrackSegEta();
61 
63  void reset();
64 
66  inline int wheel() const { return m_location.wheel(); }
67 
69  inline int sector() const { return m_location.sector(); }
70 
72  inline int station() const { return m_location.station(); }
73 
75  inline const L1MuBMTrackSegLoc& where() const{ return m_location; }
76 
78  inline unsigned int position() const { return m_position; }
79 
81  inline unsigned int quality() const { return m_quality; }
82 
84  inline int bx() const { return m_bx; }
85 
87  inline bool empty() const { return m_position == 0; }
88 
91 
93  bool operator==(const L1MuBMTrackSegEta&) const;
94 
96  bool operator!=(const L1MuBMTrackSegEta&) const;
97 
99  friend std::ostream& operator<<(std::ostream&, const L1MuBMTrackSegEta&);
100 
101  private:
102 
103  L1MuBMTrackSegLoc m_location; // logical location of a TS
104  unsigned int m_position; // 7 bits
105  unsigned int m_quality; // 7 bits
106  int m_bx; // bunch crossing identifier
107 
108 };
109 
110 #endif
int sector() const
return sector
bool empty() const
is it an empty eta track segment?
bool operator!=(const L1MuBMTrackSegEta &) const
unequal operator
int station() const
return station
int wheel() const
return wheel
L1MuBMTrackSegEta()
default constructor
unsigned int m_position
bool operator==(const L1MuBMTrackSegEta &) const
equal operator
friend std::ostream & operator<<(std::ostream &, const L1MuBMTrackSegEta &)
output stream operator
L1MuBMTrackSegEta & operator=(const L1MuBMTrackSegEta &)
assignment operator
unsigned int position() const
return position
int sector() const
return sector (30 deg)
virtual ~L1MuBMTrackSegEta()
destructor
const L1MuBMTrackSegLoc & where() const
return location of eta track segment
unsigned int quality() const
return quality code
void reset()
reset eta track segment
unsigned int m_quality
L1MuBMTrackSegLoc m_location
std::vector< L1MuBMTrackSegEta > L1MuBMTrackSegEtaCollection
int bx() const
return bunch crossing
int wheel() const
return wheel
int station() const
return station