1#ifndef SIMG4FAST_FASTSIMMODELTRACKER_H
2#define SIMG4FAST_FASTSIMMODELTRACKER_H
8#include "G4VFastSimulationModel.hh"
11#include "GaudiKernel/IMessageSvc.h"
12#include "GaudiKernel/MsgStream.h"
13#include "GaudiKernel/ServiceHandle.h"
14#include "GaudiKernel/ToolHandle.h"
50 ToolHandle<ISimG4ParticleSmearTool>& aSmearTool,
double aMinMomentum,
51 double aMaxMomentum,
double aMaxEta);
55 explicit FastSimModelTracker(
const std::string& aModelName, ToolHandle<ISimG4ParticleSmearTool>& aSmearTool);
60 virtual G4bool
IsApplicable(
const G4ParticleDefinition& aParticle)
final;
64 virtual G4bool
ModelTrigger(
const G4FastTrack& aFastTrack)
final;
71 virtual void DoIt(
const G4FastTrack& aFastTrack, G4FastStep& aFastStep)
final;
Interface to the particle smearing tool.
Definition ISimG4ParticleSmearTool.h:20
Definition FastSimModelTracker.h:37
ToolHandle< ISimG4ParticleSmearTool > & m_smearTool
Pointer to a smearing tool.
Definition FastSimModelTracker.h:79
MsgStream m_log
Message Stream.
Definition FastSimModelTracker.h:77
FastSimModelTracker(const std::string &aModelName, G4Region *aEnvelope, ToolHandle< ISimG4ParticleSmearTool > &aSmearTool, double aMinMomentum, double aMaxMomentum, double aMaxEta)
Constructor.
Definition FastSimModelTracker.cpp:20
double m_maxTriggerMomentum
maximum P that triggers model
Definition FastSimModelTracker.h:83
double m_minTriggerMomentum
minimum P that triggers model
Definition FastSimModelTracker.h:81
ServiceHandle< IMessageSvc > m_msgSvc
Message Service.
Definition FastSimModelTracker.h:75
virtual G4bool ModelTrigger(const G4FastTrack &aFastTrack) final
Check if the model should be applied taking into account the kinematics of a track.
Definition FastSimModelTracker.cpp:53
double m_maxTriggerEta
maximum eta that triggers model
Definition FastSimModelTracker.h:85
virtual G4bool IsApplicable(const G4ParticleDefinition &aParticle) final
Check if this model should be applied to this particle type.
Definition FastSimModelTracker.cpp:49
virtual ~FastSimModelTracker()
Definition FastSimModelTracker.cpp:47
virtual void DoIt(const G4FastTrack &aFastTrack, G4FastStep &aFastStep) final
Apply the parametrisation.
Definition FastSimModelTracker.cpp:75
Conversion between units.
Definition ConstantField.h:14