00001 #ifndef TrapezoidalCylindricalMFGrid_H 00002 #define TrapezoidalCylindricalMFGrid_H 00003 00004 #include "MFGrid3D.h" 00005 #include "Trapezoid2RectangleMappingX.h" 00006 #include "FWCore/Utilities/interface/Visibility.h" 00007 00008 00009 class binary_ifstream; 00010 00011 class dso_internal TrapezoidalCylindricalMFGrid : public MFGrid3D { 00012 public: 00013 00014 TrapezoidalCylindricalMFGrid( binary_ifstream& istr, 00015 const GloballyPositioned<float>& vol); 00016 00017 virtual LocalVector uncheckedValueInTesla( const LocalPoint& p) const; 00018 00019 void dump() const; 00020 00021 virtual void toGridFrame( const LocalPoint& p, double& a, double& b, double& c) const; 00022 00023 virtual LocalPoint fromGridFrame( double a, double b, double c) const; 00024 00025 private: 00026 00027 Trapezoid2RectangleMappingX mapping_; 00028 00029 }; 00030 00031 #endif