ATLAS Offline Software
Loading...
Searching...
No Matches
ForwardTransportModel.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 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"
9#include "G4Region.hh"
12#include "GaudiKernel/ServiceHandle.h"
13
15
16class ForwardTransportModel: public G4VFastSimulationModel {
17
18 public:
19
20 ForwardTransportModel(const std::string& name, G4Region* region, const int verboseLevel, const std::string& FwdTrSvcName);
21
22 // methods being inherited from base class
23 G4bool IsApplicable(const G4ParticleDefinition&) override final { return true; } // IDLE: we do selection in DoIt method
24 G4bool ModelTrigger(const G4FastTrack&) override final { return true; } // IDLE: we do selection in DoIt method
25 void DoIt (const G4FastTrack&, G4FastStep&) override final; // Actual selection and parametrization
26
27private:
28 void KillPrimaryTrack(const G4FastTrack&, G4FastStep&);
29
30 PrimaryParticleInformation* getPrimaryParticleInformation(const G4FastTrack& fastTrack) const;
31
35 const int m_verboseLevel{0};
36};
37
38#endif //FORWARDTRANSPORT_FORWARD_TRANSPORT_MODEL_H
ForwardTracker::Particle m_fwdParticle
ForwardTransportModel(const std::string &name, G4Region *region, const int verboseLevel, const std::string &FwdTrSvcName)
void DoIt(const G4FastTrack &, G4FastStep &) override final
PrimaryParticleInformation * getPrimaryParticleInformation(const G4FastTrack &fastTrack) const
G4bool IsApplicable(const G4ParticleDefinition &) override final
ServiceHandle< IForwardTransportSvc > m_fwdSvc
void KillPrimaryTrack(const G4FastTrack &, G4FastStep &)
G4bool ModelTrigger(const G4FastTrack &) override final
This class is attached to G4PrimaryParticle objects as UserInformation.