ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/dasu/UltraFastSim/UltraFastSim.h
Revision: 1.2
Committed: Wed Feb 9 07:20:36 2011 UTC (14 years, 3 months ago) by dasu
Content type: text/plain
Branch: MAIN
Changes since 1.1: +16 -5 lines
Log Message:
Added shell for bTagData

File Contents

# User Rev Content
1 dasu 1.1 #ifndef UltraFastSim_H
2     #define UltraFastSim_H
3    
4     #include <vector>
5    
6     namespace Pythia8 {
7     class Rndm;
8     class Event;
9     class Particle;
10     }
11    
12     namespace fastjet {
13     class JetDefinition;
14     class ClusterSequence;
15     }
16    
17     #include "fastjet/PseudoJet.hh";
18 dasu 1.2 #include "TParticle.h";
19 dasu 1.1
20     class UltraFastSim {
21    
22     public:
23    
24     UltraFastSim(Pythia8::Rndm *r);
25    
26     virtual ~UltraFastSim() {;}
27    
28     bool run(Pythia8::Event &event);
29    
30 dasu 1.2 const std::vector<TParticle>& electronList() {return selectedElectrons;}
31     const std::vector<TParticle>& muonList() {return selectedMuons;}
32     const std::vector<TParticle>& genTauList() {return selectedTaus;}
33     const std::vector<TParticle>& bQuarkList() {return selectedBQuarks;}
34     const std::vector<TParticle>& tauList() {return taus;}
35     const std::vector<fastjet::PseudoJet>& particleList() {return selectedParticles;}
36     const std::vector<fastjet::PseudoJet>& jetList() {return jets;}
37     const std::vector<fastjet::PseudoJet>& sortedJetList() {return sortedJets;}
38     const std::vector<fastjet::PseudoJet>& bJetList() {return bJets;}
39    
40 dasu 1.1 private:
41    
42     UltraFastSim();
43    
44     void clear();
45    
46     void makeJets();
47     void makeBJets();
48     void makeTaus();
49    
50     void tkSmear(Pythia8::Particle particle);
51     void emSmear(Pythia8::Particle particle);
52     void hdSmear(Pythia8::Particle particle);
53    
54     Pythia8::Rndm* rndmPtr;
55    
56     fastjet::JetDefinition* jetDefPtr;
57     fastjet::ClusterSequence* cs;
58    
59     float trackerResolution;
60     float ecalResolution;
61     float ecalConstantTerm;
62     float hcalResolution;
63     float hcalConstantTerm;
64    
65 dasu 1.2 std::vector<TParticle> selectedElectrons;
66     std::vector<TParticle> selectedMuons;
67     std::vector<TParticle> selectedTaus;
68     std::vector<TParticle> selectedBQuarks;
69     std::vector<TParticle> taus;
70 dasu 1.1 std::vector<fastjet::PseudoJet> selectedParticles;
71     std::vector<fastjet::PseudoJet> jets;
72     std::vector<fastjet::PseudoJet> sortedJets;
73     std::vector<fastjet::PseudoJet> bJets;
74    
75     };
76    
77     #endif