6#include "HepPDT/ParticleDataTable.hh"
20 decokey = containerKey + decokey.
key();
23 return StatusCode::SUCCESS;
79 const HepPDT::ParticleData* pd_pi = particleDataTable->particle(
MC::PIPLUS);
80 const HepPDT::ParticleData* pd_p = particleDataTable->particle(
MC::PROTON);
81 const HepPDT::ParticleData* pd_e = particleDataTable->particle(
MC::ELECTRON);
82 const HepPDT::ParticleData* pd_K = particleDataTable->particle(
MC::K0S);
83 const HepPDT::ParticleData* pd_L = particleDataTable->particle(
MC::LAMBDA0);
91 return StatusCode::SUCCESS;
120 double ptError =
m_V0Tools->pTError(unconstrV0);
122 double rxyError =
m_V0Tools->rxyError(unconstrV0);
125 decorKsMass( *unconstrV0 ) = mass_ks;
126 decorLaMass( *unconstrV0 ) = mass_la;
127 decorLbMass( *unconstrV0 ) = mass_lb;
128 decorKsMassErr( *unconstrV0 ) = mass_error_ks;
129 decorLaMassErr( *unconstrV0 ) = mass_error_la;
130 decorLbMassErr( *unconstrV0 ) = mass_error_lb;
131 decorPt_v0( *unconstrV0 ) = pt;
132 decorPtErr_v0( *unconstrV0 ) =ptError;
133 decorRxy_v0( *unconstrV0 ) = rxy;
134 decorRxyErr_v0( *unconstrV0 ) =rxyError;
135 decorPx_v0( *unconstrV0 ) = momentum.x();
136 decorPy_v0( *unconstrV0 ) = momentum.y();
137 decorPz_v0( *unconstrV0 ) = momentum.z();
139 return StatusCode::SUCCESS;
160 double ptError =
m_V0Tools->pTError(ksV0);
162 double rxyError =
m_V0Tools->rxyError(ksV0);
165 decorMass_ks( *ksV0 ) = mass_ks;
166 decorMassErr_ks( *ksV0 ) = mass_error_ks;
167 decorPt_ks( *ksV0 ) = pt;
168 decorPtErr_ks( *ksV0 ) = ptError;
169 decorRxy_ks( *ksV0 ) = rxy;
170 decorRxyErr_ks( *ksV0 ) = rxyError;
171 decorPx_ks( *ksV0 ) = momentum.x();
172 decorPy_ks( *ksV0 ) = momentum.y();
173 decorPz_ks( *ksV0 ) = momentum.z();
175 return StatusCode::SUCCESS;
195 double ptError =
m_V0Tools->pTError(laV0);
197 double rxyError =
m_V0Tools->rxyError(laV0);
200 decorMass_la( *laV0 ) = mass_la;
201 decorMassErr_la( *laV0 ) = mass_error_la;
202 decorPt_la( *laV0 ) = pt;
203 decorPtErr_la( *laV0 ) = ptError;
204 decorRxy_la( *laV0 ) = rxy;
205 decorRxyErr_la( *laV0 ) = rxyError;
206 decorPx_la( *laV0 ) = momentum.x();
207 decorPy_la( *laV0 ) = momentum.y();
208 decorPz_la( *laV0 ) = momentum.z();
210 return StatusCode::SUCCESS;
230 double ptError =
m_V0Tools->pTError(lbV0);
232 double rxyError =
m_V0Tools->rxyError(lbV0);
235 decorMass_lb( *lbV0 ) = mass_lb;
236 decorMassErr_lb( *lbV0 ) = mass_error_lb;
237 decorPt_lb( *lbV0 ) = pt;
238 decorPtErr_lb( *lbV0 ) = ptError;
239 decorRxy_lb( *lbV0 ) = rxy;
240 decorRxyErr_lb( *lbV0 ) = rxyError;
241 decorPx_lb( *lbV0 ) = momentum.x();
242 decorPy_lb( *lbV0 ) = momentum.y();
243 decorPz_lb( *lbV0 ) = momentum.z();
245 return StatusCode::SUCCESS;
#define ATH_CHECK
Evaluate an expression and check for errors.
ATLAS-specific HepMC functions.
Handle class for adding a decoration to an object.
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPx_ks
DoubleProperty m_masse
electron mass (0.510999 MeV)
StatusCode decorateV0(xAOD::VertexContainer *container, const EventContext &ctx) const
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPx_v0
StatusCode decoratela(xAOD::VertexContainer *container, const EventContext &ctx) const
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorRxyErr_v0
Gaudi::Property< std::string > m_v0Key
ServiceHandle< IPartPropSvc > m_partPropSvc
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPy_v0
DoubleProperty m_massK0S
Kshort mass (497.672 MeV)
Gaudi::Property< std::string > m_lbKey
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorMassErr_ks
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorMassErr_la
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorRxyErr_la
DoubleProperty m_massp
proton mass (938.272 MeV)
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorLbMassErr
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPtErr_v0
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorLbMass
DoubleProperty m_massLambda
Lambda mass (1115.68 MeV)
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorKsMassErr
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPt_ks
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPt_v0
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPtErr_ks
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorKsMass
V0MainDecorator(const std::string &t, const std::string &n, const IInterface *p)
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPtErr_la
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorMass_ks
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorRxy_v0
StatusCode decoratelb(xAOD::VertexContainer *container, const EventContext &ctx) const
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPy_la
StatusCode initKey(const std::string &, SG::WriteDecorHandleKey< xAOD::VertexContainer > &decokey) const
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorRxy_la
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPz_v0
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPz_lb
IntegerProperty m_masses
= 1 if using PDG values, = 2 if user set (1)
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPt_la
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPy_lb
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorRxyErr_ks
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPtErr_lb
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorLaMassErr
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPx_la
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorMass_lb
Gaudi::Property< std::string > m_laKey
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorMass_la
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPz_ks
DoubleProperty m_masspi
pion mass (139.57 MeV)
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPz_la
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorMassErr_lb
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPt_lb
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorRxyErr_lb
Gaudi::Property< std::string > m_ksKey
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPx_lb
ToolHandle< Trk::V0Tools > m_V0Tools
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorLaMass
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorRxy_lb
StatusCode decorateks(xAOD::VertexContainer *container, const EventContext &ctx) const
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorPy_ks
SG::WriteDecorHandleKey< xAOD::VertexContainer > m_decorRxy_ks
const std::string & key() const
Return the StoreGate ID for the referenced object.
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
Handle class for adding a decoration to an object.
Eigen::Matrix< double, 3, 1 > Vector3D
static const int ELECTRON
VertexContainer_v1 VertexContainer
Definition of the current "Vertex container version".