Deprecated/UpgradeASCIITests/G4TankSimulatorASCII/G4TankSimulator.h
Go to the documentation of this file.
1 #ifndef _G4TankSimulatorASCII_G4TankSimulator_h_
2 #define _G4TankSimulatorASCII_G4TankSimulator_h_
3 
4 #include "G4TankStackingAction.h"
5 #include "G4TankPMT.h"
6 
7 #include <fwk/VModule.h>
8 
9 #include <utl/TimeDistribution.h>
10 
11 #include <sevt/SEvent.h>
12 #include <sevt/StationSimData.h>
13 
14 class G4RunManager;
15 class G4UImanager;
16 class G4VisManager;
17 
18 namespace sdet {
19  class Station;
20 }
21 
22 namespace G4TankSimulatorASCII {
23 
25  class G4TankPMT;
26  class G4TankStackingAction;
28 
29  // container of station id, weight
30  typedef std::map<int, double> AccumulatedWeights;
31 
42  class G4TankSimulator : public fwk::VModule {
43 
44  public:
46  virtual ~G4TankSimulator();
47 
51 
53  { return fCurrentEventStationIt; }
54 
55  static bool MuCaptureOn()
56  { return fgMuCapture; }
57 
58  private:
59  void ConstructTraces(sevt::Station& station) const;
60 
62  { return fCurrentDetectorStation; }
63 
65  { return fCurrentParticleIt; }
66 
69 
73 
76 
80 
81  G4RunManager* fRunManager;
82  G4UImanager* fUImanager;
83  G4VisManager* fVisManager;
85 
86  bool fGeoVisOn;
87  bool fTrajVisOn;
89 
91  int fFastMode;
92  static bool fgMuCapture;
93 
96 
97  std::string fEventId;
98 
99  friend class G4TankPrimaryGenerator;
100  friend class G4TankFastCerenkov;
101  friend class G4TankConstruction;
102  friend class G4TankPMTAction;
103  friend class G4TankPMT;
104  friend class G4TankPhysicsList;
105 
106  REGISTER_MODULE("G4TankSimulatorASCII", G4TankSimulator);
107 
108  };
109 
110 }
111 
112 #endif
fwk::VModule::ResultFlag Run(evt::Event &theEvent)
Run: invoked once per event.
fwk::VModule::ResultFlag Finish()
Finish: invoked at end of the run (NOT end of the event)
Detector description interface for Station-related data.
fwk::VModule::ResultFlag Init()
Initialize: invoked at beginning of run (NOT beginning of event)
class that passes particles to Geant4 particle gun
ParticleVector::iterator ParticleIterator
class to hold data at Station level
ParticleVector::const_iterator ConstParticleIterator
Module interface.
Definition: VModule.h:53
REGISTER_MODULE("G4TankSimulatorASCII", G4TankSimulator)
ResultFlag
Flag returned by module methods to the RunController.
Definition: VModule.h:60
boost::indirect_iterator< InternalStationIterator, Station & > StationIterator
Iterator over all stations.
Definition: SEvent.h:52
static sevt::StationConstants::SignalComponent GetComponentId(const sevt::StationSimData::ConstParticleIterator currentParticle)
retrieve the station signal component from particle type

, generated on Tue Sep 26 2023.