ATLAS Offline Software
Loading...
Searching...
No Matches
GenParticle_p4.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_p4.h
8// Header file for class GenParticle_p4
9// Author: S.Binet<binet@cern.ch>
11#ifndef GENERATOROBJECTSTPCNV_GENPARTICLE_P4_H
12#define GENERATOROBJECTSTPCNV_GENPARTICLE_P4_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_p4( 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 short recoMethod );
47
49 // Const methods:
51
53 // Non-const methods:
55
57 // Protected data:
59 protected:
60
63 float m_px;
64
67 float m_py;
68
71 float m_pz;
72
75 float m_m;
76
80
84
87 std::vector< std::pair<int, int> > m_flow;
88
91 //std::pair<double, double> m_polarization;
92
96
100
105
110
115
125};
126
130
132 m_px ( 0 ),
133 m_py ( 0 ),
134 m_pz ( 0 ),
135 m_m ( 0 ),
136 m_pdgId ( 0 ),
137 m_status ( 0 ),
138 m_flow ( 0 ),
139 m_thetaPolarization ( 0. ),
140 m_phiPolarization ( 0. ),
141 m_prodVtx ( 0 ),
142 m_endVtx ( 0 ),
143 m_barcode ( 0 ),
144 m_recoMethod ( 0 )
145{}
146
147inline GenParticle_p4::GenParticle_p4( const double px,
148 const double py,
149 const double pz,
150 const double m,
151 const int pdgId,
152 const int status,
153 const std::size_t flowSize,
154 const double thetaPolarization,
155 const double phiPolarization,
156 const int prodVtx,
157 const int endVtx,
158 const int barcode,
159 const short recoMethod ):
160 m_px ( px ),
161 m_py ( py ),
162 m_pz ( pz ),
163 m_m ( m ),
164 m_pdgId ( pdgId ),
165 m_status ( status ),
166 m_flow ( flowSize ),
167 m_thetaPolarization ( thetaPolarization ),
168 m_phiPolarization ( phiPolarization ),
169 m_prodVtx ( prodVtx ),
170 m_endVtx ( endVtx ),
171 m_barcode ( barcode ),
172 m_recoMethod ( recoMethod )
173{}
174
175#endif //> GENERATOROBJECTSTPCNV_GENPARTICLE_P4_H
float m_px
x-component of the 4-momentum of this particle
friend class McEventCollectionCnv_p4
GenParticle_p4()
Default constructor:
int m_prodVtx
Barcode of the production vertex of this particle.
float m_m
m-component of the 4-momentum of this particle
float m_py
y-component of the 4-momentum of this particle
short m_recoMethod
switch to know which method to chose to better recover the original HepLorentzVector.
int m_pdgId
identity of this particle, according to the Particle Data Group notation
std::vector< std::pair< int, int > > m_flow
Flow for this particle.
float m_phiPolarization
phi polarization
float m_pz
z-component of the 4-momentum of this particle
float m_thetaPolarization
polarization
int m_endVtx
Barcode of the decay vertex of this particle.
int m_status
Status of this particle, as defined for HEPEVT.
int m_barcode
barcode of this particles (uniquely identifying this particle within a given GenEvent)