ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/dhidas/OSUAnalysis/Tools/interface/Event.h
Revision: 1.1.1.1 (vendor branch)
Committed: Thu Dec 1 16:28:48 2011 UTC (13 years, 5 months ago) by dhidas
Content type: text/plain
Branch: dhidas, MAIN
CVS Tags: START, HEAD
Changes since 1.1: +0 -0 lines
Log Message:
osu copy modified

File Contents

# Content
1 /*
2 * Event.h
3 *
4 * Created on: Jun 25, 2010
5 * Author: lkreczko
6 */
7
8 #ifndef EVENT_H_
9 #define EVENT_H_
10 #include "RecoObjects/Electron.h"
11 #include "RecoObjects/Jet.h"
12 #include "RecoObjects/Muon.h"
13 #include "RecoObjects/Vertex.h"
14 #include "RecoObjects/MET.h"
15 #include "RecoObjects/MCParticle.h"
16 #include "DataTypes.h"
17 #include "Printers/EventContentPrinter.h"
18 #include "HighLevelTriggers.h"
19
20 namespace BAT {
21
22
23 class Event {
24 protected:
25 boost::shared_ptr<std::vector<int> > HLTs;
26 VertexCollection vertices;
27 VertexCollection goodVertices;
28 TrackCollection tracks;
29 ElectronCollection allElectrons;
30 ElectronCollection goodElectrons;
31 ElectronCollection goodIsolatedElectrons;
32 ElectronCollection goodPFIsolatedElectrons;
33 ElectronCollection looseElectrons;
34 ElectronCollection qcdElectrons;
35 ElectronCollection loosePFElectrons;
36
37 JetCollection allJets;
38 JetCollection genJets;
39 JetCollection goodJets;
40 JetCollection goodBJets;
41
42 MuonCollection allMuons;
43 MuonCollection goodMuons;
44 MuonCollection goodIsolatedMuons;
45 MuonCollection looseMuons;
46
47 MCParticleCollection genParticles;
48
49 METPointer met;
50
51 DataType::value dataType;
52 unsigned long runNumber;
53 unsigned long eventNumber;
54 unsigned long localEventNumber;
55 unsigned long lumiBlock;
56 float eventWeight;
57
58 float jetCleaningEfficiency;
59 unsigned int numberOfHighPurityTracks;
60 bool isBeamScraping;
61
62 unsigned int genNumberOfPileUpVertices;
63
64 public:
65 Event();
66 virtual ~Event();
67 bool isRealData() const;
68 const DataType::value getDataType() const;
69 void setDataType(DataType::value type);
70 void setVertices(VertexCollection vertices);
71 void setTracks(TrackCollection tracks);
72 void setGenParticles(MCParticleCollection genParticles);
73 void setElectrons(ElectronCollection electrons);
74 void setLoosePFElectrons(ElectronCollection electrons);
75 void setJets(JetCollection jets);
76 void setGenJets(JetCollection genJets);
77 void setMuons(MuonCollection muons);
78 void setMET(const METPointer met);
79 void setHLTs(const boost::shared_ptr<std::vector<int> >);
80 void setRunNumber(unsigned long number);
81 void setEventNumber(unsigned long number);
82 void setLocalEventNumber(unsigned long number);
83 void setLumiBlock(unsigned long block);
84 void setEventWeight(float weight);
85 void setBeamScrapingVeto(bool isScraping);
86 void setGenNumberOfPileUpVertices(unsigned int pileup);
87
88 const VertexPointer PrimaryVertex() const;
89 const VertexCollection& Vertices() const;
90 const VertexCollection& GoodVertices() const;
91 const TrackCollection& Tracks() const;
92 const MCParticleCollection& GenParticles() const;
93 const ElectronCollection& Electrons() const;
94 const ElectronCollection& GoodElectrons() const;
95 const ElectronCollection& GoodIsolatedElectrons() const;
96 const ElectronCollection& GoodPFIsolatedElectrons() const;
97 const ElectronCollection& QCDElectrons() const;
98 const ElectronCollection& LoosePFElectrons() const;
99 const JetCollection& Jets() const;
100 const JetCollection& GenJets() const;
101 const JetCollection& GoodJets() const;
102 const JetCollection& GoodBJets() const;
103 const MuonCollection& Muons() const;
104 const MuonCollection& GoodMuons() const;
105 const MuonCollection& GoodIsolatedMuons() const;
106 const METPointer MET() const;
107 const ElectronPointer MostIsolatedElectron(bool usePFIso) const;
108 const ElectronPointer MostIsolatedElectron() const;
109 const ElectronPointer MostPFIsolatedElectron() const;
110 unsigned long runnumber() const;
111 unsigned long eventnumber() const;
112 unsigned long localnumber() const;
113 unsigned long lumiblock() const;
114 float weight() const;
115 void inspect() const;
116 bool HLT(HLTriggers::value trigger) const;
117 static bool useCustomConversionTagger;
118 static bool usePFIsolation;
119
120 float numberOfGeneratedPileUpVertices() const;
121
122 private:
123 void selectElectronsByQuality();
124 void cleanGoodJets();
125 template <class PartColl> void cleanGoodJetsAgainstIsolatedLeptons(const PartColl &leptonColl);
126 void cleanGoodJetsAgainstMostIsolatedElectron();
127 void selectGoodJets();
128 void selectMuonsByQuality();
129 void selectVerticesByQuality();
130 };
131
132 }
133
134 #endif /* EVENT_H_ */