ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/HbbAnalysis/interface/Electron.hh
Revision: 1.4
Committed: Mon May 10 18:45:09 2010 UTC (14 years, 11 months ago) by amagnan
Content type: text/plain
Branch: MAIN
CVS Tags: v00-05-00
Changes since 1.3: +2 -0 lines
Log Message:
add etaDet calculation, rapidity, adapt to new reco::JPTJet format

File Contents

# User Rev Content
1 amagnan 1.1 #ifndef HbbAnalysis_Electron_hh
2     #define HbbAnalysis_Electron_hh
3    
4     #include <vector>
5     #include <string>
6    
7     #include "UserCode/HbbAnalysis/interface/Objects.hh"
8    
9     namespace HbbAnalysis {
10    
11     class Electron {
12    
13     public:
14    
15    
16     /** Constructors */
17    
18     Electron(){
19     //Clear();
20     };
21    
22     ~Electron(){};
23    
24     Electron(const HbbAnalysis::GenVars & aGen,
25     const HbbAnalysis::BaseVars & aReco,
26     const HbbAnalysis::SCVars & aSC,
27     const HbbAnalysis::EleIsoVars & aIso,
28     const HbbAnalysis::EleIDVars & aID
29     ){
30     Clear();
31     genVars(aGen);
32     recoVars(aReco);
33     scVars(aSC);
34     isoVars(aIso);
35     idVars(aID);
36    
37     };
38    
39     inline const HbbAnalysis::GenVars & genVars() const {
40     return gen_;
41     };
42    
43     inline const HbbAnalysis::BaseVars & recoVars() const {
44     return reco_;
45     };
46    
47     inline const HbbAnalysis::SCVars & scVars() const {
48     return sc_;
49     };
50    
51     inline const HbbAnalysis::EleIsoVars & isoVars() const {
52     return iso_;
53     };
54    
55     inline const HbbAnalysis::EleIDVars & idVars() const {
56     return id_;
57     };
58    
59     inline void genVars(const HbbAnalysis::GenVars & aGen) {
60     gen_ = aGen;
61     };
62    
63     inline void recoVars(const HbbAnalysis::BaseVars & aReco) {
64     reco_ = aReco;
65     };
66    
67     inline void scVars(const HbbAnalysis::SCVars & aSC) {
68     sc_ = aSC;
69     };
70    
71     inline void isoVars(const HbbAnalysis::EleIsoVars & aIso) {
72     iso_ = aIso;
73     };
74    
75     inline void idVars(const HbbAnalysis::EleIDVars & aID) {
76     id_ = aID;
77     };
78    
79     inline void Clear(){
80     gen_.valid = false;
81 amagnan 1.2 gen_.E = 0;
82 amagnan 1.1 gen_.pT = 0;
83     gen_.eta = 0;
84 amagnan 1.4 gen_.y = 0;
85 amagnan 1.1 gen_.phi = 0;
86     gen_.charge = 0;
87     gen_.pdgId = 0;
88     gen_.status = 0;
89     gen_.mass = 0;
90     gen_.vx = 0;
91     gen_.vy = 0;
92     gen_.vz = 0;
93    
94 amagnan 1.2 reco_.E = 0;
95 amagnan 1.1 reco_.pT = 0;
96     reco_.eta = 0;
97 amagnan 1.4 reco_.y = 0;
98 amagnan 1.1 reco_.phi = 0;
99     reco_.charge = 0;
100     reco_.vx = 0;
101     reco_.vy = 0;
102     reco_.vz = 0;
103    
104     sc_.sigmaEtaEta = 0;
105     sc_.sigmaIEtaIEta = 0;
106     sc_.e1x5 = 0;
107     sc_.e2x5Max = 0;
108     sc_.e5x5 = 0;
109     sc_.eOverP = 0;
110    
111     iso_.calo = 0;
112     iso_.track = 0;
113     iso_.ecal = 0;
114     iso_.hcal = 0;
115    
116     id_.electronIDs.clear();
117     id_.hOverE = 0;
118     id_.deltaPhiIn = 0;
119     id_.deltaEtaIn = 0;
120 amagnan 1.3 id_.ecalDrivenSeed = false;
121     id_.trackerDrivenSeed = false;
122 amagnan 1.1 };
123    
124     private:
125    
126     HbbAnalysis::GenVars gen_;
127     HbbAnalysis::BaseVars reco_;
128     HbbAnalysis::SCVars sc_;
129     HbbAnalysis::EleIsoVars iso_;
130     HbbAnalysis::EleIDVars id_;
131    
132     };
133    
134     inline bool operator < (const Electron & one, const Electron & two)
135     {
136     return one.recoVars().pT < two.recoVars().pT;
137     }
138    
139    
140     }//namespace
141     #endif