EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RawTowerGeom.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file RawTowerGeom.h
1 #ifndef CALOBASE_RAWTOWERGEO_H
2 #define CALOBASE_RAWTOWERGEO_H
3 
4 #include "RawTowerDefs.h"
5 
6 #include <phool/PHObject.h>
7 #include <phool/phool.h>
8 
9 #include <cmath>
10 #include <iostream>
11 
12 class RawTowerGeom : public PHObject
13 {
14  public:
15  ~RawTowerGeom() override {}
16 
17  void identify(std::ostream& os = std::cout) const override;
18 
19  virtual void set_id(RawTowerDefs::keytype) { PHOOL_VIRTUAL_WARN("set_id()"); }
20 
21  virtual RawTowerDefs::keytype get_id() const
22  {
23  PHOOL_VIRTUAL_WARN("get_id()");
24  return 0;
25  }
26 
27  virtual int get_bineta() const
28  {
29  PHOOL_VIRTUAL_WARN("get_ieta()");
30  return -1;
31  }
32 
33  virtual int get_binphi() const
34  {
35  PHOOL_VIRTUAL_WARN("get_iphi()");
36  return -1;
37  }
38 
39  virtual int get_binl() const
40  {
41  PHOOL_VIRTUAL_WARN("get_binl()");
42  return -1;
43  }
44 
45  virtual int get_column() const
46  {
47  PHOOL_VIRTUAL_WARN("get_column()");
48  return -1;
49  }
50 
51  virtual int get_row() const
52  {
53  PHOOL_VIRTUAL_WARN("get_row()");
54  return -1;
55  }
56 
57  virtual void set_center_x(double)
58  {
59  PHOOL_VIRTUAL_WARN("set_center_x()");
60  return;
61  }
62 
63  virtual void set_center_y(double)
64  {
65  PHOOL_VIRTUAL_WARN("set_center_y()");
66  return;
67  }
68 
69  virtual void set_center_z(double)
70  {
71  PHOOL_VIRTUAL_WARN("set_center_z()");
72  return;
73  }
74 
75  virtual void set_size_x(double)
76  {
77  PHOOL_VIRTUAL_WARN("set_size_x()");
78  return;
79  }
80 
81  virtual void set_size_y(double)
82  {
83  PHOOL_VIRTUAL_WARN("set_size_y()");
84  return;
85  }
86 
87  virtual void set_size_z(double)
88  {
89  PHOOL_VIRTUAL_WARN("set_size_z()");
90  return;
91  }
92 
93  virtual double get_center_x() const
94  {
95  PHOOL_VIRTUAL_WARN("get_center_x()");
96  return NAN;
97  }
98 
99  virtual double get_center_y() const
100  {
101  PHOOL_VIRTUAL_WARN("get_center_y()");
102  return NAN;
103  }
104 
105  virtual double get_center_z() const
106  {
107  PHOOL_VIRTUAL_WARN("get_center_z()");
108  return NAN;
109  }
110 
111  virtual double get_size_x() const
112  {
113  PHOOL_VIRTUAL_WARN("get_size_x()");
114  return NAN;
115  }
116 
117  virtual double get_size_y() const
118  {
119  PHOOL_VIRTUAL_WARN("get_size_y()");
120  return NAN;
121  }
122 
123  virtual double get_size_z() const
124  {
125  PHOOL_VIRTUAL_WARN("get_size_z()");
126  return NAN;
127  }
128 
129  virtual double get_volume() const
130  {
131  PHOOL_VIRTUAL_WARN("get_volume()");
132  return NAN;
133  }
134 
135  virtual double get_center_radius() const
136  {
137  PHOOL_VIRTUAL_WARN("get_center_radius()");
138  return NAN;
139  }
140 
141  virtual double get_eta() const
142  {
143  PHOOL_VIRTUAL_WARN("get_eta()");
144  return NAN;
145  }
146 
147  virtual double get_theta() const
148  {
149  PHOOL_VIRTUAL_WARN("get_theta()");
150  return NAN;
151  }
152 
153  virtual double get_phi() const
154  {
155  PHOOL_VIRTUAL_WARN("get_phi()");
156  return NAN;
157  }
158 
159  virtual void set_tower_type(int)
160  {
161  PHOOL_VIRTUAL_WARN("set_tower_type()");
162  return;
163  }
164  virtual int get_tower_type() const
165  {
166  PHOOL_VIRTUAL_WARN("get_tower_type()");
167  return -1;
168  }
169 
170  virtual double get_roty() const
171  {
172  PHOOL_VIRTUAL_WARN("get_roty()");
173  return NAN;
174  }
175  virtual double get_rotz() const
176  {
177  PHOOL_VIRTUAL_WARN("get_rotz()");
178  return NAN;
179  }
180 
181  virtual void set_roty(double)
182  {
183  PHOOL_VIRTUAL_WARN("set_roty()");
184  return;
185  }
186  virtual void set_rotz(double)
187  {
188  PHOOL_VIRTUAL_WARN("set_rotz()");
189  return;
190  }
191 
192  protected:
194 
195  ClassDefOverride(RawTowerGeom, 2)
196 };
197 
198 #endif