Skip to content

Commit c672f8a

Browse files
authored
Add GRPObject path (for Run 2)
1 parent e0aea08 commit c672f8a

File tree

1 file changed

+21
-10
lines changed

1 file changed

+21
-10
lines changed

Common/Tools/StandardCCDBLoader.h

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -81,25 +81,36 @@ class StandardCCDBLoader
8181
return;
8282
}
8383

84+
grpmag = ccdb->template getForRun<o2::parameters::GRPMagField>(cGroup.grpmagPath.value, currentRunNumber);
85+
if(grpmag){
86+
LOG(info) << "Setting global propagator magnetic field to current " << grpmag->getL3Current() << " A for run " << currentRunNumber << " from its GRPMagField CCDB object";
87+
o2::base::Propagator::initFieldFromGRP(grpmag);
88+
}else{
89+
LOGF(info, "GRPMagField object returned nullptr, will attempt alternate method");
90+
91+
o2::parameters::GRPObject* grpo = 0x0;
92+
grpo = ccdb->template getForRun<o2::parameters::GRPObject>(cGroup.grpPath.value, currentRunNumber);
93+
if (!grpo) {
94+
LOG(fatal) << "Alternate path failed! Got nullptr from CCDB for path " << cGroup.grpPath << " of object GRPObject for run " << currentRunNumber;
95+
}
96+
o2::base::Propagator::initFieldFromGRP(grpo);
97+
}
98+
if (getMeanVertex) {
99+
// only try this if explicitly requested
100+
mMeanVtx = ccdb->template getForRun<o2::dataformats::MeanVertexObject>(cGroup.mVtxPath.value, currentRunNumber);
101+
} else {
102+
mMeanVtx = nullptr;
103+
}
104+
84105
// load matLUT for this timestamp
85106
if (!lut) {
86107
LOG(info) << "Loading material look-up table for timestamp: " << currentRunNumber;
87108
lut = o2::base::MatLayerCylSet::rectifyPtrFromFile(ccdb->template getForRun<o2::base::MatLayerCylSet>(cGroup.lutPath.value, currentRunNumber));
88109
} else {
89110
LOG(info) << "Material look-up table already in place. Not reloading.";
90111
}
91-
92-
grpmag = ccdb->template getForRun<o2::parameters::GRPMagField>(cGroup.grpmagPath.value, currentRunNumber);
93-
LOG(info) << "Setting global propagator magnetic field to current " << grpmag->getL3Current() << " A for run " << currentRunNumber << " from its GRPMagField CCDB object";
94-
o2::base::Propagator::initFieldFromGRP(grpmag);
95112
LOG(info) << "Setting global propagator material propagation LUT";
96113
o2::base::Propagator::Instance()->setMatLUT(lut);
97-
if (getMeanVertex) {
98-
// only try this if explicitly requested
99-
mMeanVtx = ccdb->template getForRun<o2::dataformats::MeanVertexObject>(cGroup.mVtxPath.value, currentRunNumber);
100-
} else {
101-
mMeanVtx = nullptr;
102-
}
103114

104115
runNumber = currentRunNumber;
105116
}

0 commit comments

Comments
 (0)