DD4hep
1.30.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 conditons 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.