ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/Utils/interface/ElectronTools.h
Revision: 1.4
Committed: Thu May 27 07:59:13 2010 UTC (14 years, 11 months ago) by ceballos
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_014pre3
Changes since 1.3: +4 -1 lines
Log Message:
updates on electrons and muons

File Contents

# User Rev Content
1 sixie 1.1 //--------------------------------------------------------------------------------------------------
2     // $Id $
3     //
4     // ElectronTools
5     //
6     // Helper Class for electron Identification decisions.
7     //
8     // Authors: S.Xie
9     //--------------------------------------------------------------------------------------------------
10    
11     #ifndef MITPHYSICS_UTILS_ELECTRONTOOLS_H
12     #define MITPHYSICS_UTILS_ELECTRONTOOLS_H
13    
14     #include "MitAna/DataTree/interface/Electron.h"
15     #include "MitAna/DataTree/interface/DecayParticleCol.h"
16     #include "MitAna/DataTree/interface/VertexCol.h"
17 sixie 1.2 #include "MitAna/DataTree/interface/BeamSpotCol.h"
18 sixie 1.1 #include "MitCommon/MathTools/interface/MathUtils.h"
19    
20     namespace mithep {
21     class ElectronTools {
22     public:
23     ElectronTools();
24    
25     enum EElIdType {
26     kIdUndef = 0, //not defined
27     kTight, //"Tight"
28     kLoose, //"Loose"
29     kLikelihood, //"Likelihood"
30     kNoId, //"NoId"
31     kZeeId, //"ZeeId"
32     kCustomIdLoose, //"CustomLoose"
33     kCustomIdTight, //"CustomTight"
34     kVBTFWorkingPoint95Id,
35     kVBTFWorkingPoint90Id,
36 ceballos 1.4 kVBTFWorkingPoint85Id,
37 sixie 1.1 kVBTFWorkingPoint80Id,
38     kVBTFWorkingPoint70Id
39     };
40    
41     enum EElIsoType {
42     kIsoUndef = 0, //not defined
43     kTrackCalo, //"TrackCalo"
44     kTrackJura, //"TrackJura"
45     kTrackJuraCombined, //"TrackJuraCombined"
46     kTrackJuraSliding, //"TrackJuraSliding"
47     kNoIso, //"NoIso"
48     kZeeIso, //"ZeeIso"
49     kCustomIso, //"Custom"
50     kVBTFWorkingPoint95Iso,
51     kVBTFWorkingPoint90Iso,
52 ceballos 1.4 kVBTFWorkingPoint85Iso,
53 sixie 1.1 kVBTFWorkingPoint80Iso,
54     kVBTFWorkingPoint70Iso
55     };
56    
57     static Bool_t PassChargeFilter(const Electron *el);
58     static Bool_t PassConversionFilter(const Electron *el, const DecayParticleCol *conversions,
59     Bool_t WrongHitsRequirement );
60     static Bool_t PassCustomID(const Electron *el, EElIdType idType);
61 ceballos 1.4 static Bool_t PassCustomIso(const Electron *el, EElIsoType isoType,
62     Bool_t useCombineIso = kTRUE);
63 sixie 1.1 static Bool_t PassD0Cut(const Electron *el, const VertexCol *vertices,
64     Double_t fD0Cut, Bool_t fReverseD0Cut);
65 sixie 1.2 static Bool_t PassD0Cut(const Electron *el, const BeamSpotCol *beamspots,
66     Double_t fD0Cut, Bool_t fReverseD0Cut);
67 sixie 1.1 static Bool_t PassSpikeRemovalFilter(const Electron *ele);
68 ceballos 1.3 static Int_t Classify(const Electron *ele);
69     static Int_t PassTightId(const Electron *ele, const VertexCol *vertices,
70     const DecayParticleCol *conversions, const Int_t typeCuts);
71 sixie 1.1
72     ClassDef(ElectronTools, 0) // Muon tools
73     };
74     }
75    
76     #endif