ATLAS Offline Software
NeutronFastSim.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRACKWRITEFASTSIM_NeutronFastSim_h
6 #define TRACKWRITEFASTSIM_NeutronFastSim_h
7 
8 //Base class header
9 #include "G4VFastSimulationModel.hh"
10 
11 //STL headers
12 #include <string>
13 
14 class TrackFastSimSD;
15 
16 class NeutronFastSim: public G4VFastSimulationModel
17 {
18 public:
19 
20  NeutronFastSim(const std::string& name, const std::string& fsSDname, const double etaCut, const double timeCut);
22 
23  // Fast Sim Methods
24  G4bool IsApplicable(const G4ParticleDefinition&) override final;
25  virtual G4bool ModelTrigger(const G4FastTrack &) override final;
26  void DoIt(const G4FastTrack&, G4FastStep&) override final;
27 
28 protected:
29 
30  G4double m_Energy;
32  bool m_init;
33  std::string m_fsSDname;
34  double m_etaCut;
35  double m_timeCut;
36 };
37 
38 #endif //TRACKWRITEFASTSIM_NeutronFastSim_h
TrackFastSimSD
Definition: TrackFastSimSD.h:24
NeutronFastSim::~NeutronFastSim
~NeutronFastSim()
Definition: NeutronFastSim.h:21
NeutronFastSim::ModelTrigger
virtual G4bool ModelTrigger(const G4FastTrack &) override final
Definition: NeutronFastSim.cxx:47
NeutronFastSim::m_fsSDname
std::string m_fsSDname
Definition: NeutronFastSim.h:33
NeutronFastSim::m_Energy
G4double m_Energy
Definition: NeutronFastSim.h:30
NeutronFastSim::DoIt
void DoIt(const G4FastTrack &, G4FastStep &) override final
Definition: NeutronFastSim.cxx:64
NeutronFastSim
Definition: NeutronFastSim.h:17
NeutronFastSim::m_timeCut
double m_timeCut
Definition: NeutronFastSim.h:35
NeutronFastSim::NeutronFastSim
NeutronFastSim(const std::string &name, const std::string &fsSDname, const double etaCut, const double timeCut)
Definition: NeutronFastSim.cxx:17
NeutronFastSim::IsApplicable
G4bool IsApplicable(const G4ParticleDefinition &) override final
Definition: NeutronFastSim.cxx:28
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
NeutronFastSim::m_etaCut
double m_etaCut
Definition: NeutronFastSim.h:34
NeutronFastSim::m_fsSD
TrackFastSimSD * m_fsSD
Definition: NeutronFastSim.h:31
NeutronFastSim::m_init
bool m_init
Definition: NeutronFastSim.h:32