test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MFGrid.h
Go to the documentation of this file.
1 #ifndef MFGrid_h
2 #define MFGrid_h
3 
14 
15 struct Dimensions
16 {
17  int w;
18  int h;
19  int d;
20 };
21 
22 struct Indexes
23 {
24  int i;
25  int j;
26  int k;
27 };
28 
29 class MFGrid : public MagProviderInterpol {
30 public:
31 
36 
37  explicit MFGrid( const GloballyPositioned<float>& vol) : frame_(vol) {}
38 
39  virtual ~MFGrid() {}
40 
42  virtual LocalVector valueInTesla( const LocalPoint& p) const = 0;
43 
44  virtual void dump() const {}
45 
47  virtual void toGridFrame( const LocalPoint& p, double& a, double& b, double& c) const = 0;
48 
50  virtual LocalPoint fromGridFrame( double a, double b, double c) const = 0;
51 
52  virtual Dimensions dimensions() const = 0;
53 
55  virtual LocalPoint nodePosition( int i, int j, int k) const = 0;
56 
58  virtual LocalVector nodeValue( int i, int j, int k) const = 0;
59 
60  virtual Indexes index( const LocalPoint& p) const {return Indexes();}
61 
63  const GloballyPositioned<float>& frame() const { return frame_;}
64 
65 private:
66 
68 
69 };
70 
71 #endif
int i
Definition: DBlmapReader.cc:9
virtual Indexes index(const LocalPoint &p) const
Definition: MFGrid.h:60
int j
Definition: MFGrid.h:25
int i
Definition: MFGrid.h:24
Definition: MFGrid.h:22
GloballyPositioned< float >::GlobalVector GlobalVector
Definition: MFGrid.h:33
GloballyPositioned< float >::LocalPoint LocalPoint
Definition: MFGrid.h:34
virtual void toGridFrame(const LocalPoint &p, double &a, double &b, double &c) const =0
find grid coordinates for point. For debugging and validation only.
int k
Definition: MFGrid.h:26
virtual ~MFGrid()
Definition: MFGrid.h:39
int w
Definition: MFGrid.h:17
virtual LocalVector nodeValue(int i, int j, int k) const =0
Field value at node.
virtual LocalPoint nodePosition(int i, int j, int k) const =0
Position of node in local frame.
GloballyPositioned< float > frame_
Definition: MFGrid.h:67
virtual Dimensions dimensions() const =0
int j
Definition: DBlmapReader.cc:9
virtual LocalPoint fromGridFrame(double a, double b, double c) const =0
find grid coordinates for point. For debugging and validation only.
virtual LocalVector valueInTesla(const LocalPoint &p) const =0
Interpolated field value at given point.
virtual void dump() const
Definition: MFGrid.h:44
GloballyPositioned< float >::GlobalPoint GlobalPoint
Definition: MFGrid.h:32
MFGrid(const GloballyPositioned< float > &vol)
Definition: MFGrid.h:37
double b
Definition: hdecay.h:120
Definition: MFGrid.h:29
int d
Definition: MFGrid.h:19
int h
Definition: MFGrid.h:18
GloballyPositioned< float >::LocalVector LocalVector
Definition: MFGrid.h:35
double a
Definition: hdecay.h:121
const GloballyPositioned< float > & frame() const
Local reference frame.
Definition: MFGrid.h:63