New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement ROOT persistency mechanism for the conditions #210

merged 4 commits into from Jul 21, 2017


None yet
1 participant

MarkusFrankATcernch commented Jul 21, 2017


Implement ROOT persistency mechanism for the conditions

Conditions pools can now be made persistent provided all the dictionaries for the payload objects are provided. A new class ConditionsRootPersistency allows to save and re-load conditions pools to/from a ROOT file. Such pools can either be:

  • Simple ConditionsPool objects
  • The entire IOV indexed pool set (class ConditionsIOVPool) or
  • A the pool used by a ConditionsSlice (class UserPool).
  • A std::vector which belong all to the same IOV

In any case the restoration of the saved conditions is performed through the ConditionsManager interface in order to ensure proper management of the added condition objects.

Some example plugin tasks were added in examples/Conditions:

  • DD4hep_ConditionExample_save to save conditions to a ROOT file.
  • DD4hep_ConditionExample_load to restore conditions from file.

Others to come.

Split of dictionary files

The ROOT dictionary creation in DDCore was getting increasingly large. Now the ROOT dictionaries are created in several files, what firstly allows them to be produced in parallel and secondly eases the compilation due to smaller generated file sizes.


@MarkusFrankATcernch MarkusFrankATcernch merged commit 9a1f058 into AIDASoft:master Jul 21, 2017

1 check passed

continuous-integration/travis-ci/pr The Travis CI build passed

@petricm petricm referenced this pull request Aug 14, 2017


Enhance ROOT persistency #217

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment