Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-06 08:17:52

0001 #ifndef __MBD_GEOM_V2_H__
0002 #define __MBD_GEOM_V2_H__
0003 
0004 #include "MbdGeom.h"
0005 #include <map>
0006 
0007 class MbdGeomV2 : public MbdGeom
0008 {
0009  public:
0010   MbdGeomV2();
0011   ~MbdGeomV2() override = default;
0012 
0013   float get_x(const unsigned int pmtch) const override { return pmt_x[pmtch]; }
0014   float get_y(const unsigned int pmtch) const override { return pmt_y[pmtch]; }
0015   float get_z(const unsigned int pmtch) const override { return pmt_z[pmtch]; }
0016   float get_r(const unsigned int pmtch) const override { return pmt_r[pmtch]; }
0017   float get_phi(const unsigned int pmtch) const override { return pmt_phi[pmtch]; }
0018 
0019   void set_xyz(const unsigned int ipmt, const float x, const float y, const float z) override;
0020 
0021   void download_hv() override;
0022   const std::multimap<int,int>& get_hvmap();
0023 
0024   virtual void Reset() override {}
0025 
0026  private:
0027   float pmt_x[128]{};
0028   float pmt_y[128]{};
0029   float pmt_z[128]{};
0030   float pmt_r[128]{};
0031   float pmt_phi[128]{};
0032 
0033   std::multimap<int,int> pmt_hv;
0034 
0035   ClassDefOverride(MbdGeomV2, 1)
0036 };
0037 
0038 #endif  // __MBD_GEOM_V2_H__