ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHG4CylinderCellGeom_Spacalv1.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PHG4CylinderCellGeom_Spacalv1.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 // $Id: $
4 
13 #ifndef G4DETECTORS_PHG4CYLINDERCELLGEOMSPACALV1_H
14 #define G4DETECTORS_PHG4CYLINDERCELLGEOMSPACALV1_H
15 
16 #include "PHG4CylinderCellGeom.h"
17 
18 #include <iostream> // for cout, ostream
19 #include <map>
20 #include <utility> // for pair
21 
26 {
27 public:
30 
31  void identify(std::ostream& os = std::cout) const override;
32 
33  std::pair<double, double>
34  get_zbounds(const int ibin) const override;
35  std::pair<double, double>
36  get_etabounds(const int ibin) const override;
37 
38  double
39  get_etacenter(const int ibin) const override;
40  double
41  get_zcenter(const int ibin) const override;
42 
43  int
44  get_etabin(const double eta) const override;
45  int
46  get_zbin(const double z) const override;
47 
48  void
49  set_zbounds(const int ibin, const std::pair<double, double> & bounds);
50  void
51  set_etabounds(const int ibin, const std::pair<double, double> & bounds);
52 
53  typedef std::pair<double, double> bound_t;
54  typedef std::map<int, bound_t> bound_map_t;
55 
56  const bound_map_t &
58  {
60  return eta_bound_map;
61  }
62 
63  void
64  set_eta_bound_map(const bound_map_t & etaBoundMap)
65  {
66  eta_bound_map = etaBoundMap;
67  }
68 
69  const bound_map_t &
71  {
73  return z_bound_map;
74  }
75 
76  void
77  set_z_bound_map(const bound_map_t & boundMap)
78  {
79  z_bound_map = boundMap;
80  }
81 
83  typedef std::map<int, int> tower_z_ID_eta_bin_map_t;
84 
88  {
90  }
91 
92  virtual int
93  get_etabin_block(const int tower_z_ID) const;
94 
96  void
98  {
100  }
101 
102 protected:
103 
104  void
105  map_consistency_check() const;
106 
109 
112 
113 ClassDefOverride(PHG4CylinderCellGeom_Spacalv1,2)
114 
115 };
116 
117 #endif /* PHG4CYLINDERCELLGEOMSPACALV1_H_ */