ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/HbbAnalysis/interface/Electron.hh
Revision: 1.3
Committed: Fri Mar 26 17:52:50 2010 UTC (15 years, 1 month 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: +2 -0 lines
Log Message:
add seed variables to electrons

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