ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/HbbAnalysis/interface/Electron.hh
Revision: 1.1
Committed: Thu Sep 17 19:39:50 2009 UTC (15 years, 7 months ago) by amagnan
Content type: text/plain
Branch: MAIN
CVS Tags: v00-03-00
Log Message:
add Tree

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     gen_.pT = 0;
82     gen_.eta = 0;
83     gen_.phi = 0;
84     gen_.charge = 0;
85     gen_.pdgId = 0;
86     gen_.status = 0;
87     gen_.mass = 0;
88     gen_.vx = 0;
89     gen_.vy = 0;
90     gen_.vz = 0;
91    
92     reco_.pT = 0;
93     reco_.eta = 0;
94     reco_.phi = 0;
95     reco_.charge = 0;
96     reco_.vx = 0;
97     reco_.vy = 0;
98     reco_.vz = 0;
99    
100     sc_.sigmaEtaEta = 0;
101     sc_.sigmaIEtaIEta = 0;
102     sc_.e1x5 = 0;
103     sc_.e2x5Max = 0;
104     sc_.e5x5 = 0;
105     sc_.eOverP = 0;
106    
107     iso_.calo = 0;
108     iso_.track = 0;
109     iso_.ecal = 0;
110     iso_.hcal = 0;
111    
112     id_.electronIDs.clear();
113     id_.hOverE = 0;
114     id_.deltaPhiIn = 0;
115     id_.deltaEtaIn = 0;
116     };
117    
118     private:
119    
120     HbbAnalysis::GenVars gen_;
121     HbbAnalysis::BaseVars reco_;
122     HbbAnalysis::SCVars sc_;
123     HbbAnalysis::EleIsoVars iso_;
124     HbbAnalysis::EleIDVars id_;
125    
126     };
127    
128     inline bool operator < (const Electron & one, const Electron & two)
129     {
130     return one.recoVars().pT < two.recoVars().pT;
131     }
132    
133    
134     }//namespace
135     #endif