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