ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/DGele/MiniTreeFormat/TTbar/interface/Event.h
Revision: 1.1
Committed: Tue Oct 20 17:15:16 2009 UTC (15 years, 6 months ago) by dgele
Content type: text/plain
Branch: MAIN
Branch point for: ANA
Log Message:
Initial revision

File Contents

# User Rev Content
1 dgele 1.1 #ifndef __TOP_TREE_EVENT_H__
2     #define __TOP_TREE_EVENT_H__
3     //-------------------------------------------------------------------------------
4     // Header file for the CatoEvent class that provides a mini-event format
5     // for top analysis. It is filled after the preselection step.
6     //
7     // CVS revision record:
8     // $Author: D. Gele (from A.G. skeleton code) $
9     // $Date: 2008/08
10     //
11     //-------------------------------------------------------------------------------
12    
13     #include <string>
14     #include <vector>
15     #include <map>
16    
17    
18     #include "Vec.h"
19     #include "Jet.h"
20     #include "Lepton.h"
21     #include "Electron.h"
22     #include "Muon.h"
23     #include "MET.h"
24     #include "TTbarEvtMC.h"
25     #include "ZJetsEvtMC.h"
26     #include "WJetsEvtMC.h"
27     #include "Track.h"
28     #include "DataFormats/HepMCCandidate/interface/GenParticle.h"
29    
30     namespace TopTree
31     {
32     class Event
33     {
34     public:
35     Event();
36     ~Event();
37    
38     void Reset();
39     void PrintHeader(std::ostream &os = std::cout);
40     void Print(std::ostream &os = std::cout) const;
41     void PrintTrailer(std::ostream &os = std::cout);
42    
43     // ---- General event information.
44     unsigned int runNb;
45     unsigned int eventNb;
46     double eventWeight;
47    
48     int nZvtx;
49     Point3 primV; // Primary vertex.
50    
51     // ---- Monte Carlo information
52     int procId;
53    
54     // ---- Trigger info
55     bool Trig_topDiLeptonMuonX;
56     bool Trig_topDiLepton2Muon;
57     bool Trig_topDiLepton2Electron;
58     bool Trig_topDiLeptonElectronMuon;
59     bool Trig_HLT_Mu15_L1Mu7;
60     bool Trig_HLT_DoubleMu3;
61     bool Trig_HLT_IsoEle10_Mu10_L1R;
62     bool Trig_HLT_IsoEle18_L1R;
63     bool Trig_HLT_DoubleIsoEle12_L1R;
64     bool Trig_HLT_Mu5;
65     bool Trig_HLT_Mu9;
66     bool Trig_HLT_Mu11;
67     bool Trig_HLT_Mu15;
68     bool Trig_HLT_IsoMu9;
69     bool Trig_HLT_Ele10_SW_L1R;
70     bool Trig_HLT_Ele15_SW_L1R;
71     bool Trig_HLT_Ele15_LW_L1R;
72     bool Trig_HLT_DoubleEle5_SW_L1R;
73     bool Trig_HLT_LooseIsoEle15_LW_L1R;
74    
75    
76    
77     // ---- jets
78     std::vector<Jet> jetVec; // vector of selected jets
79     std::vector<Jet> looseJetVec; // vector of loose jets
80     Jet* NewJet();
81     Jet* NewLooseJet();
82    
83     double sumEtJet; // include also soft jets.
84     double sumEtJetRaw; // use uncorrected JetEt for mistag matrix
85     int nJets;
86     int nLooseJets;
87    
88     // ---- MET
89     MET met;
90    
91     // ---- leptons
92     std::vector<Lepton> lepVec; // vector of selected leptons
93     Lepton* NewLepton();
94     std::vector<Electron> elecVec; // vector of selected electrons
95     Electron* NewElectron();
96     std::vector<Muon> muonVec; // vector of selected muons
97     Muon* NewMuon();
98    
99     // ---- info filled in EventSelection:
100     int nBtags;
101     int nTaggable;
102     int nLooseBtags;
103     int nHyp;
104    
105     // ---- MC event infos
106     TTbarEvtMC ttbarevtmc;
107     WJetsEvtMC wjetsevtmc;
108     ZJetsEvtMC zjetsevtmc;
109    
110     //tracks
111     Track* NewTrack();
112     std::vector<Track> trackVec;
113    
114     //Skimmed GenParticleCollection+ daughters' and mothers' lists
115     reco::GenParticleCollection GPC;
116     std::map<int,std::vector<int> > GPC_list_index_dau;
117     std::map<int,std::vector<int> > GPC_list_index_mot;
118    
119    
120     };
121     }
122     #endif
123    
124