Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-06 08:18:54

0001 // Tell emacs that this is a C++ source
0002 //  -*- C++ -*-.
0003 #ifndef G4DETECTORS_PHG4BLOCKGEOM_H
0004 #define G4DETECTORS_PHG4BLOCKGEOM_H
0005 
0006 #include <phool/PHObject.h>
0007 
0008 #include <phool/phool.h>
0009 
0010 #include <cmath>
0011 #include <iostream>  // for cout, ostream
0012 
0013 class PHG4BlockGeom : public PHObject
0014 {
0015  public:
0016   ~PHG4BlockGeom() override {}
0017 
0018   // from PHObject
0019   void identify(std::ostream &os = std::cout) const override;
0020 
0021   virtual int get_layer() const
0022   {
0023     PHOOL_VIRTUAL_WARN("get_layer()");
0024     return -99999;
0025   }
0026   virtual double get_size_x() const
0027   {
0028     PHOOL_VIRTUAL_WARN("get_size_x()");
0029     return NAN;
0030   }
0031   virtual double get_size_y() const
0032   {
0033     PHOOL_VIRTUAL_WARN("get_size_y()");
0034     return NAN;
0035   }
0036   virtual double get_size_z() const
0037   {
0038     PHOOL_VIRTUAL_WARN("get_size_z()");
0039     return NAN;
0040   }
0041   virtual double get_center_x() const
0042   {
0043     PHOOL_VIRTUAL_WARN("get_place_x()");
0044     return NAN;
0045   }
0046   virtual double get_center_y() const
0047   {
0048     PHOOL_VIRTUAL_WARN("get_place_y()");
0049     return NAN;
0050   }
0051   virtual double get_center_z() const
0052   {
0053     PHOOL_VIRTUAL_WARN("get_place_z()");
0054     return NAN;
0055   }
0056   virtual double get_z_rot() const
0057   {
0058     PHOOL_VIRTUAL_WARN("get_z_rot()");
0059     return NAN;
0060   }
0061 
0062   virtual double get_width() const
0063   {
0064     PHOOL_VIRTUAL_WARN("get_width()");
0065     return NAN;
0066   }
0067   virtual double get_length() const
0068   {
0069     PHOOL_VIRTUAL_WARN("get_length()");
0070     return NAN;
0071   }
0072   virtual double get_thickness() const
0073   {
0074     PHOOL_VIRTUAL_WARN("get_thickness()");
0075     return NAN;
0076   }
0077 
0078   virtual double get_rot_matrix(const int, const int) const
0079   {
0080     PHOOL_VIRTUAL_WARN("get_rot_matrix(const int, const int)");
0081     return NAN;
0082   }
0083 
0084   virtual void set_layer(const int) { PHOOL_VIRTUAL_WARN("set_layer(const int)"); }
0085   virtual void set_size(const double /*sizex*/, const double /*sizey*/, const double /*sizez*/)
0086   {
0087     PHOOL_VIRTUAL_WARN("set_size(const double, const double, const double)");
0088   }
0089   virtual void set_place(const double /*placex*/, const double /*placey*/, const double /*placez*/)
0090   {
0091     PHOOL_VIRTUAL_WARN("set_place(const double, const double, const double)");
0092   }
0093   virtual void set_z_rot(const double) { PHOOL_VIRTUAL_WARN("set_z_rot(const double)"); }
0094 
0095   virtual void convert_local_to_global(const double, const double, const double,
0096                                        double &, double &, double &) const
0097   {
0098     PHOOL_VIRTUAL_WARN("convert_local_to_global(const double, const double, const double, double &, double &, double &)");
0099   }
0100   virtual void convert_global_to_local(const double, const double, const double,
0101                                        double &, double &, double &) const
0102   {
0103     PHOOL_VIRTUAL_WARN("convert_global_to_local(const double, const double, const double, double &, double &, double &)");
0104   }
0105 
0106  protected:
0107   PHG4BlockGeom() {}
0108 
0109   ClassDefOverride(PHG4BlockGeom, 1)
0110 };
0111 
0112 #endif