ATLAS Offline Software
IGeantFollowerHelper.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 // IGeantFollowerHelperFollowerHelper.h, (c) ATLAS Detector software
8 
9 #ifndef IGeantFollowerHelper_H
10 #define IGeantFollowerHelper_H
11 
12 // Gaudi
13 #include "GaudiKernel/IAlgTool.h"
14 
15 #include "G4ThreeVector.hh"
16 
17 namespace Trk {
18 
20  static const InterfaceID IID_IGeantFollowerHelper("IGeantFollowerHelper", 1, 0);
21 
26  class IGeantFollowerHelper : virtual public IAlgTool {
27  public:
28 
31 
33  static const InterfaceID& interfaceID() { return IID_IGeantFollowerHelper; }
34 
35  // Follower interface
36  // a) begin event - initialize follower process
37  virtual void beginEvent() = 0;
38  // b) track the particle
39  virtual void trackParticle(const G4ThreeVector& pos, const G4ThreeVector& mom, int pdg, double charge, float t, float X0) = 0;
40  // c) end event - ntuple writing
41  virtual void endEvent() = 0;
42 
43  };
44 
45 
46 } // end of namespace
47 
48 #endif // IGeantFollowerHelper_H
Trk::IGeantFollowerHelper::trackParticle
virtual void trackParticle(const G4ThreeVector &pos, const G4ThreeVector &mom, int pdg, double charge, float t, float X0)=0
Trk::IGeantFollowerHelper::beginEvent
virtual void beginEvent()=0
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
Trk::IGeantFollowerHelper
Definition: IGeantFollowerHelper.h:26
pdg_comparison.X0
X0
Definition: pdg_comparison.py:314
ParticleGun_EoverP_Config.mom
mom
Definition: ParticleGun_EoverP_Config.py:63
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
charge
double charge(const T &p)
Definition: AtlasPID.h:756
python.LumiBlobConversion.pos
pos
Definition: LumiBlobConversion.py:18
Trk::IGeantFollowerHelper::~IGeantFollowerHelper
virtual ~IGeantFollowerHelper()
Virtual destructor.
Definition: IGeantFollowerHelper.h:30
Trk::IGeantFollowerHelper::interfaceID
static const InterfaceID & interfaceID()
AlgTool and IAlgTool interface methods.
Definition: IGeantFollowerHelper.h:33
Trk::IGeantFollowerHelper::endEvent
virtual void endEvent()=0