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

# User Rev Content
1 dhidas 1.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_ */