MpdMapPar.h 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. // -------------------------------------------------------------------------
  2. // MpdMapPar header file -----
  3. // Created 23/07/13 by P. Batyuk (MPD) <batyuk@jinr.ru> -----
  4. // from MpdMapPar (PNDROOT) -----
  5. // -------------------------------------------------------------------------
  6. #ifndef MPDMAPPAR_H
  7. #define MPDMAPPAR_H 1
  8. #include "FairField.h"
  9. #include "FairParGenericSet.h"
  10. class FairParamList;
  11. class MpdMapPar : public FairParGenericSet
  12. {
  13. public:
  14. /** Standard constructor **/
  15. MpdMapPar(const char* name, const char* title, const char* context);
  16. /** default constructor **/
  17. MpdMapPar();
  18. /** Destructor **/
  19. ~MpdMapPar();
  20. /** Put parameters **/
  21. virtual void putParams(FairParamList* list);
  22. /** Get parameters **/
  23. virtual Bool_t getParams(FairParamList* list);
  24. /** Set parameters from FairField **/
  25. void SetParameters(FairField* field);
  26. /** Accessors **/
  27. Int_t GetType() const { return fType; }
  28. Double_t GetXmin() const { return fXmin; }
  29. Double_t GetXmax() const { return fXmax; }
  30. Double_t GetYmin() const { return fYmin; }
  31. Double_t GetYmax() const { return fYmax; }
  32. Double_t GetZmin() const { return fZmin; }
  33. Double_t GetZmax() const { return fZmax; }
  34. void MapName(TString& name) { name = fMapName; }
  35. Double_t GetPositionX() const { return fPosX; }
  36. Double_t GetPositionY() const { return fPosY; }
  37. Double_t GetPositionZ() const { return fPosZ; }
  38. Double_t GetScale() const { return fScale; }
  39. protected:
  40. /** Field type
  41. ** 0 = constant field
  42. ** 1 = field map
  43. ** 2 = field map sym2 (symmetries in x and y)
  44. ** 3 = field map sym3 (symmetries in x, y and z)
  45. **/
  46. Int_t fType;
  47. /** Field limits in case of constant field **/
  48. Double_t fXmin, fXmax;
  49. Double_t fYmin, fYmax;
  50. Double_t fZmin, fZmax;
  51. /** Field map name in case of field map **/
  52. TString fMapName;
  53. /** Field centre position for field map **/
  54. Double_t fPosX, fPosY, fPosZ;
  55. /** Scaling factor for field map **/
  56. Double_t fScale;
  57. ClassDef(MpdMapPar,1);
  58. };
  59. #endif