37 throw std::runtime_error(
"Geometry is not loaded, cannot apply alignment");
39 if (gGeoManager->IsLocked()) {
40 throw std::runtime_error(
"Geometry is locked, cannot apply alignment");
48 ccdbmgr.setTimestamp(timestamp);
52 if (!msk[
id] || (detGeoMask.any() && !detGeoMask[
id])) {
56 auto algV = ccdbmgr.get<std::vector<o2::detectors::AlignParam>>(
path);
72 log += fmt::format(
", empty object for [{}]",
DetID::getNames(skipped));
75 gGeoManager->RefreshPhysicalNodes(
false);
80 return mTimeStamp > 0 ? mTimeStamp : std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::system_clock::now().time_since_epoch()).count();
Definition of the base alignment parameters class.
#define O2ParamImpl(classname)
Definition of the Names Generator class.
Definition of the GeometryManager class.
long getTimeStamp() const
o2::detectors::DetID::mask_t getDetectorsMask() const
void applyAlignment(long timestamp=0, o2::detectors::DetID::mask_t addMask=o2::detectors::DetID::FullMask) const
static std::string getAlignmentPath(DId d)
static bool applyAlignment(const std::vector< o2::detectors::AlignParam > &algPars)
misalign geometry with alignment objects from the array, optionaly check overlaps
static std::string getCCDBServer()
static BasicCCDBManager & instance()
Static class with identifiers, bitmasks and names for ALICE detectors.
static std::string getNames(mask_t mask, char delimiter=',')
static constexpr ID First
static constexpr ID Last
if extra detectors added, update this !!!
static mask_t getMask(const std::string_view detList)
detector masks from any non-alpha-num delimiter-separated list (empty if NONE is supplied)
GLsizei const GLchar *const * path
LOG(info)<< "Compressed in "<< sw.CpuTime()<< " s"