ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RawTowerBuilderDRCALO.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file RawTowerBuilderDRCALO.h
1 #ifndef G4CALO__RAWTOWERBUILDERDRCALO_H
2 #define G4CALO__RAWTOWERBUILDERDRCALO_H
3 
4 #include <calobase/RawTowerDefs.h>
5 
6 #include <fun4all/SubsysReco.h>
7 
8 #include <map>
9 #include <string>
10 
11 class PHCompositeNode;
12 class RawTowerContainer;
14 
21 {
22  public:
23  RawTowerBuilderDRCALO(const std::string &name = "RawTowerBuilderDRCALO");
24  ~RawTowerBuilderDRCALO() override {}
25 
26  int InitRun(PHCompositeNode *topNode) override;
27 
28  int process_event(PHCompositeNode *topNode) override;
29 
30  int End(PHCompositeNode *topNode) override;
31 
34  void Detector(const std::string &d);
37  void GeometryTableFile(const std::string &d)
38  {
40  }
44  void EminCut(const double e) { m_Emin = e; }
45 
49  std::string
51  {
52  return m_SimTowerNodePrefix;
53  }
54 
58  void
59  set_sim_tower_node_prefix(const std::string &simTowerNodePrefix)
60  {
61  m_SimTowerNodePrefix = simTowerNodePrefix;
62  }
63 
64  private:
69  void CreateNodes(PHCompositeNode *topNode);
70 
73  bool ReadGeometryFromTable();
74 
77 
78  std::string m_Detector;
79  std::string m_SimTowerNodePrefix;
80 
81  std::string m_MappingTowerFile;
82 
83 
85 
89 
90  double m_Emin;
91 
92  std::map<std::string, double> m_GlobalParameterMap;
93 };
94 
95 #endif