ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/Mods/interface/GeneratorMod.h
Revision: 1.9
Committed: Wed Dec 3 09:52:11 2008 UTC (16 years, 5 months ago) by ceballos
Content type: text/plain
Branch: MAIN
Changes since 1.8: +30 -20 lines
Log Message:
adding pt and eta cuts

File Contents

# User Rev Content
1 loizides 1.1 //--------------------------------------------------------------------------------------------------
2 ceballos 1.9 // $Id: GeneratorMod.h,v 1.8 2008/12/01 11:36:35 ceballos Exp $
3 loizides 1.1 //
4     // GeneratorMod
5     //
6 loizides 1.4 // This module collects interesting generator information and publishes collections
7     // for subsequent modules.
8 loizides 1.1 //
9 loizides 1.4 // Authors: G.Ceballos
10 loizides 1.1 //--------------------------------------------------------------------------------------------------
11    
12 loizides 1.4 #ifndef MITPHYSICS_MODS_GENERATORMOD_H
13     #define MITPHYSICS_MODS_GENERATORMOD_H
14 loizides 1.1
15     #include "MitAna/TreeMod/interface/BaseMod.h"
16     #include "MitAna/DataTree/interface/Collections.h"
17    
18     class TH1D;
19     class TH2D;
20    
21     namespace mithep
22     {
23     class GeneratorMod : public BaseMod
24     {
25     public:
26     GeneratorMod(const char *name="GeneratorMod",
27 loizides 1.4 const char *title="Generator information module");
28 loizides 1.1 ~GeneratorMod() {}
29 loizides 1.4
30 loizides 1.5 Bool_t GetFillHist() const { return fFillHist; }
31     const char *GetMCPartName() const { return fMCPartName; }
32     const char *GSetMCLeptonsName() const { return fMCLeptonsName; }
33     const char *GetMCAllLeptonsName() const { return fMCAllLeptonsName; }
34     const char *GetMCTausName() const { return fMCTausName; }
35     const char *GetMCNeutrinosName() const { return fMCNeutrinosName; }
36     const char *GetMCQuarksName() const { return fMCQuarksName; }
37     const char *GetMCqqHsName() const { return fMCqqHsName; }
38     const char *GetMCBosonsName() const { return fMCBosonsName; }
39 ceballos 1.8 const char *GetMCPhotonsName() const { return fMCPhotonsName; }
40 loizides 1.5 void SetFillHist(Bool_t b) { fFillHist = b; }
41 loizides 1.4 void SetMCPartName(const char *s) { fMCPartName = s; }
42     void SetMCLeptonsName(const char * s) { fMCLeptonsName = s; }
43     void SetMCAllLeptonsName(const char * s) { fMCAllLeptonsName = s; }
44     void SetMCTausName(const char *s) { fMCTausName = s; }
45     void SetMCNeutrinosName(const char *s) { fMCNeutrinosName = s; }
46     void SetMCQuarksName(const char *s) { fMCQuarksName = s; }
47     void SetMCqqHsName(const char *s) { fMCqqHsName = s; }
48     void SetMCBosonsName(const char *s) { fMCBosonsName = s; }
49 ceballos 1.8 void SetMCPhotonsName(const char *s) { fMCPhotonsName = s; }
50 ceballos 1.9 void SetPtLeptonMin(Float_t x) { fPtLeptonMin = x; }
51     void SetEtaLeptonMax(Float_t x) { fEtaLeptonMax = x; }
52     void SetPtPhotonMin(Float_t x) { fPtPhotonMin = x; }
53     void SetEtaPhotonMax(Float_t x) { fEtaPhotonMax = x; }
54 loizides 1.4
55 loizides 1.1 protected:
56 ceballos 1.9 Bool_t fFillHist; //=true then fill histos (def=0)
57     TString fMCPartName; //name of MCParticle branch
58     TString fMCLeptonsName ; //name of lepton coll (from W)
59     TString fMCAllLeptonsName; //name of lepton coll (all)
60     TString fMCTausName; //name of tau coll (hadronic decays)
61     TString fMCNeutrinosName; //name of neutrinos coll
62     TString fMCQuarksName; //name of quarks coll
63     TString fMCqqHsName; //name of qqH coll
64     TString fMCBosonsName; //name of bosons coll
65     TString fMCPhotonsName; //name of photons coll
66     MCParticleCol *fParticles; //!MCParticle branch
67     Float_t fPtLeptonMin; // pt min for leptons
68     Float_t fEtaLeptonMax; // eta max for leptons
69     Float_t fPtPhotonMin; // pt min for photons
70     Float_t fEtaPhotonMax; // eta max for photons
71    
72    
73     TH1D *hDGenLeptons[20]; //!histos for W leptons
74     TH1D *hDGenAllLeptons[20]; //!histos for all leptons
75     TH1D *hDGenTaus[20]; //!histos for taus
76     TH1D *hDGenNeutrinos[20]; //!histos for neutrinos
77     TH1D *hDGenQuarks[20]; //!histos for quarks
78     TH1D *hDGenWBF[20]; //!histos for WBF
79     TH1D *hDGenBosons[20]; //!histos for bosons
80     TH1D *hDGenPhotons[20]; //!histos for photons
81 loizides 1.1
82     void Process();
83     void SlaveBegin();
84    
85 loizides 1.4 ClassDef(GeneratorMod,1) // Module to gather generator information
86 loizides 1.1 };
87     }
88     #endif