]>
Commit | Line | Data |
---|---|---|
84737f5e | 1 | #ifndef ALIMAGFMAPS_H |
2 | #define ALIMAGFMAPS_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 | // Author: Andreas Morsch <andreas.morsch@cern.ch> | |
10 | // | |
11 | ||
12 | #include "AliMagF.h" | |
13 | class AliFieldMap; | |
14 | ||
15 | class AliMagFMaps : public AliMagF | |
16 | { | |
17 | //Alice Magnetic Field with constant mesh | |
18 | ||
19 | public: | |
20 | enum constants {k2kG, k4kG, k5kG}; | |
21 | AliMagFMaps(){fFieldMap[0] = fFieldMap[1] = fFieldMap[2] = 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); | |
24 | AliMagFMaps(const AliMagFMaps &mag); | |
25 | virtual ~AliMagFMaps(); | |
26 | virtual void Field(Float_t *x, Float_t *b); | |
27 | AliFieldMap* FieldMap(Int_t i) {return fFieldMap[i];} | |
28 | virtual Float_t SolenoidField() const; | |
29 | virtual void SetL3ConstField(Int_t flag = 0) {fL3Option = flag;} | |
30 | ||
31 | void Copy(AliMagFMaps &magf) const; | |
32 | virtual AliMagFMaps & operator=(const AliMagFMaps &magf); | |
33 | protected: | |
34 | AliFieldMap* fFieldMap[3]; // Field maps | |
35 | Float_t fSolenoid; // Solenoid field setting | |
36 | Int_t fL3Option; // Option for field inside L3 | |
37 | ClassDef(AliMagFMaps,1) // Class for all Alice MagField using three Maps with Constant Mesh | |
38 | }; | |
39 | ||
40 | #endif |