ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RawTowerBuilder.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file RawTowerBuilder.h
1 #ifndef G4CALO_RAWTOWERBUILDER_H
2 #define G4CALO_RAWTOWERBUILDER_H
3 
4 #include <fun4all/SubsysReco.h>
5 
6 #include <string>
7 
8 class PHCompositeNode;
11 
13 {
14  public:
15  RawTowerBuilder(const std::string &name = "RawTowerBuilder");
16  ~RawTowerBuilder() override {}
17  int InitRun(PHCompositeNode *topNode) override;
18  int process_event(PHCompositeNode *topNode) override;
19  void Detector(const std::string &d) { m_Detector = d; }
20  void EminCut(const double e) { m_Emin = e; }
21  void checkenergy(const int i = 1) { m_ChkEnergyConservationFlag = i; }
23  {
26 
29 
30  };
31 
34  {
35  return m_TowerEnergySrcEnum;
36  }
37 
38  void
40  {
41  m_TowerEnergySrcEnum = towerEnergySrc;
42  }
43 
44  std::string
46  {
47  return m_SimTowerNodePrefix;
48  }
49 
50  void
51  set_sim_tower_node_prefix(const std::string &simTowerNodePrefix)
52  {
53  m_SimTowerNodePrefix = simTowerNodePrefix;
54  }
55 
56  protected:
57  void CreateNodes(PHCompositeNode *topNode);
58 
61 
62  std::string m_Detector;
63  std::string m_TowerNodeName;
64  std::string m_TowerGeomNodeName;
65  std::string m_SimTowerNodePrefix;
66 
73  double m_Emin;
74  double m_EtaMin;
75  double m_PhiMin;
76  double m_EtaStep;
77  double m_PhiStep;
78 };
79 
80 #endif // G4CALO_RAWTOWERBUILDER_H