ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/Mods/interface/ElectronIDMod.h
Revision: 1.3
Committed: Wed Nov 5 14:06:06 2008 UTC (16 years, 6 months ago) by ceballos
Content type: text/plain
Branch: MAIN
Changes since 1.2: +15 -15 lines
Log Message:
adding one more name

File Contents

# User Rev Content
1 loizides 1.1 //--------------------------------------------------------------------------------------------------
2 ceballos 1.3 // $Id: ElectronIDMod.h,v 1.2 2008/10/23 12:23:31 ceballos Exp $
3 loizides 1.1 //
4     // ElectronIDMod
5     //
6     // This Module applies electron ID criteria and exports a pointer to a collection
7     // of Good Electrons according to some specified ID scheme
8     //
9     // Authors: S.Xie
10     //--------------------------------------------------------------------------------------------------
11    
12     #ifndef MITANA_TREEMOD_ELECTRONIDMOD_H
13     #define MITANA_TREEMOD_ELECTRONIDMOD_H
14    
15     #include "MitAna/TreeMod/interface/BaseMod.h"
16     #include "MitAna/DataTree/interface/Collections.h"
17    
18     class TH1D;
19     class TH2D;
20    
21     namespace mithep
22     {
23     class ElectronIDMod : public BaseMod
24     {
25     public:
26     ElectronIDMod(const char *name="ElectronIDMod",
27     const char *title="Example analysis module with all branches");
28     ~ElectronIDMod() {}
29     void SetPrintDebug(bool b) { fPrintDebug = b; }
30     void SetElectronPtMin(double p) { fElectronPtMin = p; }
31     void SetElectronIDType(TString type) { fElectronIDType = type; }
32     void SetElectronIsoType(TString type) { fElectronIsoType = type; }
33     void SetIDLikelihoodCut(Double_t cut) { fIDLikelihoodCut = cut; }
34     void SetTrackIsolationCut(Double_t cut) { fTrackIsolationCut = cut; }
35     void SetCaloIsolationCut(Double_t cut) { fCaloIsolationCut = cut; }
36     void SetEcalJurassicIsolationCut(Double_t cut) { fEcalJurassicIsolationCut = cut; }
37     void SetHcalJurassicIsolationCut(Double_t cut) { fHcalJurassicIsolationCut = cut; }
38     void SetGoodElectronsName(TString s) { fGoodElectronsName = s; }
39     protected:
40 ceballos 1.3 bool fPrintDebug; //flag for printing debug output
41     TString fElectronName; //name of electron collection
42     TString fGoodElectronsName ; //name of good electrons collection
43     TString fElectronIDType; //Type of electron ID we impose
44     TString fElectronIsoType; //Type of electron Isolation we impose
45     ElectronCol *fElectrons; //!Electron branch
46    
47     double fElectronPtMin; //min Pt requirement
48     double fIDLikelihoodCut; //Cut value for ID likelihood
49     double fTrackIsolationCut; //Cut value for track isolation
50     double fCaloIsolationCut; //Cut value for calo isolation
51     double fEcalJurassicIsolationCut; //Cut value for ecal jurassic isolation
52     double fHcalJurassicIsolationCut; //Cut value for hcal jurassic isolation
53 loizides 1.1
54 ceballos 1.3 int fNEventsProcessed; // Number of events processed
55 ceballos 1.2
56 loizides 1.1 void Begin();
57     void Process();
58     void SlaveBegin();
59     void SlaveTerminate();
60     void Terminate();
61    
62    
63     ClassDef(ElectronIDMod,1) // TAM example analysis module
64     };
65     }
66     #endif