ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/FakeMods/interface/FakeLeptonExampleAnaMod.h
Revision: 1.1
Committed: Tue Jun 30 10:47:16 2009 UTC (15 years, 10 months ago) by loizides
Content type: text/plain
Branch: MAIN
Log Message:
Added FakeMods.

File Contents

# Content
1 //--------------------------------------------------------------------------------------------------
2 // $Id: $
3 //
4 // FakeLeptonExampleAnaMod
5 //
6 // A Module for Selecting H->WW events
7 // and produces some distributions.
8 //
9 //
10 // Authors: Si Xie
11 //--------------------------------------------------------------------------------------------------
12
13 #ifndef MITHIGGS_HWWMODS_FAKELEPTONEXAMPLEANAMOD_H
14 #define MITHIGGS_HWWMODS_FAKELEPTONEXAMPLEANAMOD_H
15
16 #include "MitAna/TreeMod/interface/BaseMod.h"
17 #include "MitAna/DataTree/interface/Collections.h"
18
19 class TH1D;
20 class TH2D;
21
22 namespace mithep
23 {
24 class FakeLeptonExampleAnaMod : public BaseMod
25 {
26 public:
27 FakeLeptonExampleAnaMod(const char *name="FakeLeptonExampleAnaMod",
28 const char *title="Example analysis module with all branches");
29 ~FakeLeptonExampleAnaMod() {}
30
31 Bool_t GetUseMCFake() { return fUseMCFake; }
32 Bool_t GetPerformFakeMuonMetCorrection() { return fPerformFakeMuonMetCorrection; }
33 const char *GetSampleName() const { return fSampleName; }
34 const char *GetFakeEventHeaderName() const { return fFakeEventHeaderName; }
35 const char *GetElectronFakeableObjectsName() const { return fElectronFakeableObjectsName; }
36 const char *GetMuonFakeableObjectsName() const { return fMuonFakeableObjectsName; }
37 const char *GetMCPartBranchName() const { return fMCPartBranchName; }
38 const char *GetGenJetBranchName() const { return fGenJetBranchName; }
39 const char *GetTrackBranchName() const { return fTrackBranchName; }
40 const char *GetMuonBranchName() const { return fMuonBranchName; }
41 const char *GetMetName() const { return fMetName; }
42 const char *GetTriggerObjectsName() const { return fTriggerObjectsName; }
43
44 void SetUseMCFake(Bool_t b) { fUseMCFake = b; }
45 void SetPerformFakeMuonMetCorrection(Bool_t b) { fPerformFakeMuonMetCorrection = b; }
46 void SetSampleName(const char *s) { fSampleName = s; }
47 void SetFakeEventHeaderName (const char *s) { fFakeEventHeaderName = s; }
48 void SetElectronFakeableObjectsName(const char *s) { fElectronFakeableObjectsName = s; }
49 void SetMuonFakeableObjectsName(const char *s) { fMuonFakeableObjectsName = s; }
50 void SetCleanJetsName (TString s) { fCleanJetsName = s; }
51 void SetMCPartBranchName (TString s) { fMCPartBranchName = s; }
52 void SetGenJetBranchName (TString s) { fGenJetBranchName = s; }
53 void SetTrackBranchName (TString s) { fTrackBranchName = s; }
54 void SetMuonBranchName (TString s) { fMuonBranchName = s; }
55 void SetMetName (TString s) { fMetName = s; }
56 void SetTriggerObjectsName(const char *name) { fTriggerObjectsName = name; }
57
58 protected:
59 Bool_t fUseMCFake; //whether to use MC simulation fakes
60 Bool_t fPerformFakeMuonMetCorrection; //whether to perform fake muon
61 //met correction
62 TString fSampleName; //name of Sample
63 TString fFakeEventHeaderName; //name of fake event header (input)
64 TString fElectronFakeableObjectsName; //name of electron denominators (input)
65 TString fMuonFakeableObjectsName; //name of muon denominators (input)
66 TString fMCPartBranchName; //name of particle collection
67 TString fGenJetBranchName; //name of genjet collection
68 TString fTrackBranchName; //name of track collection
69 TString fMuonBranchName; //name of muon collection
70 TString fMetName; //name of met collection
71 TString fCleanJetsName; //name of clean central jets collection
72 TString fTriggerObjectsName; //name of trigger objects
73 const MCParticleCol *fParticles; //!GenParticle branch
74 const GenJetCol *fGenJets; //!GenJet branch
75 const TrackCol *fTracks; //!Track branch
76 const MuonCol *fMuons; //!Muon branch
77 const MetCol *fMet; //!Missing Et
78
79
80 TH1D *fDileptonCharge;
81 TH1D *fLeptonPtMax;
82 TH1D *fLeptonPtMin;
83 TH1D *fMetPtHist;
84 TH1D *fDeltaPhiLeptons;
85 TH1D *fDeltaEtaLeptons;
86 TH1D *fDileptonMass;
87
88 TH1D *fLeptonEta_NMinusOne;
89 TH1D *fLeptonPtMax_NMinusOne;
90 TH1D *fLeptonPtMin_NMinusOne;
91 TH1D *fMetPtHist_NMinusOne;
92 TH1D *fMetPhiHist_NMinusOne;
93 TH1D *fMETdeltaPhilEtHist_NMinusOne;
94 TH1D *fNCentralJets_NMinusOne;
95 TH1D *fNDirtyMuonsHist_NMinusOne;
96 TH1D *fNCleanExtraTracksHist_NMinusOne;
97 TH1D *fDeltaPhiLeptons_NMinusOne;
98 TH1D *fDeltaEtaLeptons_NMinusOne;
99 TH1D *fDileptonMass_NMinusOne;
100 TH1D *fMinDeltaPhiLeptonMet_NMinusOne;
101
102 TH1D *fMinDeltaPhiLeptonMet_afterCuts;
103 TH1D *fMtLepton1_afterCuts;
104 TH1D *fMtLepton2_afterCuts;
105 TH1D *fMtHiggs_afterCuts;
106
107
108 void Begin();
109 void Process();
110 void SlaveBegin();
111 void SlaveTerminate();
112 void Terminate();
113
114 ClassDef(FakeLeptonExampleAnaMod,1) // TAM example analysis module
115 };
116 }
117 #endif