File indexing completed on 2025-12-17 09:21:31
0001
0002
0003 #ifndef G4DETECTORS_PHG4BEAMLINEMAGNETSUBSYSTEM_H
0004 #define G4DETECTORS_PHG4BEAMLINEMAGNETSUBSYSTEM_H
0005
0006 #include "PHG4DetectorSubsystem.h"
0007
0008 #include <string> // for string
0009
0010 class PHCompositeNode;
0011 class PHG4BeamlineMagnetDetector;
0012 class PHG4Detector;
0013
0014 class PHG4BeamlineMagnetSubsystem : public PHG4DetectorSubsystem
0015 {
0016 public:
0017
0018 PHG4BeamlineMagnetSubsystem(const std::string &name = "CYLINDER", const int lyr = 0);
0019
0020
0021 ~PHG4BeamlineMagnetSubsystem() override = default;
0022
0023
0024
0025
0026
0027
0028
0029 int InitRunSubsystem(PHCompositeNode *) override;
0030
0031
0032
0033
0034
0035
0036 int process_event(PHCompositeNode *) override;
0037
0038
0039 void Print(const std::string &what = "ALL") const override;
0040
0041
0042 PHG4Detector *GetDetector() const override;
0043
0044 private:
0045 void SetDefaultParameters() override;
0046
0047
0048
0049 PHG4BeamlineMagnetDetector *m_Detector {nullptr};
0050 };
0051
0052 #endif