![]() |
DD4hep
1.33.0
Detector Description Toolkit for High Energy Physics
|
Alignment calculator instance to handle alignment dependencies. More...
#include <AlignmentsCalculator.h>
Classes | |
| class | PathOrdering |
| Functor for path ordered maps as they are needed for the calculator. More... | |
| class | Result |
| Object encapsulating the result of a computation call to the alignments calculator. More... | |
| class | Scanner |
| Scanner to find all alignment deltas in the detector hierarchy. More... | |
Public Types | |
| typedef std::map< DetElement, const Delta *, PathOrdering > | OrderedDeltas |
| typedef std::map< Condition::key_type, DetElement > | ExtractContext |
Public Member Functions | |
| AlignmentsCalculator ()=default | |
| Default constructor. More... | |
| AlignmentsCalculator (const AlignmentsCalculator ©)=delete | |
| Copy constructor. More... | |
| AlignmentsCalculator & | operator= (const AlignmentsCalculator &mgr)=delete |
| Assignment operator. More... | |
| Result | compute (const std::map< DetElement, Delta > &deltas, ConditionsMap &alignments) const |
| Compute all alignment conditions of the internal dependency list. More... | |
| Result | compute (const std::map< DetElement, const Delta * > &deltas, ConditionsMap &alignments) const |
| Compute all alignment conditions of the internal dependency list. More... | |
| Result | compute (const OrderedDeltas &deltas, ConditionsMap &alignments) const |
| Optimized call using already properly ordered Deltas. More... | |
| size_t | extract_deltas (cond::ConditionUpdateContext &context, OrderedDeltas &deltas, IOV *effective_iov=0) const |
| Helper: Extract all Delta-conditions from the conditions map. More... | |
| size_t | extract_deltas (DetElement start, cond::ConditionUpdateContext &ctxt, OrderedDeltas &deltas, IOV *effective_iov=0) const |
| Helper: Extract all Delta-conditions from the conditions map starting at a certain sub-tree. More... | |
| size_t | extract_deltas (cond::ConditionUpdateContext &context, ExtractContext &extract_context, OrderedDeltas &deltas, IOV *effective_iov=0) const |
| Helper: Extract all Delta-conditions from the conditions map. More... | |
| size_t | extract_deltas (DetElement start, cond::ConditionUpdateContext &ctxt, ExtractContext &extract_context, OrderedDeltas &deltas, IOV *effective_iov=0) const |
| Helper: Extract all Delta-conditions from the conditions map starting at a certain sub-tree. More... | |
Alignment calculator instance to handle alignment dependencies.
Definition at line 36 of file AlignmentsCalculator.h.
| typedef std::map<Condition::key_type,DetElement> dd4hep::align::AlignmentsCalculator::ExtractContext |
Definition at line 76 of file AlignmentsCalculator.h.
| typedef std::map<DetElement,const Delta*,PathOrdering> dd4hep::align::AlignmentsCalculator::OrderedDeltas |
Definition at line 75 of file AlignmentsCalculator.h.
|
default |
Default constructor.
|
delete |
Copy constructor.
| Result AlignmentsCalculator::compute | ( | const OrderedDeltas & | deltas, |
| ConditionsMap & | alignments | ||
| ) | const |
Optimized call using already properly ordered Deltas.
Definition at line 202 of file AlignmentsCalculator.cpp.
| Result AlignmentsCalculator::compute | ( | const std::map< DetElement, const Delta * > & | deltas, |
| ConditionsMap & | alignments | ||
| ) | const |
Compute all alignment conditions of the internal dependency list.
Definition at line 238 of file AlignmentsCalculator.cpp.
| Result AlignmentsCalculator::compute | ( | const std::map< DetElement, Delta > & | deltas, |
| ConditionsMap & | alignments | ||
| ) | const |
Compute all alignment conditions of the internal dependency list.
Definition at line 218 of file AlignmentsCalculator.cpp.
| size_t AlignmentsCalculator::extract_deltas | ( | cond::ConditionUpdateContext & | context, |
| ExtractContext & | extract_context, | ||
| OrderedDeltas & | deltas, | ||
| IOV * | effective_iov = 0 |
||
| ) | const |
Helper: Extract all Delta-conditions from the conditions map.
If the extraction context is empty, it shall be filled. On every subsequent call the existing context is used and the Delta-conditions are extracted directly using a linear scan of the conditions map. Depending on the size of the conditions map this can lead to significant speed improvements.
Definition at line 258 of file AlignmentsCalculator.cpp.
| size_t AlignmentsCalculator::extract_deltas | ( | cond::ConditionUpdateContext & | context, |
| OrderedDeltas & | deltas, | ||
| IOV * | effective_iov = 0 |
||
| ) | const |
Helper: Extract all Delta-conditions from the conditions map.
Definition at line 309 of file AlignmentsCalculator.cpp.
| size_t AlignmentsCalculator::extract_deltas | ( | DetElement | start, |
| cond::ConditionUpdateContext & | ctxt, | ||
| ExtractContext & | extract_context, | ||
| OrderedDeltas & | deltas, | ||
| IOV * | effective_iov = 0 |
||
| ) | const |
Helper: Extract all Delta-conditions from the conditions map starting at a certain sub-tree.
Please note: An extract_context is only valid for one sub-tree.
Constructor
Conditions callback for object processing
Definition at line 267 of file AlignmentsCalculator.cpp.
| size_t AlignmentsCalculator::extract_deltas | ( | DetElement | start, |
| cond::ConditionUpdateContext & | ctxt, | ||
| OrderedDeltas & | deltas, | ||
| IOV * | effective_iov = 0 |
||
| ) | const |
Helper: Extract all Delta-conditions from the conditions map starting at a certain sub-tree.
Helper: Extract all Delta-conditions from the conditions map.
Definition at line 318 of file AlignmentsCalculator.cpp.
|
delete |
Assignment operator.
1.8.18