ATLAS Offline Software
Loading...
Searching...
No Matches
IParticleDecayHelper.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
6// IParticleDecayHelper.h, (c) ATLAS Detector software
8
9#ifndef ISF_FATRASINTERFACES_IPARTICLEDECAYHELPER_H
10#define ISF_FATRASINTERFACES_IPARTICLEDECAYHELPER_H
11
12// Gaudi
13#include "GaudiKernel/IAlgTool.h"
15
16// Amg
18
19namespace ISF
20{
21 class ISFParticle;
22}
23
24namespace iFatras
25{
26
42
43 class ATLAS_NOT_THREAD_SAFE IParticleDecayHelper : virtual public IAlgTool // deprecated: ATLASSIM-6020
44 {
45 public:
46
49
52
54 virtual double freePath(const ISF::ISFParticle& isp) const = 0;
55
57 virtual void decay(const ISF::ISFParticle& isp,
58 const Amg::Vector3D& vertex,
59 const Amg::Vector3D& mom,
60 double timeStamp = 0.) const = 0;
61
63 virtual std::vector<ISF::ISFParticle*> decayParticle( const ISF::ISFParticle& parent,
64 const Amg::Vector3D& vertex,
65 const Amg::Vector3D& mom,
66 double timeStamp = 0.) const = 0;
67 };
68
69}
70
71#endif // ISF_FATRASINTERFACES_IPARTICLEDECAYHELPER_H
72
Define macros for attributes used to control the static checker.
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
The generic ISF particle definition,.
Definition ISFParticle.h:42
Interface definition for the Particle decay helper in Fatras, the particle transport of the particle ...
virtual ~IParticleDecayHelper()
Virtual destructor.
DeclareInterfaceID(IParticleDecayHelper, 1, 0)
Creates the InterfaceID and interfaceID() method.
virtual double freePath(const ISF::ISFParticle &isp) const =0
free path estimator (-1 for stable particle)
virtual std::vector< ISF::ISFParticle * > decayParticle(const ISF::ISFParticle &parent, const Amg::Vector3D &vertex, const Amg::Vector3D &mom, double timeStamp=0.) const =0
decay
virtual void decay(const ISF::ISFParticle &isp, const Amg::Vector3D &vertex, const Amg::Vector3D &mom, double timeStamp=0.) const =0
decay (includes handling of secondaries)
Eigen::Matrix< double, 3, 1 > Vector3D
ISFParticleOrderedQueue.