16#ifndef ALICEO2_DATA_GRPMAGFIELDOBJECT_H_
17#define ALICEO2_DATA_GRPMAGFIELDOBJECT_H_
39 static float v = checkL3Override();
40 return v == NOOVERRIDEVAL ? mL3Current :
v;
45 static float v = checkDipoleOverride();
46 return v == NOOVERRIDEVAL ? mDipoleCurrent :
v;
61 o2::units::Current_t mL3Current = 0.f;
62 o2::units::Current_t mDipoleCurrent = 0.f;
63 bool mUniformField =
false;
64 int8_t mNominalL3Field = 0;
65 bool mNominalL3FieldValid =
false;
67 static constexpr float NOOVERRIDEVAL = 1e99;
68 static float checkL3Override();
69 static float checkDipoleOverride();
78 if (mNominalL3FieldValid ==
false) {
79 mNominalL3Field = std::lround(5.f *
getL3Current() / 30000.f);
80 mNominalL3FieldValid =
true;
82 return mNominalL3Field;
Header to collect definitions for different units.
int8_t getNominalL3Field()
o2::units::Current_t getDipoleCurrent() const
bool getFieldUniformity() const
o2::units::Current_t getL3Current() const
getters/setters for magnets currents
static GRPMagField * loadFrom(const std::string &grpMagFieldFileName="")
void setDipoleCurrent(o2::units::Current_t v)
void print() const
print itself
void setL3Current(o2::units::Current_t v)
void setFieldUniformity(bool v)
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...