CMS 3D CMS Logo

MuonShower.h
Go to the documentation of this file.
1 #ifndef DataFormats_L1Trigger_MuonShower_h
2 #define DataFormats_L1Trigger_MuonShower_h
3 
4 /*
5  This class is derived from the L1Candidate primarily to interface easily
6  with the Global Muon Trigger. In the trigger system the MuonShower object
7  carries only up to 4 bits of information, 2 for in-time showers,
8  2 for out-of-time showers.
9 */
10 
15 
16 namespace l1t {
17 
18  class MuonShower;
22  typedef std::vector<MuonShowerRef> MuonShowerVectorRef;
23 
27 
28  class MuonShower : public L1Candidate {
29  public:
30  MuonShower(bool oneNominalInTime = false,
31  bool oneNominalOutOfTime = false,
32  bool twoLooseInTime = false,
33  bool twoLooseOutOfTime = false);
34 
35  ~MuonShower() override;
36 
37  void setOneNominalInTime(const bool bit) { isOneNominalInTime_ = bit; }
38  void setOneNominalOutOfTime(const bool bit) { isOneNominalOutOfTime_ = bit; }
39  void setTwoLooseInTime(const bool bit) { isTwoLooseInTime_ = bit; }
40  void setTwoLooseOutOfTime(const bool bit) { isTwoLooseOutOfTime_ = bit; }
41 
42  bool isValid() const;
43  bool isOneNominalInTime() const { return isOneNominalInTime_; }
45  bool isTwoLooseInTime() const { return isTwoLooseInTime_; }
46  bool isTwoLooseOutOfTime() const { return isTwoLooseOutOfTime_; }
47 
48  virtual bool operator==(const l1t::MuonShower& rhs) const;
49  virtual inline bool operator!=(const l1t::MuonShower& rhs) const { return !(operator==(rhs)); };
50 
51  private:
52  // Run-3 definitions as provided in DN-20-033
53  // in time and out-of-time qualities. only 2 bits each.
58  };
59 
60 } // namespace l1t
61 
62 #endif
l1t::MuonShower::isTwoLooseOutOfTime_
bool isTwoLooseOutOfTime_
Definition: MuonShower.h:57
l1t::MuonShower::isOneNominalInTime_
bool isOneNominalInTime_
Definition: MuonShower.h:49
l1t::MuonShower::isOneNominalOutOfTime_
bool isOneNominalOutOfTime_
Definition: MuonShower.h:55
l1t::MuonShowerRefPair
ObjectRefPair< MuonShower > MuonShowerRefPair
Definition: MuonShower.h:25
BXVector.h
l1t::MuonShower::isOneNominalOutOfTime
bool isOneNominalOutOfTime() const
Definition: MuonShower.h:44
l1t::MuonShower::operator==
virtual bool operator==(const l1t::MuonShower &rhs) const
Definition: MuonShower.cc:16
edm::RefVector
Definition: EDProductfwd.h:27
l1t::MuonShowerBxCollection
BXVector< MuonShower > MuonShowerBxCollection
Definition: MuonShower.h:18
l1t::MuonShowerVectorRef
std::vector< MuonShowerRef > MuonShowerVectorRef
Definition: MuonShower.h:22
l1t::MuonShowerRef
edm::Ref< MuonShowerBxCollection > MuonShowerRef
Definition: MuonShower.h:20
edm::Ref
Definition: AssociativeIterator.h:58
BXVector
Definition: BXVector.h:15
l1t::MuonShower::isTwoLooseOutOfTime
bool isTwoLooseOutOfTime() const
Definition: MuonShower.h:46
l1t::L1Candidate
Definition: L1Candidate.h:15
l1t::MuonShower::isTwoLooseInTime_
bool isTwoLooseInTime_
Definition: MuonShower.h:56
l1t::MuonShower::~MuonShower
~MuonShower() override
Definition: MuonShower.cc:10
l1t::MuonShower::isValid
bool isValid() const
Definition: MuonShower.cc:12
l1t::MuonShower::setOneNominalInTime
void setOneNominalInTime(const bool bit)
Definition: MuonShower.h:37
l1t::MuonShower::operator!=
virtual bool operator!=(const l1t::MuonShower &rhs) const
Definition: MuonShower.h:49
l1t::MuonShower::isOneNominalInTime
bool isOneNominalInTime() const
Definition: MuonShower.h:43
l1t::MuonShower::MuonShower
MuonShower(bool oneNominalInTime=false, bool oneNominalOutOfTime=false, bool twoLooseInTime=false, bool twoLooseOutOfTime=false)
Definition: MuonShower.cc:3
l1t
delete x;
Definition: CaloConfig.h:22
l1t::ObjectRefPair
std::pair< edm::Ref< BXVector< T > >, edm::Ref< BXVector< T > >> ObjectRefPair
Definition: L1TObjComparison.h:14
L1Candidate.h
Ref.h
l1t::MuonShowerRefPairBxCollection
ObjectRefPairBxCollection< MuonShower > MuonShowerRefPairBxCollection
Definition: MuonShower.h:26
l1t::MuonShower::setTwoLooseOutOfTime
void setTwoLooseOutOfTime(const bool bit)
Definition: MuonShower.h:40
l1t::MuonShower::setOneNominalOutOfTime
void setOneNominalOutOfTime(const bool bit)
Definition: MuonShower.h:38
l1t::MuonShowerRefBxCollection
ObjectRefBxCollection< MuonShower > MuonShowerRefBxCollection
Definition: MuonShower.h:24
L1TObjComparison.h
l1t::MuonShower::isTwoLooseInTime
bool isTwoLooseInTime() const
Definition: MuonShower.h:45
l1t::MuonShower::setTwoLooseInTime
void setTwoLooseInTime(const bool bit)
Definition: MuonShower.h:39
l1t::MuonShowerRefVector
edm::RefVector< MuonShowerBxCollection > MuonShowerRefVector
Definition: MuonShower.h:21
l1t::MuonShower
Definition: MuonShower.h:28