File indexing completed on 2025-08-05 08:20:45
0001
0002
0003 #ifndef G4CALOPROTOTYPE_PHG4PROTOTYPE3INNERHCALSUBSYSTEM_H
0004 #define G4CALOPROTOTYPE_PHG4PROTOTYPE3INNERHCALSUBSYSTEM_H
0005
0006 #include <g4detectors/PHG4DetectorSubsystem.h>
0007
0008 #include <string>
0009
0010 class PHCompositeNode;
0011 class PHG4Detector;
0012 class PHG4Prototype3InnerHcalDetector;
0013 class PHG4SteppingAction;
0014
0015 class PHG4Prototype3InnerHcalSubsystem : public PHG4DetectorSubsystem
0016 {
0017 public:
0018
0019 PHG4Prototype3InnerHcalSubsystem(const std::string& name = "HCALIN", const int layer = 0);
0020
0021
0022 virtual ~PHG4Prototype3InnerHcalSubsystem()
0023 {
0024 }
0025
0026
0027
0028
0029
0030
0031 int InitRunSubsystem(PHCompositeNode*);
0032
0033
0034
0035
0036
0037
0038 int process_event(PHCompositeNode*);
0039
0040
0041 void Print(const std::string& what = "ALL") const;
0042
0043
0044 PHG4Detector *GetDetector() const;
0045 PHG4SteppingAction *GetSteppingAction() const { return m_SteppingAction; }
0046 void SetLightCorrection(const double inner_radius, const double inner_corr, const double outer_radius, const double outer_corr);
0047
0048 protected:
0049 void SetDefaultParameters();
0050
0051
0052
0053 PHG4Prototype3InnerHcalDetector *m_Detector;
0054
0055
0056
0057 PHG4SteppingAction *m_SteppingAction;
0058 };
0059
0060 #endif