ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/FakeMods/interface/FakeLeptonExampleAnaMod.h
Revision: 1.5
Committed: Tue Aug 11 09:15:59 2009 UTC (15 years, 8 months ago) by loizides
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_029c, Mit_029b, Mit_029a, Mit_028a, Mit_028, Mit_027, Mit_027a, Mit_025e, Mit_025d, Mit_025c, Mit_025b, Mit_025a, Mit_025, Mit_025pre2, Mit_024b, Mit_025pre1, Mit_024a, Mit_024, Mit_023, Mit_022a, Mit_022, Mit_020d, TMit_020d, Mit_020c, Mit_021, Mit_021pre2, Mit_021pre1, Mit_020b, Mit_020a, Mit_020, Mit_020pre1, Mit_018, Mit_017, Mit_017pre3, Mit_017pre2, Mit_017pre1, Mit_016, Mit_015b, Mit_015a, Mit_015, Mit_014e, Mit_014d, Mit_014c, Mit_014b, Mit_014a, Mit_014, Mit_014pre3, Mit_014pre2, Mit_014pre1, Mit_013d, Mit_013c, Mit_013b, Mit_013a, Mit_013, Mit_013pre1, Mit_012i, Mit_012g, Mit_012f, Mit_012e, Mit_012d, Mit_012c, Mit_012b, Mit_012a, Mit_012, Mit_011a, Mit_011, Mit_010a, HEAD
Changes since 1.4: +40 -47 lines
Log Message:
Further cleanup

File Contents

