CMS 3D CMS Logo

EMTFGEMDetId.h
Go to the documentation of this file.
1 #ifndef L1TMuonEndCap_EMTFGEMDetId_h
2 #define L1TMuonEndCap_EMTFGEMDetId_h
3 
6 
7 #include <cstdint>
8 #include <iosfwd>
9 
10 class GEMDetId;
11 class ME0DetId;
12 
13 class EMTFGEMDetId {
14 public:
15  explicit EMTFGEMDetId(const GEMDetId& id);
16  explicit EMTFGEMDetId(const ME0DetId& id);
17 
19  bool operator<(const EMTFGEMDetId& r) const;
20 
22  int region() const;
23  int ring() const; // NOTE: use ME0 --> ring 4 convention
24  int station() const; // NOTE: use ME0 --> station 1 convention
25  int layer() const;
26  int chamber() const;
27  int roll() const;
28 
29  bool isME0() const { return isME0_; }
30 
31  GEMDetId getGEMDetId() const { return gemDetId_; }
32 
33  ME0DetId getME0DetId() const { return me0DetId_; }
34 
35 private:
38  bool isME0_;
39 };
40 
41 std::ostream& operator<<(std::ostream& os, const EMTFGEMDetId& id);
42 
43 #endif
std::ostream & operator<<(std::ostream &os, const EMTFGEMDetId &id)
Definition: EMTFGEMDetId.cc:63
ME0DetId me0DetId_
Definition: EMTFGEMDetId.h:37
int layer() const
Definition: EMTFGEMDetId.cc:42
int roll() const
Definition: EMTFGEMDetId.cc:56
int region() const
The identifiers.
Definition: EMTFGEMDetId.cc:19
int chamber() const
Definition: EMTFGEMDetId.cc:49
bool operator<(const EMTFGEMDetId &r) const
Sort Operator based on the raw detector id.
Definition: EMTFGEMDetId.cc:8
bool isME0() const
Definition: EMTFGEMDetId.h:29
int station() const
Definition: EMTFGEMDetId.cc:34
ME0DetId getME0DetId() const
Definition: EMTFGEMDetId.h:33
EMTFGEMDetId(const GEMDetId &id)
Definition: EMTFGEMDetId.cc:3
GEMDetId getGEMDetId() const
Definition: EMTFGEMDetId.h:31
GEMDetId gemDetId_
Definition: EMTFGEMDetId.h:36
int ring() const
Definition: EMTFGEMDetId.cc:26