Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHG4IHCalSubsystem.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PHG4IHCalSubsystem.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 #ifndef G4IHCAL_PHG4IHCALSUBSYSTEM_H
4 #define G4IHCAL_PHG4IHCALSUBSYSTEM_H
5 
7 
8 #include <string>
9 
10 class PHCompositeNode;
11 class PHG4Detector;
12 class PHG4DisplayAction;
13 class PHG4IHCalDetector;
14 class PHG4SteppingAction;
15 
17 {
18  public:
20  PHG4IHCalSubsystem(const std::string& name = "HCALIN", const int layer = 0);
21 
23  ~PHG4IHCalSubsystem() override;
24 
30  int InitRunSubsystem(PHCompositeNode*) override;
31 
33 
37  int process_event(PHCompositeNode*) override;
38 
40  void Print(const std::string& what = "ALL") const override;
41 
43  PHG4Detector* GetDetector(void) const override;
44  PHG4SteppingAction* GetSteppingAction(void) const override { return m_SteppingAction; }
45  PHG4DisplayAction* GetDisplayAction() const override { return m_DisplayAction; }
46 
47  void SetLightCorrection(const double inner_radius, const double inner_corr, const double outer_radius, const double outer_corr);
48 
49  private:
50  void SetDefaultParameters() override;
51 
53 
55 
57 
59 
61 
63 
66 };
67 
68 #endif // G4IHCAL_PHG4IHCALSUBSYSTEM_H