# User Rev Content
1 loizides 1.1 //--------------------------------------------------------------------------------------------------
2 loizides 1.5 // $Id: FakeLeptonExampleAnaMod.h,v 1.4 2009/08/10 16:07:26 phedex Exp $
3 loizides 1.1 //
4     // FakeLeptonExampleAnaMod
5     //
6 phedex 1.4 // This is an example analysis module which makes use of the FakeEventHeader objects in order to
7     // loop over all possible fake lepton combinations. This module is meant to illustrate how
8     // the FakeEventHeader objects are to be used for analysis involving fake leptons.
9 loizides 1.1 //
10 loizides 1.3 // Authors: S.Xie
11 loizides 1.1 //--------------------------------------------------------------------------------------------------
12    
13     #ifndef MITHIGGS_HWWMODS_FAKELEPTONEXAMPLEANAMOD_H
14     #define MITHIGGS_HWWMODS_FAKELEPTONEXAMPLEANAMOD_H
15    
16     #include "MitAna/TreeMod/interface/BaseMod.h"
17 loizides 1.2 #include "MitAna/DataTree/interface/CollectionsFwd.h"
18 loizides 1.1
19     class TH1D;
20     class TH2D;
21    
22     namespace mithep
23     {
24     class FakeLeptonExampleAnaMod : public BaseMod
25     {
26     public:
27 loizides 1.2 FakeLeptonExampleAnaMod(const char *name="FakeLeptonExampleAnaMod",
28     const char *title="Example analysis module with all branches");
29 loizides 1.1
30     Bool_t GetUseMCFake() { return fUseMCFake; }
31     Bool_t GetPerformFakeMuonMetCorrection() { return fPerformFakeMuonMetCorrection; }
32     const char *GetSampleName() const { return fSampleName; }
33     const char *GetFakeEventHeaderName() const { return fFakeEventHeaderName; }
34     const char *GetElectronFakeableObjectsName() const { return fElectronFakeableObjectsName; }
35     const char *GetMuonFakeableObjectsName() const { return fMuonFakeableObjectsName; }
36     const char *GetMCPartBranchName() const { return fMCPartBranchName; }
37     const char *GetGenJetBranchName() const { return fGenJetBranchName; }
38     const char *GetTrackBranchName() const { return fTrackBranchName; }
39     const char *GetMuonBranchName() const { return fMuonBranchName; }
40     const char *GetMetName() const { return fMetName; }
41     const char *GetTriggerObjectsName() const { return fTriggerObjectsName; }
42    
43 loizides 1.5 void SetUseMCFake(Bool_t b) { fUseMCFake = b; }
44     void SetPerformFakeMuonMetCorrection(Bool_t b) { fPerformFakeMuonMetCorrection = b; }
45     void SetSampleName(const char *s) { fSampleName = s; }
46     void SetFakeEventHeaderName (const char *s) { fFakeEventHeaderName = s; }
47     void SetElectronFakeableObjectsName(const char *s) { fElectronFakeableObjectsName = s; }
48     void SetMuonFakeableObjectsName(const char *s) { fMuonFakeableObjectsName = s; }
49     void SetCleanJetsName (TString s) { fCleanJetsName = s; }
50     void SetMCPartBranchName (TString s) { fMCPartBranchName = s; }
51     void SetGenJetBranchName (TString s) { fGenJetBranchName = s; }
52     void SetTrackBranchName (TString s) { fTrackBranchName = s; }
53     void SetMuonBranchName (TString s) { fMuonBranchName = s; }
54     void SetMetName (TString s) { fMetName = s; }
55     void SetTriggerObjectsName(const char *n) { fTriggerObjectsName = n; }
56 loizides 1.1
57     protected:
58 loizides 1.5 void Process();
59     void SlaveBegin();
60 loizides 1.3
61 loizides 1.1 Bool_t fUseMCFake; //whether to use MC simulation fakes
62 phedex 1.4 Bool_t fPerformFakeMuonMetCorrection; //whether to do fake muon met correction
63 loizides 1.1 TString fSampleName; //name of Sample
64     TString fFakeEventHeaderName; //name of fake event header (input)
65     TString fElectronFakeableObjectsName; //name of electron denominators (input)
66     TString fMuonFakeableObjectsName; //name of muon denominators (input)
67 phedex 1.4 TString fMCPartBranchName; //name of particle collection (input)
68     TString fGenJetBranchName; //name of genjet collection (input)
69     TString fTrackBranchName; //name of track collection (input)
70     TString fMuonBranchName; //name of muon collection (input)
71     TString fMetName; //name of met collection (input)
72 loizides 1.1 TString fCleanJetsName; //name of clean central jets collection
73     TString fTriggerObjectsName; //name of trigger objects
74     const MCParticleCol *fParticles; //!GenParticle branch
75     const GenJetCol *fGenJets; //!GenJet branch
76     const TrackCol *fTracks; //!Track branch
77     const MuonCol *fMuons; //!Muon branch
78     const MetCol *fMet; //!Missing Et
79 loizides 1.5 TH1D *fDileptonCharge; //!Dilepton Charge Histogram
80     TH1D *fLeptonPtMax; //!Lepton1 Pt Histogram
81     TH1D *fLeptonPtMin; //!Lepton2 Pt Histogram
82     TH1D *fMetPtHist; //!Met Histogram
83     TH1D *fDeltaPhiLeptons; //!DeltaPhi Histogram
84     TH1D *fDeltaEtaLeptons; //!DeltaEta Histogram
85     TH1D *fDileptonMass; //!Dilepton Mass Histogram
86     TH1D *fLeptonEta_NMinusOne; //!Lepton Eta Histogram
87     TH1D *fLeptonPtMax_NMinusOne; //!Lepton1 Pt Histogram
88     TH1D *fLeptonPtMin_NMinusOne; //!Lepton2 Pt Histogram
89     TH1D *fMetPtHist_NMinusOne; //!Met Histogram
90     TH1D *fMetPhiHist_NMinusOne; //!Met Phi Histogram
91     TH1D *fMETdeltaPhilEtHist_NMinusOne; //!METdeltaPhilEtHist Histogram
92     TH1D *fNCentralJets_NMinusOne; //!# of Central Jets Histogram
93     TH1D *fNDirtyMuonsHist_NMinusOne; //!# of Dirty Muons Histogram
94     TH1D *fNCleanExtraTracksHist_NMinusOne; //!# of Extra Tracks Histogram
95     TH1D *fDeltaPhiLeptons_NMinusOne; //!DeltaPhi Histogram
96     TH1D *fDeltaEtaLeptons_NMinusOne; //!DeltaEta Histogram
97     TH1D *fDileptonMass_NMinusOne; //!Dilepton Mass Histogram
98     TH1D *fMinDeltaPhiLeptonMet_NMinusOne; //!MinDeltaPhiLeptonMet Histogram
99     TH1D *fMinDeltaPhiLeptonMet_afterCuts; //!MinDeltaPhiLeptonMet Histogram
100     TH1D *fMtLepton1_afterCuts; //!M_t1 Histogram Histogram
101     TH1D *fMtLepton2_afterCuts; //!M_t2 Histogram Histogram
102     TH1D *fMtHiggs_afterCuts; //!M_t Higgs Histogram
103 loizides 1.1
104 loizides 1.3 ClassDef(FakeLeptonExampleAnaMod,1) // Fake lepton analysis example
105 loizides 1.1 };
106     }
107     #endif