Skip to content

Pass std::any to dd4hep condition storage, to allow better type checking on LHCb side

Instead of passing the actual type to dd4hep when creating derived conditions, use std::any instead to provide better type safety checks than dd4hep itself can provide, on the LHCb side, when reading the conditions back. Implementation mirrors that used elsewhere in the Functional framework, where it is used to store arbitrary data in the TES.

Currently draft, as I have not finished all checks, but it works with at least the RICH tests in LHCb and Rec. However its still possible there are some corner cases I have not yet covered, in the other sub-systems.

Created to try and perhaps provide better diagnostic information for issues such as Rec#345 (closed)

FYI @sponce @bcouturi

Edited by Christopher Rob Jones

Merge request reports