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

Add AlignmentsNominalMap to fake alignment conditions access. #160

merged 4 commits into from Jun 8, 2017


None yet
1 participant

MarkusFrankATcernch commented Jun 8, 2017


  • Add a new class AlignmentsNominalMap, which behaves like a ConditionsMap and handles alignment entries.

  • The AlignmentsNominalMap is not a conditions cache per-se. This implementation behaves like a conditionsmap, but it shall not return real conditions to the user, but rather return the default alignment objects (which at the basis are conditions as well) to the user. These alignments are taken from the DetElement in question Alignment DetElement::nominal().

  • The basic idea is to enable users to write code "as if" there would be conditions present. This is important to ease in the lifetime of the experiment the step from the design phase (where obviously no conditions are taken into account) to a more mature phase, where alignment studies etc. actually are part of the "bread and butter work".

  • Added a corresponding example in examples/AlignDet:

$>   geoPluginRun -volmgr -destroy -plugin DD4hep_AlignmentExample_nominal \
         -input file:${DD4hep_DIR}/examples/AlignDet/compact/Telescope.xml
  • Access the DetElement nominal conditions using the AlignmentNominalMap.
    Any use of DDCond is inhibited.
    1. We use the generic printer, which during the detector element scan accesses the conditions map.
    2. We use a delta scanner to extract the nominal deltas from the DetElement's nominal alignments
    3. We use a ConditionsTreeMap to perform the alignments re-computation.


  • Coming next on this channel: Update the Volume manager to use ConditionsMap objects to resolve position computations.

This comment has been minimized.


MarkusFrankATcernch commented Jun 8, 2017

All tests on gitlab worked fine....

@MarkusFrankATcernch MarkusFrankATcernch merged commit aec43f7 into AIDASoft:master Jun 8, 2017

1 check passed

continuous-integration/travis-ci/pr The Travis CI build passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment