ATLAS Offline Software
ForwardTransportModel.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef FORWARDTRANSPORT_FORWARD_TRANSPORT_MODEL_H
6 #define FORWARDTRANSPORT_FORWARD_TRANSPORT_MODEL_H
7 
8 #include "G4VFastSimulationModel.hh"
11 
13 
14 class ForwardTransportModel: public G4VFastSimulationModel {
15 
16  public:
17 
18  ForwardTransportModel(const std::string& name, const int verboseLevel, const std::string& FwdTrSvcName);
19 
20  // methods being inherited from base class
21  G4bool IsApplicable(const G4ParticleDefinition&) override final { return true; } // IDLE: we do selection in DoIt method
22  G4bool ModelTrigger(const G4FastTrack&) override final { return true; } // IDLE: we do selection in DoIt method
23  void DoIt (const G4FastTrack&, G4FastStep&) override final; // Actual selection and parametrization
24 
25 private:
26  void KillPrimaryTrack(const G4FastTrack&, G4FastStep&);
27 
28  PrimaryParticleInformation* getPrimaryParticleInformation(const G4FastTrack& fastTrack) const;
32  const int m_verboseLevel{0};
33  std::string m_FwdTrSvcName{};
34 };
35 
36 #endif //FORWARDTRANSPORT_FORWARD_TRANSPORT_MODEL_H
ForwardTransportModel::getPrimaryParticleInformation
PrimaryParticleInformation * getPrimaryParticleInformation(const G4FastTrack &fastTrack) const
Definition: ForwardTransportModel.cxx:52
ForwardTrack.h
IForwardTransportSvc.h
ForwardTransportModel::DoIt
void DoIt(const G4FastTrack &, G4FastStep &) override final
Definition: ForwardTransportModel.cxx:68
ForwardTransportModel::KillPrimaryTrack
void KillPrimaryTrack(const G4FastTrack &, G4FastStep &)
Definition: ForwardTransportModel.cxx:218
ForwardTransportModel::IsApplicable
G4bool IsApplicable(const G4ParticleDefinition &) override final
Definition: ForwardTransportModel.h:21
ForwardTransportModel::m_verboseLevel
const int m_verboseLevel
Definition: ForwardTransportModel.h:32
IForwardTransportSvc
Definition: IForwardTransportSvc.h:17
ForwardTransportModel::m_fwdTrack
ForwardTrack m_fwdTrack
Definition: ForwardTransportModel.h:30
ForwardTransportModel::m_fwdSvc
IForwardTransportSvc * m_fwdSvc
Definition: ForwardTransportModel.h:29
ForwardTransportModel::m_fwdParticle
ForwardTracker::Particle m_fwdParticle
Definition: ForwardTransportModel.h:31
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
ForwardTransportModel::ModelTrigger
G4bool ModelTrigger(const G4FastTrack &) override final
Definition: ForwardTransportModel.h:22
ForwardTransportModel::ForwardTransportModel
ForwardTransportModel(const std::string &name, const int verboseLevel, const std::string &FwdTrSvcName)
Definition: ForwardTransportModel.cxx:28
ForwardTracker::Particle
Definition: ForwardDetectors/ForwardTracker/ForwardTracker/Particle.h:17
PrimaryParticleInformation
This class is attached to G4PrimaryParticle objects as UserInformation. The member variable m_thePart...
Definition: PrimaryParticleInformation.h:39
ForwardTransportModel
Definition: ForwardTransportModel.h:14
ForwardTransportModel::m_FwdTrSvcName
std::string m_FwdTrSvcName
Definition: ForwardTransportModel.h:33
ForwardTrack
Definition: ForwardTrack.h:13