Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

BfldMapRect2d.h

Go to the documentation of this file.
00001 
00002 // $Id: BfldMapRect2d.h,v 1.8 2005/02/03 23:00:29 rhatcher Exp $
00003 //
00004 // BfldMapRect2d
00005 //
00006 // This structure provides services for holding the magnetic field components
00007 // at a series of points (cf. BfldMesh).  It encapsulates knowledge 
00008 // about the field values themselves, an possibly how to adjust them
00009 // for external effects (chemistry, coil current, etc.) but doesn't
00010 // explicitly hold any knowledge about the relative spatial placement
00011 // of the field values; that it must glean from BfldMesh.
00012 //
00013 // This class is specialized to handle the old rectangular 2d grid maps
00014 //
00015 // Author:  R. Hatcher 2000.06.20
00016 //
00018 #ifndef BFLDMAPRECT2D_H
00019 #define BFLDMAPRECT2D_H
00020 
00021 #include <string>
00022 
00023 #include "BField/BfldMap.h"
00024 
00025 class BfldMapRect2d : public BfldMap {
00026 
00027  public:
00028    BfldMapRect2d();
00029    BfldMapRect2d(BfldGrid::Grid_t grid, Int_t variant);
00030    virtual ~BfldMapRect2d();
00031 
00032    // BfldMeshRect2d needs to know the position info for this map
00033    inline Float_t       GetX0() const { return fX0; }
00034    inline Float_t       GetY0() const { return fY0; }
00035    inline Float_t       GetDx() const { return fDx; }
00036    inline Float_t       GetDy() const { return fDy; }
00037    inline Int_t         GetNx() const { return fNx; }
00038    inline Int_t         GetNy() const { return fNy; }
00039 
00040    inline Bool_t        GetIsUVZ() const { return fIsUVZ; }
00041 
00042    inline const Int_t*  GetQuadFlags() const { return fQuadFlags; }
00043 
00044  protected:
00045 
00046    std::string   fHeader;       // descriptive header in file
00047 
00048    Float_t       fX0;           // lowest x value
00049    Float_t       fDx;           // x increment (base length unit)
00050    Int_t         fNx;           // number of x values
00051 
00052    Float_t       fY0;           // lowest y value
00053    Float_t       fDy;           // y increment (base length unit)
00054    Int_t         fNy;           // number of y values
00055 
00056    Bool_t        fIsUVZ;        // data is in UVZ coordinates
00057 
00058    Bool_t        fQuadrant;     // true if map only has one quadrant
00059    Int_t         fQuadFlags[4]; // sign flips for different quadrants
00060    Int_t         fFileForm;     // file format (3 types of files)
00061 
00062 
00063  private:
00064 
00065    void Clear(const Option_t* = "");
00066    
00067    ClassDef(BfldMapRect2d,2)
00068 };
00069 #endif // BFLDMAPRECT2D_H

Generated on Mon Feb 15 11:06:25 2010 for loon by  doxygen 1.3.9.1