Magnetic field map for ALICE for L3+muon spectrometer stored in 3 seperate
[u/mrichter/AliRoot.git] / STEER / AliMagFMaps.h
CommitLineData
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"
13class AliFieldMap;
14
15class AliMagFMaps : public AliMagF
16{
17 //Alice Magnetic Field with constant mesh
18
19public:
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);
33protected:
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