File indexing completed on 2025-08-05 08:17:53
0001
0002
0003
0004
0005 #ifndef G4EPD_PHG4EPDSUBSYSTEM_H
0006 #define G4EPD_PHG4EPDSUBSYSTEM_H
0007
0008 #include <g4detectors/PHG4DetectorSubsystem.h>
0009
0010 #include <string>
0011
0012 class PHCompositeNode;
0013 class PHG4Detector;
0014 class PHG4DisplayAction;
0015 class PHG4EPDDetector;
0016 class PHG4SteppingAction;
0017
0018 class PHG4EPDSubsystem : public PHG4DetectorSubsystem
0019 {
0020 public:
0021 PHG4EPDSubsystem(const std::string& name = "EPD");
0022 ~PHG4EPDSubsystem() override;
0023
0024
0025
0026
0027 int InitRunSubsystem(PHCompositeNode* node) override;
0028
0029
0030
0031 int process_event(PHCompositeNode*) override;
0032
0033 PHG4Detector* GetDetector() const override;
0034 PHG4SteppingAction* GetSteppingAction() const override { return m_SteppingAction; };
0035 PHG4DisplayAction* GetDisplayAction() const override { return m_DisplayAction; }
0036
0037 private:
0038 void SetDefaultParameters() override;
0039
0040
0041
0042 PHG4EPDDetector* m_Detector = nullptr;
0043
0044
0045
0046 PHG4SteppingAction* m_SteppingAction = nullptr;
0047
0048
0049
0050 PHG4DisplayAction* m_DisplayAction = nullptr;
0051
0052 std::string m_HitNodeName;
0053 std::string m_SupportNodeName;
0054 };
0055
0056 #endif