ATLAS Offline Software
IZeroLifetimePatcher.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef HEPMC_INTERFACES_IZEROLIFETIMEPATCHER_H
6 #define HEPMC_INTERFACES_IZEROLIFETIMEPATCHER_H 1
7 
8 // Gaudi
9 // framework includes
10 #include "GaudiKernel/IInterface.h"
11 #include "GaudiKernel/StatusCode.h"
12 
14 
15 namespace Simulation {
16 
24  class IZeroLifetimePatcher : virtual public IInterface {
25  public:
26 
29 
32 
34  virtual StatusCode applyWorkaround(HepMC::GenEvent& ge) const = 0;
35 
37  virtual StatusCode removeWorkaround(HepMC::GenEvent& ge) const = 0;
38 
39  };
40 
41 } // end of namespace
42 
43 #endif // HEPMC_INTERFACES_IZEROLIFETIMEPATCHER_H
Simulation::IZeroLifetimePatcher::applyWorkaround
virtual StatusCode applyWorkaround(HepMC::GenEvent &ge) const =0
Applies the workaround for zero-lifetime particles to the GenEvent.
Simulation::IZeroLifetimePatcher::DeclareInterfaceID
DeclareInterfaceID(IZeroLifetimePatcher, 1, 0)
Creates the InterfaceID and interfaceID() method.
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
GenEvent_fwd.h
Simulation::IZeroLifetimePatcher::removeWorkaround
virtual StatusCode removeWorkaround(HepMC::GenEvent &ge) const =0
Removes the workaround for zero-lifetime particles from the GenEvent.
Simulation::IZeroLifetimePatcher::~IZeroLifetimePatcher
virtual ~IZeroLifetimePatcher()
Virtual destructor.
Definition: IZeroLifetimePatcher.h:28
Simulation
Definition: BeamEffectsAlg.cxx:21
Simulation::IZeroLifetimePatcher
Definition: IZeroLifetimePatcher.h:24