Use mixed ranges for LAr HV Scale Correction
The following classes derive from
LArFlatConditionsAlg<LArHVScaleCorrFlat>out of a blob stored in COOL. Same data used by the DSP online.
LArHVScaleCorrSCsame as above for SuperCells
LArHVScaleCorrCompletesemi-stable correction stored in conditions POOL files. Used in Run 1 and during digitization
LArHVCorrtransient conditions object, produced by the
LArHVCondAlgbase on DCS data + cable-maps.
Only the latter is really a mixed CondCont, it depends on DCS (time-stamped) and cablle-maps that are run-lumi indexed. The semi-stable corrections stored in the database are only run-lumi indexed.
Since the entire inheritance chain has to be mixed conditions container, all these classes become mixed containers. A few more changes are necessary to get this working:
CondCond::insertMixed: If no time-stamp, assume infinite time-IOV instead of reporting an ERROR
IOVSvc::createCondObj: For mixed
ConditionsContainersthe range needs to be outfitted with an artificial time-stamp (assuming infinite time-range). This is necessary for simulation and run-1 reco that reads pool-based LArHVScaleCorrComplete from the database.
Aside: My work on
IOVSvc was somewhat delayed due to confusion btw Gaudi's
EventIDRange and athena's
IOVRange. Can't we get rid of
AthenaKernel/IOVRange.h in favor of
EventIDRange from Gaudi?