ATLAS Offline Software
Loading...
Searching...
No Matches
GenParticle_p6.h
Go to the documentation of this file.
1
2
3/*
4 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5*/
6
7// GenParticle_p6.h
8// Header file for class GenParticle_p6
9// Author: S.Binet<binet@cern.ch>
11#ifndef GENERATOROBJECTSTPCNV_GENPARTICLE_p6_H
12#define GENERATOROBJECTSTPCNV_GENPARTICLE_p6_H
13
14// STL includes
15#include <vector>
16#include <utility> //> for std::pair
17
18// Forward declaration
20
22{
23 // Make the AthenaPoolCnv class our friend
25
27 // Public methods:
29 public:
30
34
37 GenParticle_p6( const double px, const double py, const double pz,
38 const double mass, const int pdgId,
39 const int status,
40 const std::size_t flowSize,
41 const double thetaPolarization,
42 const double phiPolarization,
43 const int prodVtx,
44 const int endVtx,
45 const int barcode,
46 const double generated_mass,
47 const short recoMethod );
48
50 // Const methods:
52
54 // Non-const methods:
56
58 // Protected data:
60 protected:
61
64 float m_px;
65
68 float m_py;
69
72 float m_pz;
73
76 float m_m;
77
81
85
88 std::vector< std::pair<int, int> > m_flow;
89
92 //std::pair<double, double> m_polarization;
93
97
101
106
111
116
120
130};
131
135
137 m_px ( 0 ),
138 m_py ( 0 ),
139 m_pz ( 0 ),
140 m_m ( 0 ),
141 m_pdgId ( 0 ),
142 m_status ( 0 ),
143 m_flow ( 0 ),
144 m_thetaPolarization ( 0. ),
145 m_phiPolarization ( 0. ),
146 m_prodVtx ( 0 ),
147 m_endVtx ( 0 ),
148 m_barcode ( 0 ),
149 m_generated_mass( 0 ),
150 m_recoMethod ( 0 )
151{}
152
153inline GenParticle_p6::GenParticle_p6( const double px,
154 const double py,
155 const double pz,
156 const double m,
157 const int pdgId,
158 const int status,
159 const std::size_t flowSize,
160 const double thetaPolarization,
161 const double phiPolarization,
162 const int prodVtx,
163 const int endVtx,
164 const int barcode,
165 const double generated_mass,
166 const short recoMethod ):
167 m_px ( px ),
168 m_py ( py ),
169 m_pz ( pz ),
170 m_m ( m ),
171 m_pdgId ( pdgId ),
172 m_status ( status ),
173 m_flow ( flowSize ),
174 m_thetaPolarization ( thetaPolarization ),
175 m_phiPolarization ( phiPolarization ),
176 m_prodVtx ( prodVtx ),
177 m_endVtx ( endVtx ),
178 m_barcode ( barcode ),
179 m_generated_mass( static_cast<float>(generated_mass) ),
180 m_recoMethod ( recoMethod )
181{}
182
183#endif //> GENERATOROBJECTSTPCNV_GENPARTICLE_p6_H
float m_py
y-component of the 4-momentum of this particle
float m_m
m-component of the 4-momentum of this particle
int m_barcode
barcode of this particles (uniquely identifying this particle within a given GenEvent)
std::vector< std::pair< int, int > > m_flow
Flow for this particle.
friend class McEventCollectionCnv_p6
int m_status
Status of this particle, as defined for HEPEVT.
int m_endVtx
Barcode of the decay vertex of this particle.
short m_recoMethod
switch to know which method to chose to better recover the original HepLorentzVector.
float m_generated_mass
mass of this particle when it was generated
float m_phiPolarization
phi polarization
float m_pz
z-component of the 4-momentum of this particle
int m_pdgId
identity of this particle, according to the Particle Data Group notation
float m_thetaPolarization
polarization
int m_prodVtx
Barcode of the production vertex of this particle.
float m_px
x-component of the 4-momentum of this particle
GenParticle_p6()
Default constructor: