PandaRoot
PndMultiField.h
Go to the documentation of this file.
1 // -------------------------------------------------------------------------
2 // ----- PndMultiField header file -----
3 // ----- Created 29/01/07 by M. Al/Turany -----
4 // -------------------------------------------------------------------------
13 #ifndef PNDMULTIMAP_H
14 #define PNDMULTIMAP_H 1
15 
16 #include "FairField.h"
17 #include "TObjArray.h"
18 #include <map>
19 
20 class PndMultiFieldPar;
21 class PndMultiField : public FairField {
22 
23  public:
25  PndMultiField();
26 
27  PndMultiField(TString Map, Double_t BeamMom = -1.);
28 
31 
33  virtual ~PndMultiField();
34 
36  void Init();
37 
40  void AddField(FairField *field);
41 
42  TObjArray *GetFieldList() { return fMaps; }
43 
44  void FillParContainer();
46  virtual void Print();
48 
49  Double_t GetBz(Double_t x, Double_t y, Double_t z);
50 
55  void GetFieldValue(const Double_t point[3], Double_t *bField);
56 
57  private:
58  PndMultiField(const PndMultiField &field);
59  PndMultiField &operator=(const PndMultiField &) { return *this; };
60 
61  protected:
62  TObjArray *fMaps;
63  Int_t fNoOfMaps;
64  std::vector<std::pair<std::pair<double, double>, FairField *>> fFieldMaps;
65  Double_t fBeamMom;
66 };
67 
68 #endif
TObjArray * fMaps
Definition: PndMultiField.h:59
Double_t fBeamMom
Definition: PndMultiField.h:65
void GetFieldValue(const Double_t point[3], Double_t *bField)
virtual ~PndMultiField()
TObjArray * GetFieldList()
Definition: PndMultiField.h:42
virtual void Print()
ClassDef(PndMultiField, 2) Double_t GetBz(Double_t x
void FillParContainer()
void AddField(FairField *field)
Double_t Double_t z
Definition: PndMultiField.h:49
std::vector< std::pair< std::pair< double, double >, FairField * > > fFieldMaps
Definition: PndMultiField.h:64