Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHG4CylinderGeom.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PHG4CylinderGeom.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 #ifndef G4DETECTORS_PHG4CYLINDERGEOM_H
4 #define G4DETECTORS_PHG4CYLINDERGEOM_H
5 
6 #include <phool/PHObject.h>
7 
8 #include <phool/phool.h>
9 
10 #include <cmath>
11 #include <iostream> // for cout, ostream
12 
13 class PHParameters;
14 
15 class PHG4CylinderGeom : public PHObject
16 {
17  public:
18  ~PHG4CylinderGeom() override {}
19 
20  // from PHObject
21  void identify(std::ostream &os = std::cout) const override;
22 
23  virtual int get_layer() const
24  {
25  PHOOL_VIRTUAL_WARN("get_layer()");
26  return -99999;
27  }
28  virtual double get_radius() const
29  {
30  PHOOL_VIRTUAL_WARN("get_radius()");
31  return NAN;
32  }
33  virtual double get_thickness() const
34  {
35  PHOOL_VIRTUAL_WARN("get_thickness()");
36  return NAN;
37  }
38  virtual double get_zmin() const
39  {
40  PHOOL_VIRTUAL_WARN("get_zmin()");
41  return NAN;
42  }
43  virtual double get_zmax() const
44  {
45  PHOOL_VIRTUAL_WARN("get_zmax()");
46  return NAN;
47  }
48  virtual int get_nscint() const
49  {
50  PHOOL_VIRTUAL_WARN("get_nscint()");
51  return -99999;
52  }
53  virtual double get_tiltangle() const
54  {
55  PHOOL_VIRTUAL_WARN("get_tiltangle()");
56  return NAN;
57  }
58  virtual double get_phi_slat_zero() const
59  {
60  PHOOL_VIRTUAL_WARN("get_phi_slat_zero()");
61  return NAN;
62  }
63 
64  virtual void set_layer(const int) { PHOOL_VIRTUAL_WARN("set_layer(const int)"); }
65  virtual void set_radius(const double) { PHOOL_VIRTUAL_WARN("set_radius(const double)"); }
66  virtual void set_thickness(const double) { PHOOL_VIRTUAL_WARN("set_thickness(const double)"); }
67  virtual void set_zmin(const double) { PHOOL_VIRTUAL_WARN("set_zmin(const double)"); }
68  virtual void set_zmax(const double) { PHOOL_VIRTUAL_WARN("set_zmax(const double)"); }
69  virtual void set_nscint(const int)
70  {
71  PHOOL_VIRTUAL_WARN("set_nscint(const int)");
72  return;
73  }
74  virtual void set_tiltangle(const double)
75  {
76  PHOOL_VIRTUAL_WARN("set_tiltangle(const double)");
77  return;
78  }
79  virtual void set_phi_slat_zero(const double)
80  {
81  PHOOL_VIRTUAL_WARN("set_phi_slat_zero (const double)");
82  return;
83  }
84 
85  virtual void find_segment_center(const int /*segment_z_bin*/, const int /*segment_phi_bin*/, double /*location*/[])
86  {
87  PHOOL_VIRTUAL_WARN("find_sensor_center");
88  return;
89  }
90  virtual void find_strip_center(const int /*segment_z_bin*/, const int /*segment_phi_bin*/, const int /*strip_column*/, const int /*strip_index*/, double /*location*/[])
91  {
92  PHOOL_VIRTUAL_WARN("find_strip_center");
93  return;
94  }
95  virtual void find_strip_index_values(const int /*segment_z_bin*/, const double /*ypos*/, const double /*zpos*/, int & /*strip_y_index*/, int & /*strip_z_index*/)
96  {
97  PHOOL_VIRTUAL_WARN("find_strip_index_values");
98  return;
99  }
100  virtual void find_strip_center_local_coords(const int /*segment_z_bin*/, const int /*strip_y_index*/, const int /*strip_z_index*/, double /*location*/[])
101  {
102  PHOOL_VIRTUAL_WARN("find_strip_center_localcoords");
103  return;
104  }
105 
106  virtual double get_strip_y_spacing() const
107  {
108  PHOOL_VIRTUAL_WARN("get_strip_y_spacing");
109  return NAN;
110  }
111  virtual double get_strip_z_spacing() const
112  {
113  PHOOL_VIRTUAL_WARN("get_strip_z_spacing");
114  return NAN;
115  }
116  virtual double get_strip_tilt() const
117  {
118  PHOOL_VIRTUAL_WARN("get_strip_tilt");
119  return NAN;
120  }
121 
122  virtual int get_N_strip_columns() const
123  {
124  PHOOL_VIRTUAL_WARN("get_N_strip_columns");
125  return -9999;
126  }
127  virtual int get_N_strips_per_column() const
128  {
129  PHOOL_VIRTUAL_WARN("get_N_strips_per_column");
130  return -9999;
131  }
132  virtual int get_N_sensors_in_layer() const
133  {
134  PHOOL_VIRTUAL_WARN("get_N_sensors_in_layer");
135  return -9999;
136  }
137 
138  virtual double get_pixel_z() const
139  {
140  PHOOL_VIRTUAL_WARN("get_pixel_z");
141  return NAN;
142  }
143  virtual double get_pixel_x() const
144  {
145  PHOOL_VIRTUAL_WARN("get_pixel_x");
146  return NAN;
147  }
148  virtual double get_pixel_thickness() const
149  {
150  PHOOL_VIRTUAL_WARN("get_pixel_thickness");
151  return NAN;
152  }
153 
155  virtual void ImportParameters(const PHParameters & /*param*/) { return; }
156 
157  protected:
159 
160  ClassDefOverride(PHG4CylinderGeom, 1)
161 };
162 
163 #endif