ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/Mods/interface/PhotonTreeWriter.h
(Generate patch)

Comparing UserCode/MitPhysics/Mods/interface/PhotonTreeWriter.h (file contents):
Revision 1.1 by bendavid, Wed Aug 3 17:15:43 2011 UTC vs.
Revision 1.2 by bendavid, Thu Sep 8 15:51:23 2011 UTC

# Line 21 | Line 21
21   #include "MitAna/DataTree/interface/DecayParticleCol.h"
22   #include "MitAna/DataTree/interface/PileupInfoCol.h"
23   #include "MitAna/DataTree/interface/MCParticleCol.h"
24 <
24 > #include "MitAna/DataTree/interface/SuperClusterCol.h"
25 > #include "MitAna/DataTree/interface/PFMetCol.h"
26 > #include "MitPhysics/Utils/interface/PhotonFix.h"
27   #include "MitPhysics/Utils/interface/PhotonTools.h"
28  
29   class TNtuple;
# Line 33 | Line 35 | namespace mithep
35    class PhotonTreeWriterPhoton
36    {
37      public:  
38 <      void SetVars(const Photon *p, const DecayParticle *c = 0, const MCParticle *m = 0);
38 >      void SetVars(const Photon *p, const DecayParticle *c, const Electron *ele, const SuperCluster *pfsc, const MCParticle *m, PhotonFix &phfixph, PhotonFix &phfixele);
39        Float_t Ecor()    const { return ecor;    };
40        Float_t Ecorerr() const { return ecorerr; };
41 +      Float_t Ecorele()    const { return ecorele;    };
42 +      Float_t Ecoreleerr() const { return ecoreleerr; };      
43        
44      private:  
45 +      Bool_t hasphoton;
46        Float_t e;
47        Float_t pt;
48        Float_t eta;
# Line 52 | Line 57 | namespace mithep
57        Float_t scphi;
58        UInt_t scnclusters;
59        UInt_t scnhits;
60 +      Float_t scetawidth;
61 +      Float_t scphiwidth;
62        Float_t hovere;
63        Float_t sigietaieta;
64        Bool_t isbarrel;
65        Bool_t isr9reco;
66        Bool_t isr9cat;
67 <      UChar_t phcat;
67 >      Char_t phcat;
68 >      Float_t eerr;
69 >      Float_t eerrsmeared;
70        
71        //quantities from seed basic cluster
72        Float_t sigiphiphi;
# Line 78 | Line 87 | namespace mithep
87        Float_t e2x5bottom;
88        Float_t e2x5left;
89        Float_t e2x5right;      
90 +      Float_t eseed;
91        
92        //energy correction quantities from PhotonFix
93        Float_t ecor;
94        Float_t ecorerr;
95 +      Float_t ecorele;
96 +      Float_t ecoreleerr;
97        Float_t etac;
98        Float_t etas;
99        Float_t etam;
# Line 119 | Line 131 | namespace mithep
131        Char_t convtrailtrackalgos;      
132        Char_t trailtrackcharge;
133        
134 +      //electron quantities
135 +      Bool_t haselectron;
136 +      Bool_t eleisecaldriven;      
137 +      Bool_t eleistrackerdriven;    
138 +      Float_t elee;
139 +      Float_t elept;
140 +      Float_t eleeta;
141 +      Float_t elephi;
142 +      Char_t elecharge;
143 +      Float_t elefbrem;
144 +      Float_t eledeta;
145 +      Float_t eledphi;
146 +      Float_t elep;
147 +      Float_t elepin;
148 +      Float_t elepout;
149 +      
150 +      //pf supercluster quantities
151 +      Bool_t haspfsc;
152 +      Float_t pfsce;
153 +      Float_t pfscrawe;
154 +      Float_t pfsceta;
155 +      Float_t pfscphi;
156        
157        //generator level quantities
158        Bool_t ispromptgen;
# Line 140 | Line 174 | namespace mithep
174        Float_t genHiggsZ;
175        Float_t genmass;
176        Float_t gencostheta;
177 +      Float_t bsX;
178 +      Float_t bsY;
179 +      Float_t bsZ;
180 +      Float_t vtxX;
181 +      Float_t vtxY;      
182        Float_t vtxZ;
183        Int_t   nVtx;
184        Int_t   numPU;
185        Int_t   numPUminus;
186        Int_t   numPUplus;
187        Float_t mass;
188 +      Float_t masserr;
189 +      Float_t masserrsmeared;
190        Float_t ptgg;
191        Float_t costheta;
192 +      Float_t massele;
193 +      Float_t ptee;
194 +      Float_t costhetaele;
195 +      Float_t mt;
196 +      Float_t cosphimet;
197 +      Float_t mtele;
198 +      Float_t cosphimetele;
199        UInt_t  evt;
200        UInt_t  run;
201        UInt_t  lumi;
202        UChar_t evtcat;
203 +      UInt_t  nobj;
204 +      Float_t pfmet;
205 +      Float_t pfmetphi;
206 +      Float_t pfmetx;
207 +      Float_t pfmety;
208 +      Bool_t  ismc;
209        
210        //corrected quantities from PhotonFix corrections
211        Float_t masscor;
212        Float_t masscorerr;
213 +      Float_t masscorele;
214 +      Float_t masscoreleerr;
215        
216        PhotonTreeWriterPhoton photons[2];
217  
# Line 183 | Line 239 | namespace mithep
239      void                SetPUInfoName(const char *n)      { fPileUpName = n;             }
240      void                SetBeamspotName(const char *n)    { fBeamspotName = n;           }
241      void                SetPFCandName(const char *n)      { fPFCandName = n;             }
242 <
242 >    void                SetSuperClusterName(const char *n) { fSuperClusterName = n;      }
243 >    void                SetPhFixDataFile(const char *n)   { fPhFixDataFile = n;          }
244  
245  
246      // set basic Cut variables (FOR PRE-SELECTION)
# Line 199 | Line 256 | namespace mithep
256      void                SetGoodElectronName(TString name) { fGoodElectronName = name; }
257      void                SetWriteDiphotonTree(Bool_t b)  { fWriteDiphotonTree = b; }
258      void                SetWriteSingleTree(Bool_t b)    { fWriteSingleTree = b; }
259 +    void                SetLoopOnGoodElectrons(Bool_t b) { fLoopOnGoodElectrons = b; }
260 +    void                SetExcludeSinglePrompt(Bool_t b) { fExcludeSinglePrompt = b; }
261 +    void                SetExcludeDoublePrompt(Bool_t b) { fExcludeDoublePrompt = b; }
262  
263    protected:
264      void                Process();
# Line 220 | Line 280 | namespace mithep
280      TString             fPFCandName;
281      TString             fMCParticleName;
282      TString             fPileUpName;
283 +    TString             fSuperClusterName;
284 +    TString             fPFMetName;
285      
286      // is it Data or MC?
287      Bool_t              fIsData;
# Line 240 | Line 302 | namespace mithep
302      const PFCandidateCol         *fPFCands;
303      const MCParticleCol          *fMCParticles;
304      const PileupInfoCol          *fPileUp;    
305 <      
305 >    const SuperClusterCol        *fSuperClusters;  
306 >    const PFMetCol               *fPFMet;
307 >    
308      // --------------------------------
309 +    Bool_t fLoopOnGoodElectrons; //primary loop over good electrons collection instead of photons
310      Bool_t              fInvertElectronVeto;    //=true then invert electron veto (for cic selection only atm)    
311      Bool_t fWriteDiphotonTree;
312      Bool_t fWriteSingleTree;
313  
314 +    Bool_t fExcludeSinglePrompt;
315 +    Bool_t fExcludeDoublePrompt;
316 +    
317 +    TString fPhFixDataFile;
318 +    PhotonFix fPhfixph;
319 +    PhotonFix fPhfixele;
320  
321      // --------------------------------
322      // validation Tuple

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines