ATLAS Offline Software
Loading...
Searching...
No Matches
IGeantFollowerMSHelper.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// IGeantFollowerMSHelperFollowerHelper.h, (c) ATLAS Detector software
8
9#ifndef IGeantFollowerMSHelper_H
10#define IGeantFollowerMSHelper_H
11
12// Gaudi
13#include "GaudiKernel/IAlgTool.h"
14
15#include "G4ThreeVector.hh"
16
17namespace Trk {
18
20 static const InterfaceID IID_IGeantFollowerMSHelper("IGeantFollowerMSHelper", 1, 0);
21
26 class IGeantFollowerMSHelper : virtual public IAlgTool {
27 public:
28
31
33 static const InterfaceID& interfaceID() { return IID_IGeantFollowerMSHelper; }
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 // IGeantFollowerMSHelper_H
double charge(const T &p)
Definition AtlasPID.h:997
virtual void endEvent()=0
virtual void beginEvent()=0
virtual void trackParticle(const G4ThreeVector &pos, const G4ThreeVector &mom, int pdg, double charge, float t, float X0)=0
static const InterfaceID & interfaceID()
AlgTool and IAlgTool interface methods.
virtual ~IGeantFollowerMSHelper()
Virtual destructor.
Ensure that the ATLAS eigen extensions are properly loaded.
static const InterfaceID IID_IGeantFollowerMSHelper("IGeantFollowerMSHelper", 1, 0)
Interface ID for IGeantFollowerMSHelperFollowerHelper.