ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHG4HybridHomogeneousCalorimeterSubsystem.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PHG4HybridHomogeneousCalorimeterSubsystem.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 #ifndef G4DETECTORS_PHG4HYBRIDHOMOGENEOUSCALORIMETERSUBSYSTEM_H
4 #define G4DETECTORS_PHG4HYBRIDHOMOGENEOUSCALORIMETERSUBSYSTEM_H
5 
7 
8 #include <string> // for string
9 
10 class PHCompositeNode;
12 class PHG4Detector;
13 class PHG4DisplayAction;
14 class PHG4SteppingAction;
15 
17 {
18  public:
21  PHG4HybridHomogeneousCalorimeterSubsystem(const std::string &name = "CRYSTAL_DEFAULT", const int layer = 0);
22 
26 
32  int InitRunSubsystem(PHCompositeNode *) override;
33 
36  int process_event(PHCompositeNode *) override;
37 
40  PHG4Detector *GetDetector(void) const override;
42  PHG4DisplayAction *GetDisplayAction() const override { return m_DisplayAction; }
43 
46  void SetTowerMappingFile(const std::string &filename);
47 
50  void SetProjectiveGeometry(const std::string &filename1, const std::string &filename2);
53  void DoFullLightPropagation(bool doProp) { _do_lightpropagation = doProp; };
54 
55  private:
57 
58  void SetDefaultParameters() override;
59 
60  // GeometryConfiguration current_geom_config_;
61 
65 
70 
72  bool _do_lightpropagation = false;
73 };
74 
75 #endif