5#ifndef BEAMEFFECTS_ZEROLIFETIMEPOSITIONER_H
6#define BEAMEFFECTS_ZEROLIFETIMEPOSITIONER_H 1
9#include "GaudiKernel/ToolHandle.h"
29 StatusCode
finalize()
override final;
32 virtual StatusCode
applyWorkaround(HepMC::GenEvent& ge)
const override final;
35 virtual StatusCode
removeWorkaround(HepMC::GenEvent& ge)
const override final;
38 StatusCode
manipulate(HepMC::GenEvent& ge,
bool applyPatch,
bool removePatch)
const;
41 Gaudi::Property<std::vector<int>>
m_pdgCodesToCheck{
this,
"PDGCodesToCheck", {421,511,531} };
Gaudi::Property< std::vector< int > > m_pdgCodesToCheck
virtual StatusCode removeWorkaround(HepMC::GenEvent &ge) const override final
Removes the workaround for zero-lifetime particles from the GenEvent.
ZeroLifetimePositioner(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters.
Gaudi::Property< bool > m_removePatch
Gaudi::Property< bool > m_applyPatch
StatusCode finalize() override final
Athena algtool's Hooks.
StatusCode initialize() override final
Athena algtool's Hooks.
virtual StatusCode applyWorkaround(HepMC::GenEvent &ge) const override final
Applies the workaround for zero-lifetime particles to the GenEvent.
StatusCode manipulate(HepMC::GenEvent &ge, bool applyPatch, bool removePatch) const
modifies (displaces) the given GenEvent