Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-03-17 13:03:18

0001 #ifndef Geometry_HGCalCommonData_HGCalCassette_h
0002 #define Geometry_HGCalCommonData_HGCalCassette_h
0003 
0004 #include <cmath>
0005 #include <cstdint>
0006 #include <vector>
0007 
0008 class HGCalCassette {
0009 public:
0010   HGCalCassette(int cassette, const std::vector<double>& shifts) { setParameter(cassette, shifts); }
0011   HGCalCassette() {}
0012 
0013   void setParameter(int cassette, const std::vector<double>& shifts);
0014   std::pair<double, double> getShift(int layer, int zside, int cassette) const;
0015   static int cassetteIndex(int det, int layer, int zside, int cassette);
0016 
0017 private:
0018   const std::vector<int> positEE_ = {2, 1, 0, 5, 4, 3};
0019   const std::vector<int> positHE_ = {5, 4, 3, 2, 1, 0, 11, 10, 9, 8, 7, 6};
0020   int cassette_;
0021   bool typeHE_;
0022   std::vector<double> shifts_;
0023   static constexpr int32_t factor_ = 100;
0024 };
0025 
0026 #endif