ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/SelMods/interface/LeptonPlusIsoTrackSelMod.h
Revision: 1.1
Committed: Sun Mar 22 09:04:13 2009 UTC (16 years, 1 month ago) by loizides
Content type: text/plain
Branch: MAIN
Log Message:
Added skimming code for jet,lepton,photon plus iso tracks.

File Contents

# User Rev Content
1 loizides 1.1 //--------------------------------------------------------------------------------------------------
2     // $Id: $
3     //
4     // LeptonPlusIsoTrackSelMod
5     //
6     // This module selects events containing one lepton and one isolated track
7     // Both gsfTracks and tracker tracks are considered.
8     //
9     // Authors: S. Xie
10     //--------------------------------------------------------------------------------------------------
11    
12     #ifndef MITPHYSICS_SELMODS_LEPTONPLUSISOTRACKSELMOD_H
13     #define MITPHYSICS_SELMODS_LEPTONPLUSISOTRACKSELMOD_H
14    
15     #include "MitAna/TreeMod/interface/BaseSelMod.h"
16     #include <TH1D.h>
17    
18     namespace mithep
19     {
20     class LeptonPlusIsoTrackSelMod : public BaseSelMod
21     {
22     public:
23     LeptonPlusIsoTrackSelMod(const char *name="LeptonPlusIsoTrackSelMod",
24     const char *title="Lepton plus isolated track selection module");
25     ~LeptonPlusIsoTrackSelMod() {}
26    
27     const char *GetLeptonColName() const { return fLeptonColName; }
28     const char *GetTrackerTrackColName() const { return fTrackerTrackColName; }
29     const char *GetGsfTrackColName() const { return fGsfTrackColName; }
30     Double_t GetLeptonEtaMin() const { return fLeptonEtaMin; }
31     Double_t GetLeptonEtaMax() const { return fLeptonEtaMax; }
32     Double_t GetLeptonPtMin() const { return fLeptonPtMin; }
33     Double_t GetLeptonPtMax() const { return fLeptonPtMax; }
34     Double_t GetTrackEtaMin() const { return fTrackEtaMin; }
35     Double_t GetTrackEtaMax() const { return fTrackEtaMax; }
36     Double_t GetTrackPtMin() const { return fTrackPtMin; }
37     Double_t GetTrackPtMax() const { return fTrackPtMax; }
38     void SetLeptonColName(const char *n) { fLeptonColName=n; }
39     void SetTrackerTrackColName(const char *n) { fTrackerTrackColName=n; }
40     void SetGsfTrackColName(const char *n) { fGsfTrackColName=n; }
41     void SetLeptonEtaMin(Double_t e) { fLeptonEtaMin = e; }
42     void SetLeptonEtaMax(Double_t e) { fLeptonEtaMax = e; }
43     void SetLeptonPtMin(Double_t pt) { fLeptonPtMin = pt; }
44     void SetLeptonPtMax(Double_t pt) { fLeptonPtMax = pt; }
45     void SetTrackEtaMin(Double_t e) { fTrackEtaMin = e; }
46     void SetTrackEtaMax(Double_t e) { fTrackEtaMax = e; }
47     void SetTrackPtMin(Double_t pt) { fTrackPtMin = pt; }
48     void SetTrackPtMax(Double_t pt) { fTrackPtMax = pt; }
49    
50     protected:
51     void Process();
52     void SlaveBegin();
53    
54     TString fLeptonColName; //name of input lepton collection
55     TString fTrackerTrackColName; //name of input lepton collection
56     TString fGsfTrackColName; //name of input lepton collection
57     Double_t fLeptonPtMin; //minimum pt required (def = 0 GeV)
58     Double_t fLeptonPtMax; //maximum pt required (def = 5000 GeV)
59     Double_t fLeptonEtaMin; //minimum eta required (def = -10)
60     Double_t fLeptonEtaMax; //maximum eta required (def = +10)
61     Double_t fTrackPtMin; //minimum pt required (def = 0 GeV)
62     Double_t fTrackPtMax; //maximum pt required (def = 5000 GeV)
63     Double_t fTrackEtaMin; //minimum eta required (def = -10)
64     Double_t fTrackEtaMax; //maximum eta required (def = +10)
65     const ParticleCol *fLeptonCol; //!pointer to collection
66     const TrackCol *fTrackerTrackCol; //!pointer to collection
67     const TrackCol *fGsfTrackCol; //!pointer to collection
68     TH1D *fNAccCounters; //!acceptance histogram
69    
70     ClassDef(LeptonPlusIsoTrackSelMod,1) // Lepton plus isolated track selection module
71     };
72     }
73     #endif