ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/Mods/interface/PhotonIDMod.h
Revision: 1.5
Committed: Wed Dec 10 11:44:33 2008 UTC (16 years, 4 months ago) by loizides
Content type: text/plain
Branch: MAIN
Changes since 1.4: +5 -5 lines
Log Message:
Added sort.

File Contents

# User Rev Content
1 sixie 1.1 //--------------------------------------------------------------------------------------------------
2 loizides 1.5 // $Id: PhotonIDMod.h,v 1.4 2008/12/04 13:53:33 loizides Exp $
3 sixie 1.1 //
4     // PhotonIDMod
5     //
6     // This module applies photon identification criteria and exports a pointer to a collection
7     // of "good photons" according to the specified identification scheme.
8     //
9     // Authors: S.Xie, C.Loizides
10     //--------------------------------------------------------------------------------------------------
11    
12     #ifndef MITPHYSICS_MODS_PHOTONIDMOD_H
13     #define MITPHYSICS_MODS_PHOTONIDMOD_H
14    
15     #include "MitAna/TreeMod/interface/BaseMod.h"
16     #include "MitAna/DataTree/interface/Collections.h"
17    
18     namespace mithep
19     {
20     class PhotonIDMod : public BaseMod
21     {
22     public:
23     PhotonIDMod(const char *name="PhotonIDMod",
24 loizides 1.3 const char *title="Photon identification module");
25 sixie 1.1 ~PhotonIDMod() {}
26    
27 loizides 1.4 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 sixie 1.1
35    
36     enum EPhIdType {
37     kIdUndef = 0, //not defined
38     kTight, //"Tight"
39     kLoose, //"Loose"
40 ceballos 1.2 kLooseEM, //"LooseEM"
41 sixie 1.1 kCustomId //"Custom"
42     };
43     enum EPhIsoType {
44     kIsoUndef = 0, //not defined
45     kNoIso, //"NoIso"
46 ceballos 1.2 kCombinedIso, //"CombinedIso"
47 sixie 1.1 kCustomIso //"Custom"
48     };
49    
50     protected:
51 loizides 1.5 void Process();
52     void SlaveBegin();
53    
54 loizides 1.4 TString fPhotonBranchName; //branch name of electron collection
55     TString fGoodPhotonsName; //name of exported "good electrons" collection
56     TString fPhotonIDType; //type of electron ID we impose
57     TString fPhotonIsoType; //type of electron Isolation we impose
58     Double_t fPhotonPtMin; //min pt cut
59     Double_t fHadOverEmMax; //!maximum of hadronic/em energy
60     Bool_t fApplyPixelSeed; //!=true then apply PixelSeed
61     const PhotonCol *fPhotons; //!photon branch
62     EPhIdType fPhIdType; //!identification scheme
63     EPhIsoType fPhIsoType; //!isolation scheme
64 sixie 1.1
65 loizides 1.5 ClassDef(PhotonIDMod,1) // Photon identification module
66 sixie 1.1 };
67     }
68     #endif