Go to the documentation of this file.00001 #ifndef CylinderFromSectorMFGrid_H
00002 #define CylinderFromSectorMFGrid_H
00003
00004 #include "MagneticField/Interpolation/interface/MFGrid.h"
00005 #include "FWCore/Utilities/interface/Visibility.h"
00006
00007 class dso_internal CylinderFromSectorMFGrid : public MFGrid {
00008 public:
00009
00010 CylinderFromSectorMFGrid(const GloballyPositioned<float>& vol,
00011 double phiMin, double phiMax, MFGrid* sectorGrid);
00012
00013 ~CylinderFromSectorMFGrid();
00014
00015 virtual LocalVector valueInTesla( const LocalPoint& p) const;
00016
00017 virtual void toGridFrame( const LocalPoint& p, double& a, double& b, double& c) const ;
00018
00019 virtual LocalPoint fromGridFrame( double a, double b, double c) const ;
00020
00021 virtual Dimensions dimensions() const;
00022
00023 virtual LocalPoint nodePosition( int i, int j, int k) const ;
00024
00025 virtual LocalVector nodeValue( int i, int j, int k) const ;
00026
00027
00028 private:
00029
00030 double thePhiMin;
00031 double thePhiMax;
00032 MFGrid* theSectorGrid;
00033 double theDelta;
00034
00035 void throwUp( const char *message) const;
00036
00037 };
00038
00039 #endif