]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliMagFMapsV1.h
b94d6422283f08739b93477e4fb5f5fa18c604bc
[u/mrichter/AliRoot.git] / STEER / AliMagFMapsV1.h
1 #ifndef ALIMAGFMAPSV1_H
2 #define ALIMAGFMAPSV1_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 //
9 // Magnetic field composed by 4 maps: the L3 magnet (inside and outside measured region), extended region, and
10 // dipole magnet
11 // Author: Andreas Morsch <andreas.morsch@cern.ch>
12 //
13
14 #include "AliMagFMaps.h"
15 #include "AliMagFCheb.h"
16
17
18 class AliMagFMapsV1 : public AliMagFMaps
19 {
20 public:
21     AliMagFMapsV1();
22     AliMagFMapsV1(const char *name, const char *title, Int_t integ,
23                 Float_t factor, Float_t fmax, Int_t map = k2kG,
24                 Int_t l3 = 1);
25     AliMagFMapsV1(const AliMagFMapsV1& maps);             
26     AliMagFMapsV1& operator=(const AliMagFMapsV1& maps) {maps.Copy(*this); return *this;}
27     virtual ~AliMagFMapsV1();
28     virtual void    Field(const float *x, float *b) const;
29     virtual void    Field(const double *x, double *b) const;
30     virtual Float_t SolenoidField() const;
31     AliMagFCheb* GetMeasuredMap()                   const {return fMeasuredMap;}
32     void SetMeasuredMap(AliMagFCheb* parm)               {if (parm) delete parm; fMeasuredMap = parm;}
33  protected:
34     void Copy(TObject &magf) const;
35     AliMagFCheb* fMeasuredMap;    //! Measured part of the field map
36     ClassDef(AliMagFMapsV1, 0)    // Class for all Alice MagField using three Maps with Constant Mesh + measured L3 region
37 };
38
39 #endif