CMS 3D CMS Logo

L1MuonParticle.h
Go to the documentation of this file.
1 #ifndef L1Trigger_L1MuonParticle_h
2 #define L1Trigger_L1MuonParticle_h
3 // -*- C++ -*-
4 //
5 // Package: L1Trigger
6 // Class : L1MuonParticle
7 //
12 //
13 // Original Author: Werner Sun
14 // Created: Sat Jul 15 12:41:07 EDT 2006
15 //
16 
17 // system include files
18 
19 // user include files
22 
23 // forward declarations
24 
25 namespace l1extra {
26 
28  {
29 
30  public:
32 
33  // Eventually, all L1MuGMTCands will be L1MuGMTExtendedCands,
34  // as soon as dictionaries for them exist in
35  // L1Trigger/GlobalMuonTrigger.
36 
38  const LorentzVector& p4,
39  const L1MuGMTExtendedCand& aCand,
40  int bx = 0 ) ;
41 
43  const PolarLorentzVector& p4,
44  const L1MuGMTExtendedCand& aCand,
45  int bx = 0 ) ;
46 
47  // Creates null Ref.
49  const LorentzVector& p4,
50  bool isolated = false,
51  bool mip = false,
52  bool forward = false,
53  bool rpc = false,
54  unsigned int detector = 0,
55  int bx = 0 ) ;
56 
58  const PolarLorentzVector& p4,
59  bool isolated = false,
60  bool mip = false,
61  bool forward = false,
62  bool rpc = false,
63  unsigned int detector = 0,
64  int bx = 0 ) ;
65 
66  ~L1MuonParticle() override {}
67 
68  // ---------- const member functions ---------------------
69  bool isIsolated() const
70  { return isolated_ ; }
71 
72  bool isMip() const
73  { return mip_ ; }
74 
75  bool isForward() const
76  { return forward_ ; }
77 
78  bool isRPC() const
79  { return rpc_ ; }
80 
82  { return cand_ ; }
83 
84  L1MuonParticle* clone() const override
85  { return new L1MuonParticle( *this ) ; }
86 
87  int bx() const
88  { return bx_ ; }
89 
90  // ---------- static member functions --------------------
91 
92  // ---------- member functions ---------------------------
93  void setIsolated( bool isIso )
94  { isolated_ = isIso ; }
95 
96  void setMip( bool isMip )
97  { mip_ = isMip ; }
98 
99  void setForward( bool isForward )
100  { forward_ = isForward ; }
101 
102  void setRPC( bool isRPC )
103  { rpc_ = isRPC ; }
104 
105  void setBx( int bx )
106  { bx_ = bx ; }
107 
108  private:
109  // L1MuonParticle(const L1MuonParticle&); // stop default
110 
111  // const L1MuonParticle& operator=(const L1MuonParticle&); // stop default
112 
113  // ---------- member data --------------------------------
114  bool isolated_ ;
115  bool mip_ ;
116  bool forward_ ;
117  bool rpc_ ;
119  int bx_ ;
120  };
121 }
122 
123 #endif
int Charge
electric charge type
Definition: Candidate.h:35
void setMip(bool isMip)
bool isIsolated() const
L1MuGMTExtendedCand cand_
L1MuonParticle * clone() const override
returns a clone of the Candidate object
const LorentzVector & p4() const final
four-momentum Lorentz vector
Definition: LeafCandidate.h:99
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:37
const L1MuGMTExtendedCand & gmtMuonCand() const
void setRPC(bool isRPC)
void setIsolated(bool isIso)
void setForward(bool isForward)
math::PtEtaPhiMLorentzVector PolarLorentzVector
Lorentz vector.
Definition: Candidate.h:39