ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/FakeMods/interface/GenFakesMod.h
Revision: 1.6
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.5: +20 -22 lines
Log Message:
Further cleanup

File Contents

# Content
1 //--------------------------------------------------------------------------------------------------
2 // $Id: GenFakesMod.h,v 1.5 2009/08/10 16:07:26 phedex Exp $
3 //
4 // GenFakesMod
5 //
6 // This Module generates a collection of FakeEventHeaders containing information
7 // about possible fakes and their weight. The collection generated takes into account
8 // all possible faking combinations from the given set of fakeable objects.
9 //
10 // Authors: S.Xie
11 //--------------------------------------------------------------------------------------------------
12
13 #ifndef MITPHYSICS_FAKEMODS_GENFAKESMOD_H
14 #define MITPHYSICS_FAKEMODS_GENFAKESMOD_H
15
16 #include "MitAna/TreeMod/interface/BaseMod.h"
17
18 namespace mithep
19 {
20 class FakeRate;
21
22 class GenFakesMod : public BaseMod
23 {
24 public:
25 GenFakesMod(const char *name="GenFakesMod",
26 const char *title="Fake Object Generation Module");
27
28 const char *GetCleanElectronsName() const { return fCleanElectronsName; }
29 const char *GetCleanMuonsName() const { return fCleanMuonsName; }
30 const char *GetCleanPhotonsName() const { return fCleanPhotonsName; }
31 const char *GetCleanJetsName() const { return fCleanJetsName; }
32 const char *GetElFakeableObjsName() const { return fElFakeableObjsName; }
33 const char *GetMuFakeableObjsName() const { return fMuFakeableObjsName; }
34 const char *GetMCLeptonsName() const { return fMCLeptonsName; }
35 const char *GetMCTausName() const { return fMCTausName; }
36 const char *GetFakeEventHeadersName() const { return fFakeEventHeadersName; }
37 const char *GetOutputName() const { return GetFakeEventHeadersName(); }
38 const Bool_t GetUse2DFakeRate() const { return fUse2DFakeRate; }
39 const Bool_t GetUseFitFunction() const { return fUseFitFunction; }
40 void LoadFakeRate();
41 void SetCleanElectronsName(const char *name) { fCleanElectronsName = name; }
42 void SetCleanMuonssName(const char *name) { fCleanMuonsName = name; }
43 void SetCleanPhotonsName(const char *name) { fCleanPhotonsName = name; }
44 void SetCleanJetsName(const char *name) { fCleanJetsName = name; }
45 void SetElFakeableObjsName(const char *name) { fElFakeableObjsName = name; }
46 void SetMuFakeableObjsName(const char *name) { fMuFakeableObjsName = name; }
47 void SetMCLeptonsName(const char *name) { fMCLeptonsName = name; }
48 void SetMCTausName(const char *name) { fMCTausName = name; }
49 void SetFakeEventHeadersName(const char *name) { fFakeEventHeadersName = name; }
50 void SetOutputName(const char *name) { SetFakeEventHeadersName(name); }
51 void SetElectronFRFilename(const char *name) { fElectronFRFilename = name; }
52 void SetMuonFRFilename(const char *name) { fMuonFRFilename = name; }
53 void SetUse2DFakeRate(Bool_t b) { fUse2DFakeRate = b; }
54 void SetUseFitFunction(Bool_t b) { fUseFitFunction = b; }
55 void SetElectronFRFunctionName(const char *name) { fElectronFRFunctionName = name; }
56 void SetMuonFRFunctionName(const char *name) { fMuonFRFunctionName = name; }
57 void SetElectronFRHistName(const char *name) { fElectronFRHistName = name; }
58 void SetMuonFRHistName(const char *name) { fMuonFRHistName = name; }
59
60 protected:
61 void Process();
62
63 FakeRate *fFakeRate; //!holds the fake probabilities
64 TString fElectronFRFilename; //file containing electron fake rate
65 TString fMuonFRFilename; //file containing muon fake rate
66 Bool_t fUse2DFakeRate; //whether to use fit function or not
67 Bool_t fUseFitFunction; //whether to use fit function or not
68 TString fElectronFRFunctionName; //fit function containing electron fake rate
69 TString fMuonFRFunctionName; //fit function containing muon fake rate
70 TString fElectronFRHistName; //hist containing electron fake rate
71 TString fMuonFRHistName; //hist containing muon fake rate
72 TString fCleanElectronsName; //name of clean electrons (input)
73 TString fCleanMuonsName; //name of clean muons (input)
74 TString fCleanPhotonsName; //name of clean photons (input)
75 TString fCleanJetsName; //name of clean jets (input)
76 TString fMCLeptonsName; //name of MC leptons (input)
77 TString fMCTausName; //name of MC taus (input)
78 TString fElFakeableObjsName; //name of electron fakeable objects (input)
79 TString fMuFakeableObjsName; //name of muon fakeable objects (input)
80 TString fFakeEventHeadersName; //name of FakeEventHeaders (output)
81
82 ClassDef(GenFakesMod, 1) // FakeEventHeader generation module
83 };
84 }
85 #endif