File indexing completed on 2025-08-05 08:17:47
0001
0002
0003 #ifndef G4DETECTORS_PHG4ENVELOPESUBSYSTEM_H
0004 #define G4DETECTORS_PHG4ENVELOPESUBSYSTEM_H
0005
0006 #include <g4main/PHG4Subsystem.h>
0007
0008 #include <Geant4/G4String.hh>
0009
0010 #include <string> // for string
0011
0012 class PHG4Detector;
0013 class PHG4EnvelopeDetector;
0014 class PHG4EnvelopeSteppingAction;
0015 class PHG4SteppingAction;
0016 class PHCompositeNode;
0017
0018 class PHG4EnvelopeSubsystem : public PHG4Subsystem
0019 {
0020 public:
0021
0022 PHG4EnvelopeSubsystem(const std::string& name = "ENVELOPE_DEFAULT", const int layer = 0);
0023
0024
0025 ~PHG4EnvelopeSubsystem(void) override
0026 {
0027 }
0028
0029
0030
0031
0032
0033
0034
0035 int Init(PHCompositeNode*) override;
0036
0037
0038 int process_event(PHCompositeNode*) override;
0039
0040
0041 PHG4Detector* GetDetector(void) const override;
0042 PHG4SteppingAction* GetSteppingAction(void) const override;
0043
0044 private:
0045
0046 PHG4EnvelopeDetector* detector_;
0047
0048
0049 PHG4EnvelopeSteppingAction* steppingAction_;
0050
0051 G4String material;
0052 int active;
0053
0054 std::string detector_type;
0055 };
0056
0057 #endif