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

Comparing UserCode/MitPhysics/Mods/interface/PhotonIDMod.h (file contents):
Revision 1.4 by loizides, Thu Dec 4 13:53:33 2008 UTC vs.
Revision 1.19 by fabstoec, Wed Jun 1 18:11:52 2011 UTC

# Line 13 | Line 13
13   #define MITPHYSICS_MODS_PHOTONIDMOD_H
14  
15   #include "MitAna/TreeMod/interface/BaseMod.h"
16 < #include "MitAna/DataTree/interface/Collections.h"
16 > #include "MitAna/DataTree/interface/PhotonFwd.h"
17 > #include "MitAna/DataTree/interface/TrackCol.h"
18 > #include "MitAna/DataTree/interface/BeamSpotCol.h"
19 > #include "MitAna/DataTree/interface/PileupEnergyDensityCol.h"
20 > #include "MitAna/DataTree/interface/DecayParticleCol.h"
21 > #include "MitAna/DataTree/interface/ElectronCol.h"
22  
23   namespace mithep
24   {
# Line 22 | Line 27 | namespace mithep
27      public:
28        PhotonIDMod(const char *name="PhotonIDMod",
29                    const char *title="Photon identification module");
25      ~PhotonIDMod() {}
26
27      void                SetPhotonBranchName(const char *n) { fPhotonBranchName= n;      }  
28      void                SetGoodPhotonsName(const char *n)  { fGoodPhotonsName = n;      }  
29      void                SetPhotonIDType(const char *type)  { fPhotonIDType    = type;   }
30      void                SetPhotonIsoType(const char *type) { fPhotonIsoType   = type;   }
31      void                SetPhotonPtMin(Double_t pt)        { fPhotonPtMin     = pt;     }
32      void                SetHadOverEmMax(Double_t hovere)   { fHadOverEmMax    = hovere; }
33      void                SetPhotonPtMin(Bool_t b)           { fApplyPixelSeed  = b;      }
34
30  
31 +      Bool_t              GetApplySpikeRemoval()      const { return fApplySpikeRemoval;   }
32 +      Bool_t              GetApplyPixelSeed()         const { return fApplyPixelSeed;      }
33 +      const char         *GetGoodName()               const { return GetGoodPhotonsName(); }  
34 +      const char         *GetGoodPhotonsName()        const { return fGoodPhotonsName;     }  
35 +      Double_t            GetHadOverEmMax()           const { return fHadOverEmMax;        }
36 +      const char         *GetIDType()                 const { return fPhotonIDType;        }
37 +      const char         *GetInputName()              const { return fPhotonBranchName;    }  
38 +      const char         *GetIsoType()                const { return fPhotonIsoType;       }
39 +      const char         *GetOutputName()             const { return GetGoodPhotonsName(); }  
40 +      Double_t            GetPtMin()                  const { return fPhotonPtMin;         }
41 +      Bool_t              GetApplyFiduciality()       const { return fFiduciality;         }
42 +      Double_t            GetEtaWidthEB()             const { return fEtaWidthEB;          }
43 +      Double_t            GetEtaWidthEE()             const { return fEtaWidthEE;          }
44 +      Double_t            GetAbsEtaMax()              const { return fAbsEtaMax;           }
45 +      void                SetApplySpikeRemoval(Bool_t b)    { fApplySpikeRemoval  = b;     }
46 +      void                SetApplyPixelSeed(Bool_t b)       { fApplyPixelSeed  = b;        }
47 +      void                SetApplyElectronVeto(Bool_t b)    { fApplyElectronVeto = b;      }
48 +      void                SetApplyElectronVetoConvRecovery(Bool_t b) { fApplyElectronVetoConvRecovery = b; }
49 +      void                SetApplyConversionId(Bool_t b)    { fApplyConversionId = b;      }
50 +      void                SetApplyTriggerMatching(Bool_t b)      { fApplyTriggerMatching = b;  }      
51 +      void                SetGoodName(const char *n)        { SetGoodPhotonsName(n);       }  
52 +      void                SetGoodPhotonsName(const char *n) { fGoodPhotonsName = n;        }  
53 +      void                SetHadOverEmMax(Double_t hoe)     { fHadOverEmMax    = hoe;      }
54 +      void                SetIDType(const char *type)       { fPhotonIDType    = type;     }
55 +      void                SetInputName(const char *n)       { fPhotonBranchName= n;        }  
56 +      void                SetTrackName(const char *n)       { fTrackBranchName = n;        }  
57 +      void                SetBeamspotName(const char *n)    { fBeamspotBranchName = n;     }  
58 +      void                SetIsoType(const char *type)      { fPhotonIsoType   = type;     }
59 +      void                SetOutputName(const char *n)      { SetGoodPhotonsName(n);       }    
60 +      void                SetPtMin(Double_t pt)             { fPhotonPtMin     = pt;       }
61 +      void                SetR9Min(Double_t x)              { fPhotonR9Min     = x;        }
62 +      void                SetEtaWidthEB(Double_t x)         { fEtaWidthEB      = x;        }
63 +      void                SetEtaWidthEE(Double_t x)         { fEtaWidthEE      = x;        }
64 +      void                SetAbsEtaMax(Double_t x)          { fAbsEtaMax       = x;        }
65 +      void                SetApplyR9Min(Bool_t b)           { fApplyR9Min      = b;        }
66 +      void                SetApplyFiduciality(Bool_t b)     { fFiduciality = b;            }      
67 +      void                SetEffAreas(Double_t ecal, Double_t hcal, Double_t track) {
68 +        fEffAreaEcalEE = ecal; fEffAreaHcalEE = hcal; fEffAreaTrackEE = track;
69 +        fEffAreaEcalEB = ecal; fEffAreaHcalEB = hcal; fEffAreaTrackEB = track;
70 +      }
71 +      void                SetEffAreasEEEB(Double_t ecalEE, Double_t hcalEE, Double_t trackEE,
72 +                                          Double_t ecalEB, Double_t hcalEB, Double_t trackEB) {
73 +        fEffAreaEcalEE = ecalEE; fEffAreaHcalEE = hcalEE; fEffAreaTrackEE = trackEE;
74 +        fEffAreaEcalEB = ecalEB; fEffAreaHcalEB = hcalEB; fEffAreaTrackEB = trackEB;
75 +      }
76 +      void                SetTriggerObjectsName(const char *n)   { fTrigObjectsName = n;       }
77 +    
78        enum EPhIdType {
79          kIdUndef = 0,       //not defined
80          kTight,             //"Tight"
81          kLoose,             //"Loose"
82          kLooseEM,           //"LooseEM"
83 +        kBaseLineId,        //"2011" Hgg BaseLine CiC
84          kCustomId           //"Custom"
85        };
86 +
87        enum EPhIsoType {
88          kIsoUndef = 0,      //not defined        
89          kNoIso,             //"NoIso"
90          kCombinedIso,       //"CombinedIso"
91 <        kCustomIso          //"Custom"
91 >        kCustomIso,         //"Custom"
92 >        kBaseLineIso,       //"2011" Hgg BaseLine CiC
93 >        kMITPUCorrected     //PileUp Corrected Hgg Isolation
94        };
95  
96      protected:
97 <      TString             fPhotonBranchName;     //branch name of electron collection
98 <      TString             fGoodPhotonsName;      //name of exported "good electrons" collection
99 <      TString             fPhotonIDType;         //type of electron ID we impose
100 <      TString             fPhotonIsoType;        //type of electron Isolation we impose
97 >      void                Process();
98 >      void                SlaveBegin();
99 >
100 >      TString             fPhotonBranchName;     //name of photon collection (input)
101 >      TString             fGoodPhotonsName;      //name of exported "good photon" collection
102 >      TString             fTrackBranchName;      // name of the track collection (only needed for PU corrected isolation)
103 >      TString             fBeamspotBranchName;   //name of the Beamspot collection (only needed for PU corrected isolation)
104 >      TString             fPileUpDenName;        //name of the PU density collection      
105 >      TString             fConversionName;       //name of conversion branch
106 >      TString             fElectronName;
107 >      TString             fTrigObjectsName;        //name of trigger object collection      
108 >      TString             fPhotonIDType;         //type of photon identification we impose
109 >      TString             fPhotonIsoType;        //type of photon isolation we impose
110        Double_t            fPhotonPtMin;          //min pt cut
111 <      Double_t            fHadOverEmMax;         //!maximum of hadronic/em energy
112 <      Bool_t              fApplyPixelSeed;       //!=true then apply PixelSeed
113 <      const PhotonCol    *fPhotons;              //!photon branch
111 >      Double_t            fHadOverEmMax;         //maximum of hadronic/em energy
112 >      Bool_t              fApplySpikeRemoval;    //whether apply spike removal      
113 >      Bool_t              fApplyPixelSeed;       //=true then apply pixel seed constraint
114 >      Bool_t              fApplyElectronVeto;    //=true then apply electron veto (with no conversion recovery)
115 >      Bool_t              fApplyElectronVetoConvRecovery; //=true then apply electron veto with conversion recovery
116 >      Bool_t              fApplyConversionId;    //=true then apply conversion id cuts
117 >      Bool_t              fApplyTriggerMatching;   //match to hlt photon (default=0)      
118 >      Double_t            fPhotonR9Min;          //min R9 value
119        EPhIdType           fPhIdType;             //!identification scheme
120        EPhIsoType          fPhIsoType;            //!isolation scheme
121 +      Bool_t              fFiduciality;          //=true then apply fiducual requirement
122 +      Double_t            fEtaWidthEB;           //max Eta Width in ECAL Barrel
123 +      Double_t            fEtaWidthEE;           //max Eta Width in ECAL End Cap
124 +      Double_t            fAbsEtaMax;            //max Abs Eta
125 +      Bool_t              fApplyR9Min;           //apply R9 min
126 +      Double_t            fEffAreaEcalEE;
127 +      Double_t            fEffAreaHcalEE;
128 +      Double_t            fEffAreaTrackEE;
129 +      Double_t            fEffAreaEcalEB;
130 +      Double_t            fEffAreaHcalEB;
131 +      Double_t            fEffAreaTrackEB;
132 +      const PhotonCol    *fPhotons;              //!photon branch
133 +      const TrackCol     *fTracks;               //!track branch
134 +      const BeamSpotCol  *fBeamspots;            //!beamspot branch    
135 +      const PileupEnergyDensityCol *fPileUpDen;  //!rho branch
136 +      const DecayParticleCol *fConversions;      //!conversion branch
137 +      const ElectronCol  *fElectrons;            //!electron branch
138  
139 <      void          Process();
140 <      void          SlaveBegin();
64 <    
65 <      ClassDef(PhotonIDMod,1) // Photon identification module
139 >
140 >    ClassDef(PhotonIDMod, 1) // Photon identification module
141    };
142   }
143   #endif

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines