12#ifndef O2_FASTSIM_MODEL_H_
13#define O2_FASTSIM_MODEL_H_
24#include "G4VFastSimulationModel.hh"
30class G4ParticleDefinition;
76 FastSimModel(
const G4String&
name,
const G4String& envelopeVolume,
double minEnergyGeV);
78 G4bool
IsApplicable(
const G4ParticleDefinition& particle)
override;
79 G4bool
ModelTrigger(
const G4FastTrack& fastTrack)
override;
86 void DoIt(
const G4FastTrack& fastTrack, G4FastStep& fastStep)
override;
96 int envelopeDepth(
const G4Track* track)
const;
99 double mMinEnergy = 0.;
100 mutable bool mWarned =
false;
G4bool IsApplicable(const G4ParticleDefinition &particle) override
virtual std::vector< FastSimOutput > sample(const FastSimInput &input) const =0
void DoIt(const G4FastTrack &fastTrack, G4FastStep &fastStep) override
G4bool ModelTrigger(const G4FastTrack &fastTrack) override
GLuint const GLchar * name
constexpr double kSurfaceEpsilonCm
One particle leaving the envelope.
double position[3]
global; put it outside the envelope surface