CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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 public:
45 
47  L1MuBMTrackSegEta(int wheel_id, int sector_id, int station_id, int position = 0, int quality = 0, int bx = 17);
48 
50  L1MuBMTrackSegEta(const L1MuBMTrackSegLoc&, int position = 0, int quality = 0, int bx = 17);
51 
54 
56  virtual ~L1MuBMTrackSegEta();
57 
59  void reset();
60 
62  inline int wheel() const { return m_location.wheel(); }
63 
65  inline int sector() const { return m_location.sector(); }
66 
68  inline int station() const { return m_location.station(); }
69 
71  inline const L1MuBMTrackSegLoc& where() const { return m_location; }
72 
74  inline unsigned int position() const { return m_position; }
75 
77  inline unsigned int quality() const { return m_quality; }
78 
80  inline int bx() const { return m_bx; }
81 
83  inline bool empty() const { return m_position == 0; }
84 
87 
89  bool operator==(const L1MuBMTrackSegEta&) const;
90 
92  bool operator!=(const L1MuBMTrackSegEta&) const;
93 
95  friend std::ostream& operator<<(std::ostream&, const L1MuBMTrackSegEta&);
96 
97 private:
98  L1MuBMTrackSegLoc m_location; // logical location of a TS
99  unsigned int m_position; // 7 bits
100  unsigned int m_quality; // 7 bits
101  int m_bx; // bunch crossing identifier
102 };
103 
104 #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