Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-03 08:16:56

0001 #ifndef CALOBASE_RAWTOWERGEO_H
0002 #define CALOBASE_RAWTOWERGEO_H
0003 
0004 #include "RawTowerDefs.h"
0005 
0006 #include <phool/PHObject.h>
0007 #include <phool/phool.h>
0008 
0009 #include <iostream>
0010 #include <limits>
0011 
0012 class RawTowerGeom : public PHObject
0013 {
0014  public:
0015   ~RawTowerGeom() override {}
0016 
0017   RawTowerGeom(const RawTowerGeom& /*geom*/) {};
0018 
0019   void identify(std::ostream& os = std::cout) const override;
0020 
0021   virtual void set_id(RawTowerDefs::keytype) { PHOOL_VIRTUAL_WARN("set_id()"); }
0022 
0023   virtual RawTowerDefs::keytype get_id() const
0024   {
0025     PHOOL_VIRTUAL_WARN("get_id()");
0026     return 0;
0027   }
0028 
0029   virtual int get_bineta() const
0030   {
0031     PHOOL_VIRTUAL_WARN("get_ieta()");
0032     return -1;
0033   }
0034 
0035   virtual int get_binphi() const
0036   {
0037     PHOOL_VIRTUAL_WARN("get_iphi()");
0038     return -1;
0039   }
0040 
0041   virtual int get_binl() const
0042   {
0043     PHOOL_VIRTUAL_WARN("get_binl()");
0044     return -1;
0045   }
0046 
0047   virtual int get_column() const
0048   {
0049     PHOOL_VIRTUAL_WARN("get_column()");
0050     return -1;
0051   }
0052 
0053   virtual int get_row() const
0054   {
0055     PHOOL_VIRTUAL_WARN("get_row()");
0056     return -1;
0057   }
0058 
0059   virtual void set_center_x(double)
0060   {
0061     PHOOL_VIRTUAL_WARN("set_center_x()");
0062     return;
0063   }
0064 
0065   virtual void set_center_y(double)
0066   {
0067     PHOOL_VIRTUAL_WARN("set_center_y()");
0068     return;
0069   }
0070 
0071   virtual void set_center_z(double)
0072   {
0073     PHOOL_VIRTUAL_WARN("set_center_z()");
0074     return;
0075   }
0076 
0077   virtual void set_vertices(const std::vector<double>&)
0078   {
0079     PHOOL_VIRTUAL_WARN("set_vertices()");
0080     return;
0081   }
0082 
0083   virtual void compute_vertices(const std::vector<std::pair<double,double>>&, 
0084                                 const std::pair<double,double>&,
0085                                 const double&,
0086                                 const double&)
0087   {
0088     PHOOL_VIRTUAL_WARN("compute_vertices()");
0089     return;
0090   }
0091 
0092   virtual void set_size_x(double)
0093   {
0094     PHOOL_VIRTUAL_WARN("set_size_x()");
0095     return;
0096   }
0097 
0098   virtual void set_size_y(double)
0099   {
0100     PHOOL_VIRTUAL_WARN("set_size_y()");
0101     return;
0102   }
0103 
0104   virtual void set_size_z(double)
0105   {
0106     PHOOL_VIRTUAL_WARN("set_size_z()");
0107     return;
0108   }
0109 
0110   virtual double get_center_x() const
0111   {
0112     PHOOL_VIRTUAL_WARN("get_center_x()");
0113     return std::numeric_limits<float>:: quiet_NaN();
0114   }
0115 
0116   virtual double get_center_y() const
0117   {
0118     PHOOL_VIRTUAL_WARN("get_center_y()");
0119     return std::numeric_limits<float>:: quiet_NaN();
0120   }
0121 
0122   virtual double get_center_z() const
0123   {
0124     PHOOL_VIRTUAL_WARN("get_center_z()");
0125     return std::numeric_limits<float>:: quiet_NaN();
0126   }
0127 
0128   virtual double get_center_int_x() const
0129   {
0130     PHOOL_VIRTUAL_WARN("get_center_int_x()");
0131     return std::numeric_limits<float>:: quiet_NaN();
0132   }
0133 
0134   virtual double get_center_int_y() const
0135   {
0136     PHOOL_VIRTUAL_WARN("get_center_int_y()");
0137     return std::numeric_limits<float>:: quiet_NaN();
0138   }
0139 
0140   virtual double get_center_int_z() const
0141   {
0142     PHOOL_VIRTUAL_WARN("get_center_int_z()");
0143     return std::numeric_limits<float>:: quiet_NaN();
0144   }
0145   
0146   virtual double get_center_ext_x() const
0147   {
0148     PHOOL_VIRTUAL_WARN("get_center_ext_x()");
0149     return std::numeric_limits<float>:: quiet_NaN();
0150   }
0151 
0152   virtual double get_center_ext_y() const
0153   {
0154     PHOOL_VIRTUAL_WARN("get_center_ext_y()");
0155     return std::numeric_limits<float>:: quiet_NaN();
0156   }
0157 
0158   virtual double get_center_ext_z() const
0159   {
0160     PHOOL_VIRTUAL_WARN("get_center_ext_z()");
0161     return std::numeric_limits<float>:: quiet_NaN();
0162   }
0163 
0164   virtual double get_center_low_eta_x() const
0165   {
0166     PHOOL_VIRTUAL_WARN("get_center_low_eta_x()");
0167     return std::numeric_limits<float>:: quiet_NaN();
0168   }
0169 
0170   virtual double get_center_low_eta_y() const
0171   {
0172     PHOOL_VIRTUAL_WARN("get_center_low_eta_y()");
0173     return std::numeric_limits<float>:: quiet_NaN();
0174   }
0175 
0176   virtual double get_center_low_eta_z() const
0177   {
0178     PHOOL_VIRTUAL_WARN("get_center_low_eta_z()");
0179     return std::numeric_limits<float>:: quiet_NaN();
0180   }
0181 
0182   virtual double get_center_high_eta_x() const
0183   {
0184     PHOOL_VIRTUAL_WARN("get_center_high_eta_x()");
0185     return std::numeric_limits<float>:: quiet_NaN();
0186   }
0187 
0188   virtual double get_center_high_eta_y() const
0189   {
0190     PHOOL_VIRTUAL_WARN("get_center_high_eta_y()");
0191     return std::numeric_limits<float>:: quiet_NaN();
0192   }
0193 
0194   virtual double get_center_high_eta_z() const
0195   {
0196     PHOOL_VIRTUAL_WARN("get_center_high_eta_z()");
0197     return std::numeric_limits<float>:: quiet_NaN();
0198   }
0199 
0200   virtual double get_center_low_phi_x() const
0201   {
0202     PHOOL_VIRTUAL_WARN("get_center_low_phi_x()");
0203     return std::numeric_limits<float>:: quiet_NaN();
0204   }
0205 
0206   virtual double get_center_low_phi_y() const
0207   {
0208     PHOOL_VIRTUAL_WARN("get_center_low_phi_y()");
0209     return std::numeric_limits<float>:: quiet_NaN();
0210   }
0211 
0212   virtual double get_center_low_phi_z() const
0213   {
0214     PHOOL_VIRTUAL_WARN("get_center_low_phi_z()");
0215     return std::numeric_limits<float>:: quiet_NaN();
0216   }
0217 
0218   virtual double get_center_high_phi_x() const
0219   {
0220     PHOOL_VIRTUAL_WARN("get_center_high_phi_x()");
0221     return std::numeric_limits<float>:: quiet_NaN();
0222   }
0223 
0224   virtual double get_center_high_phi_y() const
0225   {
0226     PHOOL_VIRTUAL_WARN("get_center_high_phi_y()");
0227     return std::numeric_limits<float>:: quiet_NaN();
0228   }
0229 
0230   virtual double get_center_high_phi_z() const
0231   {
0232     PHOOL_VIRTUAL_WARN("get_center_high_phi_z()");
0233     return std::numeric_limits<float>:: quiet_NaN();
0234   }
0235 
0236   virtual double get_vertex_x(int) const
0237   {
0238     PHOOL_VIRTUAL_WARN("get_vertex_x()");
0239     return std::numeric_limits<float>:: quiet_NaN();
0240   }
0241 
0242   virtual double get_vertex_y(int) const
0243   {
0244     PHOOL_VIRTUAL_WARN("get_vertex_y()");
0245     return std::numeric_limits<float>:: quiet_NaN();
0246   }
0247 
0248   virtual double get_vertex_z(int) const
0249   {
0250     PHOOL_VIRTUAL_WARN("get_vertex_z()");
0251     return std::numeric_limits<float>:: quiet_NaN();
0252   }
0253 
0254   virtual double get_size_x() const
0255   {
0256     PHOOL_VIRTUAL_WARN("get_size_x()");
0257     return std::numeric_limits<float>:: quiet_NaN();
0258   }
0259 
0260   virtual double get_size_y() const
0261   {
0262     PHOOL_VIRTUAL_WARN("get_size_y()");
0263     return std::numeric_limits<float>:: quiet_NaN();
0264   }
0265 
0266   virtual double get_size_z() const
0267   {
0268     PHOOL_VIRTUAL_WARN("get_size_z()");
0269     return std::numeric_limits<float>:: quiet_NaN();
0270   }
0271 
0272   virtual double get_volume() const
0273   {
0274     PHOOL_VIRTUAL_WARN("get_volume()");
0275     return std::numeric_limits<float>:: quiet_NaN();
0276   }
0277 
0278   virtual double get_center_radius() const
0279   {
0280     PHOOL_VIRTUAL_WARN("get_center_radius()");
0281     return std::numeric_limits<float>:: quiet_NaN();
0282   }
0283 
0284   virtual double get_eta() const
0285   {
0286     PHOOL_VIRTUAL_WARN("get_eta()");
0287     return std::numeric_limits<float>:: quiet_NaN();
0288   }
0289 
0290   virtual double get_theta() const
0291   {
0292     PHOOL_VIRTUAL_WARN("get_theta()");
0293     return std::numeric_limits<float>:: quiet_NaN();
0294   }
0295 
0296   virtual double get_phi() const
0297   {
0298     PHOOL_VIRTUAL_WARN("get_phi()");
0299     return std::numeric_limits<float>:: quiet_NaN();
0300   }
0301 
0302   virtual void set_tower_type(int)
0303   {
0304     PHOOL_VIRTUAL_WARN("set_tower_type()");
0305     return;
0306   }
0307   virtual int get_tower_type() const
0308   {
0309     PHOOL_VIRTUAL_WARN("get_tower_type()");
0310     return -1;
0311   }
0312 
0313   virtual double get_rotx() const
0314   {
0315     PHOOL_VIRTUAL_WARN("get_rotx()");
0316     return std::numeric_limits<float>:: quiet_NaN();
0317   }
0318   virtual double get_roty() const
0319   {
0320     PHOOL_VIRTUAL_WARN("get_roty()");
0321     return std::numeric_limits<float>:: quiet_NaN();
0322   }
0323   virtual double get_rotz() const
0324   {
0325     PHOOL_VIRTUAL_WARN("get_rotz()");
0326     return std::numeric_limits<float>:: quiet_NaN();
0327   }
0328 
0329   virtual void set_rotx(double)
0330   {
0331     PHOOL_VIRTUAL_WARN("set_rotx()");
0332     return;
0333   }
0334   virtual void set_roty(double)
0335   {
0336     PHOOL_VIRTUAL_WARN("set_roty()");
0337     return;
0338   }
0339   virtual void set_rotz(double)
0340   {
0341     PHOOL_VIRTUAL_WARN("set_rotz()");
0342     return;
0343   }
0344 
0345  protected:
0346   RawTowerGeom() {}
0347 
0348   ClassDefOverride(RawTowerGeom, 2)
0349 };
0350 
0351 #endif