ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/HbbAnalysis/interface/Muon.hh
Revision: 1.11
Committed: Tue Nov 8 21:41:46 2011 UTC (13 years, 5 months ago) by agilbert
Content type: text/plain
Branch: MAIN
CVS Tags: HEAD
Changes since 1.10: +2 -0 lines
Log Message:
Implement some basic print methods for the HbbEvent.

File Contents

# Content
1 #ifndef HbbAnalysis_Muon_hh
2 #define HbbAnalysis_Muon_hh
3
4 #include <vector>
5 #include <string>
6
7 #include "UserCode/HbbAnalysis/interface/Objects.hh"
8 #include "UserCode/HbbAnalysis/interface/Lepton.hh"
9
10 namespace HbbAnalysis {
11
12 class Muon : public Lepton{
13
14 public:
15 //Constructors
16 Muon();
17 Muon(const HbbAnalysis::FourMomentum & aFourVec,
18 const HbbAnalysis::LeptonVars & aLeptonVars,
19 const HbbAnalysis::MuTrkVars & aTrk,
20 const HbbAnalysis::MuIsoVars & aIsoR03,
21 const HbbAnalysis::MuIsoVars & aIsoR05,
22 const HbbAnalysis::MuIDVars & aID
23 ) : Lepton(aFourVec, aLeptonVars) {
24 trkVars(aTrk);
25 isoR03Vars(aIsoR03);
26 isoR05Vars(aIsoR05);
27 idVars(aID);
28 };
29
30 //Getters
31 inline const HbbAnalysis::MuTrkVars & trkVars() const {
32 return trk_;
33 };
34
35 inline const HbbAnalysis::MuIsoVars & isoR03Vars() const {
36 return isoR03_;
37 };
38
39 inline const HbbAnalysis::MuIsoVars & isoR05Vars() const {
40 return isoR05_;
41 };
42
43 inline const HbbAnalysis::MuIDVars & idVars() const {
44 return id_;
45 };
46
47 //Setters
48 inline void trkVars(const HbbAnalysis::MuTrkVars & aTrk) {
49 trk_ = aTrk;
50 };
51
52 inline void isoR03Vars(const HbbAnalysis::MuIsoVars & aIso) {
53 isoR03_ = aIso;
54 };
55
56 inline void isoR05Vars(const HbbAnalysis::MuIsoVars & aIso) {
57 isoR05_ = aIso;
58 };
59
60 inline void idVars(const HbbAnalysis::MuIDVars & aID) {
61 id_ = aID;
62 };
63
64 //Functions
65 inline bool isGlobalMu() const {
66 return (id_.type & 0x1);
67 };
68
69 inline bool isTrackerMu() const {
70 return (id_.type & 0x2) >> 1;
71 };
72
73 inline bool isStandAloneMu() const {
74 return (id_.type & 0x4) >> 2;
75 };
76
77 inline bool isCaloMu() const {
78 return (id_.type & 0x8) >> 3;
79 };
80
81 void Clear();
82
83 void Print() const;
84
85 private:
86 HbbAnalysis::MuTrkVars trk_;
87 HbbAnalysis::MuIsoVars isoR03_;
88 HbbAnalysis::MuIsoVars isoR05_;
89 HbbAnalysis::MuIDVars id_;
90
91 };
92
93 //inline bool operator < (const Muon & one, const Muon & two)
94 //{
95 // return one.recoVars().pT < two.recoVars().pT;
96 //}
97
98
99 }//namespace
100 #endif