CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
RegionalMuonShower.h
Go to the documentation of this file.
1 #ifndef DataFormats_L1Trigger_RegionalMuonShower_h
2 #define DataFormats_L1Trigger_RegionalMuonShower_h
3 
7 
8 #include "RegionalMuonCandFwd.h" // For tftype.
9 
10 namespace l1t {
11 
17 
19  public:
20  RegionalMuonShower(bool oneNominalInTime = false,
21  bool oneNominalOutOfTime = false,
22  bool twoLooseInTime = false,
23  bool twoLooseOutOfTime = false,
24  bool oneTightInTime = false,
25  bool oneTightOutOfTime = false);
26 
28 
29  void setOneNominalInTime(const bool bit) { isOneNominalInTime_ = bit; }
30  void setOneNominalOutOfTime(const bool bit) { isOneNominalOutOfTime_ = bit; }
31  void setOneTightInTime(const bool bit) { isOneTightInTime_ = bit; }
32  void setOneTightOutOfTime(const bool bit) { isOneTightOutOfTime_ = bit; }
33  void setTwoLooseOutOfTime(const bool bit) { isTwoLooseOutOfTime_ = bit; }
34  void setTwoLooseInTime(const bool bit) { isTwoLooseInTime_ = bit; }
35 
37  void setTFIdentifiers(int processor, tftype trackFinder);
38 
39  bool isValid() const;
40  bool isOneNominalInTime() const { return isOneNominalInTime_; }
42  bool isOneTightInTime() const { return isOneTightInTime_; }
43  bool isOneTightOutOfTime() const { return isOneTightOutOfTime_; }
44  bool isTwoLooseInTime() const { return isTwoLooseInTime_; }
45  bool isTwoLooseOutOfTime() const { return isTwoLooseOutOfTime_; }
46 
48  const int link() const { return link_; };
50  const int processor() const { return processor_; };
52  const tftype trackFinderType() const { return trackFinder_; };
53 
54  bool operator==(const l1t::RegionalMuonShower& rhs) const;
55  inline bool operator!=(const l1t::RegionalMuonShower& rhs) const { return !(operator==(rhs)); };
56 
57  private:
58  // Run-3 definitions as provided in DN-20-033
59  // in time and out-of-time qualities. only 2 bits each.
66  int link_;
69  };
70 
71 } // namespace l1t
72 
73 #endif
void setOneTightInTime(const bool bit)
ObjectRefPair< RegionalMuonShower > RegionalMuonShowerRefPair
bool operator!=(const l1t::RegionalMuonShower &rhs) const
void setOneTightOutOfTime(const bool bit)
RegionalMuonShower(bool oneNominalInTime=false, bool oneNominalOutOfTime=false, bool twoLooseInTime=false, bool twoLooseOutOfTime=false, bool oneTightInTime=false, bool oneTightOutOfTime=false)
bool isOneTightOutOfTime() const
void setTwoLooseInTime(const bool bit)
bool isOneNominalInTime() const
bool isOneNominalOutOfTime() const
bool isTwoLooseOutOfTime() const
const int processor() const
Get processor ID on which the candidate was found (0..5 for OMTF/EMTF; 0..11 for BMTF) ...
std::pair< edm::Ref< BXVector< T >>, edm::Ref< BXVector< T >>> ObjectRefPair
BXVector< RegionalMuonShower > RegionalMuonShowerBxCollection
void setOneNominalInTime(const bool bit)
const int link() const
Get link on which the MicroGMT receives the candidate.
ObjectRefBxCollection< RegionalMuonShower > RegionalMuonShowerRefBxCollection
void setTFIdentifiers(int processor, tftype trackFinder)
Set the processor ID, track-finder type. From these two, the link is set.
const tftype trackFinderType() const
Get track-finder which found the muon (bmtf, emtf_pos/emtf_neg or omtf_pos/omtf_neg) ...
void setTwoLooseOutOfTime(const bool bit)
void setOneNominalOutOfTime(const bool bit)
ObjectRefPairBxCollection< RegionalMuonShower > RegionalMuonShowerRefPairBxCollection
bool operator==(const l1t::RegionalMuonShower &rhs) const