3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
9 // Author: Andreas Morsch <andreas.morsch@cern.ch>
15 class AliMagFMaps : public AliMagF
17 //Alice Magnetic Field with constant mesh
20 enum constants {k2kG, k4kG, k5kG};
21 AliMagFMaps(){fFieldMap[0] = fFieldMap[1] = fFieldMap[2] = 0; fFieldRead = 0;}
22 AliMagFMaps(const char *name, const char *title, const Int_t integ,
23 const Float_t factor, const Float_t fmax, const Int_t map = k2kG,
25 AliMagFMaps(const AliMagFMaps &mag);
26 virtual ~AliMagFMaps();
27 virtual void Field(Float_t *x, Float_t *b);
28 AliFieldMap* FieldMap(Int_t i) {return fFieldMap[i];}
29 virtual void ReadField();
30 virtual Float_t SolenoidField() const;
31 virtual void SetL3ConstField(Int_t flag = 0) {fL3Option = flag;}
33 void Copy(AliMagFMaps &magf) const;
34 virtual AliMagFMaps & operator=(const AliMagFMaps &magf);
36 AliFieldMap* fFieldMap[3]; // Field maps
37 Float_t fSolenoid; // Solenoid field setting
38 Int_t fL3Option; // Option for field inside L3
39 Int_t fFieldRead; // Field has been read in
40 ClassDef(AliMagFMaps,2) // Class for all Alice MagField using three Maps with Constant Mesh