ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/SelMods/interface/LeptonPlusIsolatedTrackSelMod.h
Revision: 1.1
Committed: Fri Mar 13 13:01:50 2009 UTC (16 years, 1 month ago) by sixie
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_008pre2
Log Message:
add lepton plus isolated track skim

File Contents

# Content
1 //--------------------------------------------------------------------------------------------------
2 // $Id $
3 //
4 // LeptonPlusIsolatedTrackSelMod
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_LEPTONPLUSISOLATEDTRACKSELMOD_H
13 #define MITPHYSICS_SELMODS_LEPTONPLUSISOLATEDTRACKSELMOD_H
14
15 #include "MitAna/TreeMod/interface/BaseSelMod.h"
16 #include <TH1D.h>
17
18 namespace mithep
19 {
20 class LeptonPlusIsolatedTrackSelMod : public BaseSelMod
21 {
22 public:
23 LeptonPlusIsolatedTrackSelMod(const char *name="LeptonPlusIsolatedTrackSelMod",
24 const char *title="Lepton plus isolated track selection module");
25 ~LeptonPlusIsolatedTrackSelMod() {}
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(LeptonPlusIsolatedTrackSelMod,1) // Generic selection module
71 };
72 }
73 #endif