ATLAS Offline Software
Loading...
Searching...
No Matches
GenEvent_p7.h
Go to the documentation of this file.
1
2
3/*
4 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
5*/
6
7// GenEvent_p7.h
8// Header file for class GenEvent_p7
9// Author: S.Binet<binet@cern.ch>
10// Date: March 2007
12#ifndef GENERATOROBJECTSTPCNV_GENEVENT_P7_H
13#define GENERATOROBJECTSTPCNV_GENEVENT_P7_H
14
15// STL includes
16#include <vector>
17#include <utility> //> for std::pair
18
19// forward declarations
21
23{
25 // Friend classes
27
28 // Make the AthenaPoolCnv class our friend
30
32 // Public methods
34public:
35
39
42 GenEvent_p7( int signalProcessId,
43 int eventNbr,
44 int mpi,
45 double eventScale,
46 double alphaQCD,
47 double alphaQED,
48 double filterWeight,
49 double filterHT,
50 double filterMET,
51 int signalProcessVtx,
52 int beamParticle1,
53 int beamParticle2,
54 const std::vector<double>& weights,
55 const std::vector<long int>& randomStates,
56 const std::vector<double>& crossSection,
57 const std::vector<float>& heavyIon,
58 const std::vector<double>& pdfinfo,
59 int momentumUnit,
60 int lengthUnit,
61 unsigned int verticesBegin,
62 unsigned int verticesEnd,
63 unsigned int particlesBegin,
64 unsigned int particlesEnd
65 ,const std::vector<int>& e_attribute_id = std::vector<int>()
66 ,const std::vector<std::string>& e_attribute_name = std::vector<std::string>()
67 ,const std::vector<std::string>& e_attribute_string = std::vector<std::string>()
68 ,const std::vector<std::string>& r_attribute_name = std::vector<std::string>()
69 ,const std::vector<std::string>& r_attribute_string = std::vector<std::string>()
70 ,const std::vector<std::string>& r_tool_name = std::vector<std::string>()
71 ,const std::vector<std::string>& r_tool_version = std::vector<std::string>()
72 ,const std::vector<std::string>& r_tool_description = std::vector<std::string>()
73 ,const std::vector<std::string>& r_weight_names = std::vector<std::string>()
74 );
75
77 // Protected data:
79protected:
80
84
88
91 int m_mpi;
92
96
99 double m_alphaQCD;
100
104
115
119
123
127 std::vector<double> m_weights;
128
131 std::vector<long int> m_randomStates;
132
135 std::vector<double> m_crossSection;
136
139 std::vector<float> m_heavyIon;
140
144 std::vector<double> m_pdfinfo;
145
149
153
156 unsigned int m_verticesBegin;
157
160 unsigned int m_verticesEnd;
161
164 unsigned int m_particlesBegin;
165
168 unsigned int m_particlesEnd;
169
171 std::vector<int> m_e_attribute_id;
172 std::vector<std::string> m_e_attribute_name;
173 std::vector<std::string> m_e_attribute_string;
174 std::vector<std::string> m_r_attribute_name;
175 std::vector<std::string> m_r_attribute_string;
176 std::vector<std::string> m_r_tool_name;
177 std::vector<std::string> m_r_tool_version;
178 std::vector<std::string> m_r_tool_description;
179 std::vector<std::string> m_r_weight_names;
180};
181
186 m_signalProcessId ( -1 ),
187 m_eventNbr ( -1 ),
188 m_mpi ( -1 ),
189 m_eventScale ( -1 ),
190 m_alphaQCD ( -1 ),
191 m_alphaQED ( -1 ),
192 m_filterWeight ( 1 ),
193 m_filterHT ( -13 ),
194 m_filterMET ( -13 ),
195 m_signalProcessVtx ( 0 ),
196 m_beamParticle1 ( 0 ),
197 m_beamParticle2 ( 0 ),
198 m_weights ( ),
199 m_randomStates ( ),
200 m_crossSection ( ),
201 m_heavyIon ( ),
202 m_pdfinfo ( ),
203 m_momentumUnit ( 0 ),
204 m_lengthUnit ( 0 ),
205 m_verticesBegin ( 0 ),
206 m_verticesEnd ( 0 ),
207 m_particlesBegin ( 0 ),
208 m_particlesEnd ( 0 )
214 ,m_r_tool_name( )
218{}
219
220inline GenEvent_p7::GenEvent_p7( int signalProcessId,
221 int eventNbr,
222 int mpi,
223 double eventScale,
224 double alphaQCD,
225 double alphaQED,
226 double filterWeight,
227 double filterHT,
228 double filterMET,
229 int signalProcessVtx,
230 int beamParticle1,
231 int beamParticle2,
232 const std::vector<double>& weights,
233 const std::vector<long int>& randomStates,
234 const std::vector<double>& crossSection,
235 const std::vector<float>& heavyIon,
236 const std::vector<double>& pdfinfo,
237 int momentumUnit,
238 int lengthUnit,
239 unsigned int verticesBegin,
240 unsigned int verticesEnd,
241 unsigned int particlesBegin,
242 unsigned int particlesEnd
243 ,const std::vector<int>& e_attribute_id
244 ,const std::vector<std::string>& e_attribute_name
245 ,const std::vector<std::string>& e_attribute_string
246 ,const std::vector<std::string>& r_attribute_name
247 ,const std::vector<std::string>& r_attribute_string
248 ,const std::vector<std::string>& r_tool_name
249 ,const std::vector<std::string>& r_tool_version
250 ,const std::vector<std::string>& r_tool_description
251 ,const std::vector<std::string>& r_weight_names
252 ) :
253 m_signalProcessId ( signalProcessId ),
254 m_eventNbr ( eventNbr ),
255 m_mpi ( mpi ),
256 m_eventScale ( eventScale ),
257 m_alphaQCD ( alphaQCD ),
258 m_alphaQED ( alphaQED ),
259 m_filterWeight ( filterWeight ),
260 m_filterHT ( filterHT ),
261 m_filterMET ( filterMET ),
262 m_signalProcessVtx ( signalProcessVtx ),
263 m_beamParticle1 ( beamParticle1 ),
264 m_beamParticle2 ( beamParticle2 ),
265 m_weights ( weights ),
266 m_randomStates ( randomStates ),
267 m_crossSection ( crossSection ),
268 m_heavyIon ( heavyIon ),
269 m_pdfinfo ( pdfinfo ),
270 m_momentumUnit ( momentumUnit ),
271 m_lengthUnit ( lengthUnit ),
272 m_verticesBegin ( verticesBegin ),
273 m_verticesEnd ( verticesEnd ),
274 m_particlesBegin ( particlesBegin ),
275 m_particlesEnd ( particlesEnd )
276 ,m_e_attribute_id ( e_attribute_id )
277 ,m_e_attribute_name ( e_attribute_name )
278 ,m_e_attribute_string( e_attribute_string )
279 ,m_r_attribute_name ( r_attribute_name )
280 ,m_r_attribute_string( r_attribute_string )
281 ,m_r_tool_name( r_tool_name )
282 ,m_r_tool_version( r_tool_version )
283 ,m_r_tool_description( r_tool_description )
284 ,m_r_weight_names( r_weight_names )
285{}
286
287#endif //> GENERATOROBJECTSTPCNV_GENEVENT_p7_H
double m_filterMET
unsigned int m_particlesEnd
End position in the vector of particles composing this event.
friend class McEventCollectionCnv_p7
Definition GenEvent_p7.h:29
std::vector< long int > m_randomStates
Container of random numbers for the generator states.
int m_signalProcessId
Id of the processus being generated.
Definition GenEvent_p7.h:83
int m_beamParticle2
Barcode of the beam particle 2.
std::vector< double > m_crossSection
Container of HepMC::GenCrossSection object translated to vector<double>.
int m_signalProcessVtx
Barcode of the GenVertex holding the signal process.
int m_eventNbr
Event number.
Definition GenEvent_p7.h:87
std::vector< std::string > m_r_weight_names
The weight names.
int m_lengthUnit
HepMC::Units::LengthUnit casted to int.
std::vector< std::string > m_r_tool_name
Name of the used tool.
int m_beamParticle1
Barcode of the beam particle 1.
std::vector< int > m_e_attribute_id
We define those exactly as in the HepMC3::GenEvent.
double m_eventScale
Energy scale.
Definition GenEvent_p7.h:95
double m_filterHT
std::vector< double > m_weights
Weights for this event.
double m_filterWeight
value of the extra weight introduced during reweighting events in filter and value of some variables ...
unsigned int m_particlesBegin
Begin position in the vector of particles composing this event.
std::vector< std::string > m_r_attribute_string
Attribute serialized as string for run info.
unsigned int m_verticesEnd
End position in the vector of vertices composing this event.
std::vector< std::string > m_r_tool_description
Description of the used tool.
double m_alphaQCD
value of the QCD coupling.
Definition GenEvent_p7.h:99
int m_mpi
Number of multi particle interactions.
Definition GenEvent_p7.h:91
int m_momentumUnit
HepMC::Units::MomentumUnit casted to int.
GenEvent_p7()
Default constructor.
std::vector< double > m_pdfinfo
Container of HepMC::PdfInfo object translated to vector<double> for simplicity.
unsigned int m_verticesBegin
Begin position in the vector of vertices composing this event.
std::vector< std::string > m_e_attribute_name
Attribute name for event.
std::vector< float > m_heavyIon
Container of HepMC::HeavyIon object translated to vector<double>.
std::vector< std::string > m_r_tool_version
Version of the used tool.
std::vector< std::string > m_r_attribute_name
Attribute name for run info.
std::vector< std::string > m_e_attribute_string
Attribute serialized as string for event.
double m_alphaQED
value of the QED coupling.