File indexing completed on 2024-04-06 12:04:38
0001 #ifndef L1Trigger_L1MuonParticle_h
0002 #define L1Trigger_L1MuonParticle_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020 #include "DataFormats/Candidate/interface/LeafCandidate.h"
0021 #include "DataFormats/L1GlobalMuonTrigger/interface/L1MuGMTExtendedCand.h"
0022
0023
0024
0025 namespace l1extra {
0026
0027 class L1MuonParticle : public reco::LeafCandidate {
0028 public:
0029 L1MuonParticle();
0030
0031
0032
0033
0034
0035 L1MuonParticle(Charge q, const LorentzVector& p4, const L1MuGMTExtendedCand& aCand, int bx = 0);
0036
0037 L1MuonParticle(Charge q, const PolarLorentzVector& p4, const L1MuGMTExtendedCand& aCand, int bx = 0);
0038
0039
0040 L1MuonParticle(Charge q,
0041 const LorentzVector& p4,
0042 bool isolated = false,
0043 bool mip = false,
0044 bool forward = false,
0045 bool rpc = false,
0046 unsigned int detector = 0,
0047 int bx = 0);
0048
0049 L1MuonParticle(Charge q,
0050 const PolarLorentzVector& p4,
0051 bool isolated = false,
0052 bool mip = false,
0053 bool forward = false,
0054 bool rpc = false,
0055 unsigned int detector = 0,
0056 int bx = 0);
0057
0058 ~L1MuonParticle() override {}
0059
0060
0061 bool isIsolated() const { return isolated_; }
0062
0063 bool isMip() const { return mip_; }
0064
0065 bool isForward() const { return forward_; }
0066
0067 bool isRPC() const { return rpc_; }
0068
0069 const L1MuGMTExtendedCand& gmtMuonCand() const { return cand_; }
0070
0071 L1MuonParticle* clone() const override { return new L1MuonParticle(*this); }
0072
0073 int bx() const { return bx_; }
0074
0075
0076
0077
0078 void setIsolated(bool isIso) { isolated_ = isIso; }
0079
0080 void setMip(bool isMip) { mip_ = isMip; }
0081
0082 void setForward(bool isForward) { forward_ = isForward; }
0083
0084 void setRPC(bool isRPC) { rpc_ = isRPC; }
0085
0086 void setBx(int bx) { bx_ = bx; }
0087
0088 private:
0089
0090
0091
0092
0093
0094 bool isolated_;
0095 bool mip_;
0096 bool forward_;
0097 bool rpc_;
0098 L1MuGMTExtendedCand cand_;
0099 int bx_;
0100 };
0101 }
0102
0103 #endif