CMS 3D CMS Logo

LowEnergyFastSimModel.h
Go to the documentation of this file.
1 #ifndef LowEnergyFastSimModel_h
2 #define LowEnergyFastSimModel_h
3 
5 
7 
8 #include "G4VFastSimulationModel.hh"
9 #include "GFlashHitMaker.hh"
10 #include "G4Region.hh"
11 #include "G4Types.hh"
12 #include "G4ThreeVector.hh"
13 
14 class TrackingAction;
15 class G4ParticleDefinition;
16 
17 class LowEnergyFastSimModel : public G4VFastSimulationModel {
18 public:
19  LowEnergyFastSimModel(const G4String& name, G4Region* region, const edm::ParameterSet& parSet);
20 
21  G4bool IsApplicable(const G4ParticleDefinition& particle) override;
22  G4bool ModelTrigger(const G4FastTrack& fastTrack) override;
23  void DoIt(const G4FastTrack& fastTrack, G4FastStep& fastStep) override;
24 
25 private:
26  G4double fEmax;
27  const G4Envelope* fRegion;
29  const G4ParticleDefinition* fPositron;
30  G4bool fCheck;
31  G4ThreeVector fTailPos;
32  GFlashHitMaker fHitMaker;
34 };
35 
36 #endif
const G4ParticleDefinition * fPositron
G4bool IsApplicable(const G4ParticleDefinition &particle) override
const G4Envelope * fRegion
LowEnergyFastSimParam fParam
const TrackingAction * fTrackingAction
LowEnergyFastSimModel(const G4String &name, G4Region *region, const edm::ParameterSet &parSet)
void DoIt(const G4FastTrack &fastTrack, G4FastStep &fastStep) override
G4bool ModelTrigger(const G4FastTrack &fastTrack) override