ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/HbbAnalysis/interface/Muon.hh
Revision: 1.3
Committed: Tue Oct 13 12:14:04 2009 UTC (15 years, 6 months ago) by amagnan
Content type: text/plain
Branch: MAIN
CVS Tags: HbbAnaFor35X, v00-04-02, v00-04-01, v00-04-00
Changes since 1.2: +15 -0 lines
Log Message:
add innerTrack IPd0, IPdz and nHits info for muons.

File Contents

# User Rev Content
1 amagnan 1.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    
9     namespace HbbAnalysis {
10    
11     class Muon {
12    
13     public:
14    
15     /** Constructors */
16    
17     Muon(){
18     //Clear();
19     };
20    
21     ~Muon(){};
22    
23     Muon(const HbbAnalysis::GenVars & aGen,
24     const HbbAnalysis::BaseVars & aReco,
25 amagnan 1.3 const HbbAnalysis::MuTrkVars & aTrk,
26 amagnan 1.1 const HbbAnalysis::MuIsoVars & aIsoR03,
27     const HbbAnalysis::MuIsoVars & aIsoR05,
28     const HbbAnalysis::MuIDVars & aID
29     ){
30     Clear();
31     genVars(aGen);
32     recoVars(aReco);
33 amagnan 1.3 trkVars(aTrk);
34 amagnan 1.1 isoR03Vars(aIsoR03);
35     isoR05Vars(aIsoR05);
36     idVars(aID);
37    
38     };
39    
40     inline const HbbAnalysis::GenVars & genVars() const {
41     return gen_;
42     };
43    
44     inline const HbbAnalysis::BaseVars & recoVars() const {
45     return reco_;
46     };
47    
48 amagnan 1.3 inline const HbbAnalysis::MuTrkVars & trkVars() const {
49     return trk_;
50     };
51    
52 amagnan 1.1 inline const HbbAnalysis::MuIsoVars & isoR03Vars() const {
53     return isoR03_;
54     };
55    
56     inline const HbbAnalysis::MuIsoVars & isoR05Vars() const {
57     return isoR05_;
58     };
59    
60     inline const HbbAnalysis::MuIDVars & idVars() const {
61     return id_;
62     };
63    
64     inline void genVars(const HbbAnalysis::GenVars & aGen) {
65     gen_ = aGen;
66     };
67    
68     inline void recoVars(const HbbAnalysis::BaseVars & aReco) {
69     reco_ = aReco;
70     };
71    
72 amagnan 1.3 inline void trkVars(const HbbAnalysis::MuTrkVars & aTrk) {
73     trk_ = aTrk;
74     };
75    
76 amagnan 1.1 inline void isoR03Vars(const HbbAnalysis::MuIsoVars & aIso) {
77     isoR03_ = aIso;
78     };
79    
80     inline void isoR05Vars(const HbbAnalysis::MuIsoVars & aIso) {
81     isoR05_ = aIso;
82     };
83    
84     inline void idVars(const HbbAnalysis::MuIDVars & aID) {
85     id_ = aID;
86     };
87    
88     inline void Clear(){
89     gen_.valid = false;
90 amagnan 1.2 gen_.E = 0;
91 amagnan 1.1 gen_.pT = 0;
92     gen_.eta = 0;
93     gen_.phi = 0;
94     gen_.charge = 0;
95     gen_.pdgId = 0;
96     gen_.status = 0;
97     gen_.mass = 0;
98     gen_.vx = 0;
99     gen_.vy = 0;
100     gen_.vz = 0;
101    
102 amagnan 1.2 reco_.E = 0;
103 amagnan 1.1 reco_.pT = 0;
104     reco_.eta = 0;
105     reco_.phi = 0;
106     reco_.charge = 0;
107     reco_.vx = 0;
108     reco_.vy = 0;
109     reco_.vz = 0;
110    
111 amagnan 1.3 trk_.IPd0 = 0;
112     trk_.IPdz = 0;
113     trk_.nHits = 0;
114    
115 amagnan 1.1 isoR03_.sumPt = 0;
116     isoR03_.emEt = 0;
117     isoR03_.hadEt = 0;
118     isoR03_.nTracks = 0;
119     isoR03_.nJets = 0;
120    
121     isoR05_.sumPt = 0;
122     isoR05_.emEt = 0;
123     isoR05_.hadEt = 0;
124     isoR05_.nTracks = 0;
125     isoR05_.nJets = 0;
126    
127     id_.type = 0;
128     id_.ids.clear();
129     id_.caloCompat = 0;
130     id_.segCompat = 0;
131     id_.nChambers = 0;
132     id_.nMatchesLoose = 0;
133     id_.nMatchesMedium = 0;
134     id_.nMatchesTight = 0;
135     };
136    
137     private:
138    
139     HbbAnalysis::GenVars gen_;
140     HbbAnalysis::BaseVars reco_;
141 amagnan 1.3 HbbAnalysis::MuTrkVars trk_;
142 amagnan 1.1 HbbAnalysis::MuIsoVars isoR03_;
143     HbbAnalysis::MuIsoVars isoR05_;
144     HbbAnalysis::MuIDVars id_;
145    
146     };
147    
148     inline bool operator < (const Muon & one, const Muon & two)
149     {
150     return one.recoVars().pT < two.recoVars().pT;
151     }
152    
153    
154     }//namespace
155     #endif