189be0e735b7473a2c4be29e2f355370c64cbe3a
[u/mrichter/AliRoot.git] / STEER / AliMagWrapCheb.h
1 #ifndef ALIMAGWRAPCHEB_H
2 #define ALIMAGWRAPCHEB_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 //
7 // Wrapper for AliMagFCheb: set of magnetic field data + Tosca parameterization by Chebyshev polynomials
8 // 
9 // Author: ruben.shahoyan@cern.ch
10 //
11
12 #include "AliMagFC.h"
13 #include "AliMagFCheb.h"
14
15
16 class AliMagWrapCheb : public AliMagFC
17 {
18 public:
19   enum constants {k2kG, k4kG, k5kG};
20   AliMagWrapCheb();
21   AliMagWrapCheb(const char *name, const char *title, Int_t integ,
22                  Float_t factor=1, Float_t fmax=15, Int_t map = k2kG,
23                  Bool_t dipoleON = kTRUE,
24                  const char* path="$(ALICE_ROOT)/data/maps/mfchebKGI_sym.root");
25   AliMagWrapCheb(const AliMagWrapCheb& maps);             
26   AliMagWrapCheb& operator=(const AliMagWrapCheb& maps);
27   virtual ~AliMagWrapCheb();
28   //
29   virtual void Field(const Float_t *x, Float_t *b)                        const;
30   virtual void Field(const Double_t *x, Double_t *b)                      const;
31   virtual void GetTPCInt(const Float_t *xyz, Float_t *b)              const;
32   virtual void GetTPCIntCyl(const Float_t *rphiz, Float_t *b)         const;
33   //
34   AliMagFCheb* GetMeasuredMap()                                 const {return fMeasuredMap;}
35   void SetMeasuredMap(AliMagFCheb* parm)                        {if (fMeasuredMap) delete fMeasuredMap; fMeasuredMap = parm;}
36   virtual Float_t SolenoidField()                               const {return -Factor()*fSolenoid;}
37   //
38  protected:
39   AliMagFCheb* fMeasuredMap;     // Measured part of the field map
40   Float_t      fSolenoid;        // Solenoid field setting
41   //   
42   ClassDef(AliMagWrapCheb, 2)    // Class for all Alice MagField wrapper for measured data + Tosca parameterization
43 };
44
45
46 #endif