ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/HbbAnalysis/interface/MCEvent.hh
Revision: 1.1
Committed: Wed Apr 18 12:56:46 2012 UTC (13 years ago) by amagnan
Content type: text/plain
Branch: MAIN
Log Message:
add MCTree maker

File Contents

# User Rev Content
1 amagnan 1.1 #ifndef HbbAnalysis_MCEvent_hh
2     #define HbbAnalysis_MCEvent_hh
3     #include <vector>
4     #include <string>
5    
6     #include "UserCode/HbbAnalysis/interface/GenParticle.hh"
7     #include "UserCode/HbbAnalysis/interface/GenJet.hh"
8    
9     namespace HbbAnalysis {
10    
11     class MCEvent {
12    
13     public:
14    
15     /** Constructor/Destructor */
16    
17     MCEvent():
18     p4total_(),
19     particles_(),
20     lheParticles_(),
21     genjets_(),
22     partonjets_(),
23     event_(0),
24     run_(0)
25     {};
26    
27     ~MCEvent(){
28     Clear();
29     };
30    
31     /** Getters */
32    
33     inline std::vector<GenParticle> & particles()
34     {
35     return particles_;
36     };
37    
38     inline std::vector<GenJet> & genjets()
39     {
40     return genjets_;
41     };
42    
43     inline std::vector<GenJet> & partonjets()
44     {
45     return partonjets_;
46     };
47    
48     inline std::vector<GenParticle> & lheParticles()
49     {
50     return lheParticles_;
51     };
52    
53     inline P4Total & p4total()
54     {
55     return p4total_;
56     };
57    
58     inline unsigned int event()
59     {
60     return event_;
61     };
62    
63     inline unsigned int run()
64     {
65     return run_;
66     };
67    
68     /** Setters */
69    
70    
71     inline void particles(const std::vector<GenParticle> & aVec)
72     {
73     particles_=aVec;
74     };
75    
76     inline void genjets(const std::vector<GenJet> & aVec)
77     {
78     genjets_=aVec;
79     };
80    
81     inline void partonjets(const std::vector<GenJet> & aVec)
82     {
83     partonjets_=aVec;
84     };
85    
86     inline void lheParticles(const std::vector<GenParticle> & aVec)
87     {
88     lheParticles_=aVec;
89     };
90    
91     inline void p4total(const P4Total & aVec)
92     {
93     p4total_=aVec;
94     };
95    
96     inline void event(const unsigned int aMCEvent) {
97     event_ = aMCEvent;
98     };
99    
100     inline void run(const unsigned int aHbbRun) {
101     run_ = aHbbRun;
102     };
103    
104     void Clear(){
105     particles_.clear();
106     lheParticles_.clear();
107     genjets_.clear();
108     partonjets_.clear();
109     p4total_.Clear();
110     };
111    
112    
113     private:
114     P4Total p4total_;
115     std::vector<GenParticle> particles_;
116     std::vector<GenParticle> lheParticles_;
117     std::vector<GenJet> genjets_;
118     std::vector<GenJet> partonjets_;
119     unsigned int event_;
120     unsigned int run_;
121    
122     };//class
123    
124     }//namespace
125    
126     #endif //HbbAnalysis_MCEvent_hh