13 #ifndef DD4HEP_ALIGMENTS_ALIGNMENTS_H
14 #define DD4HEP_ALIGMENTS_ALIGNMENTS_H
27 namespace Conditions {
37 namespace Alignments {
106 #if defined(__APPLE__) || defined(__clang__)
109 template <
typename Q=Interna::AlignmentNamedObject>
Alignment(
const std::string&
name);
169 #if defined(__APPLE__) || defined(__clang__)
233 typedef std::map<key_type, key_value>
Keys;
258 Alignment get(
const std::string& alignment_key,
const UserPool& iov);
size_t numKeys() const
Access the number of conditons keys available for this detector element.
Data & data()
Data accessor for the use of decorators.
The data class behind an alignments container handle.
key_type key() const
Access the hash identifier.
const TGeoHMatrix & detectorTransformation() const
Access the alignment/placement matrix with respect to the world.
Handle class holding a placed volume (also called physical volume)
The data class behind an alignments handle.
const IOVType & iovType() const
Access the IOV type.
const char * name() const
Access the object name (or "" if not supported by the object)
Alignment::iov_type iov_type
Forward definition of the iov type.
IOV iov_type
Forward definition of the iov type.
unsigned int key_type
Forward definition of the key type.
AlignmentData Object
Forward definition of the base data object containing alignment data.
The data class behind a alignments container handle.
Interface for conditions pool optimized to host conditions updates.
Processor()
Default constructor.
Interna::AlignmentContainer Object
Standard object type.
bool is_bound() const
Check if object is already bound....
AlignmentCondition(Conditions::Interna::ConditionObject *p)
Assignment constructor from condition object.
The data class behind a conditions handle.
Container(const Handle< Q > &e)
Constructor to be used when reading the already parsed object.
Main handle class to hold an alignment object.
virtual int operator()(Container container)=0
Container callback for object processing.
std::pair< key_type, std::string > key_value
Forward definition of the mapping type.
virtual ~Processor()=default
Default destructor.
Abstract base for processing callbacks to container objects.
Processor()
Default constructor.
Alignment()=default
Default constructor.
Alignment::key_type key_type
Forward definition of the key type.
DD4hep::Geometry::DetElement DetElement
const Keys & keys() const
Known keys of conditions in this container.
virtual int operator()(Alignment container)=0
Container callback for object processing.
std::vector< PlacedVolume > NodeList
Forward definition of the nodelist leading to the world.
Class describing the interval of validty.
Class describing the interval of validty type.
Alignment(Object *p)
Default constructor.
IOV iov_type
Forward definition of the iov type.
Geometry::PlacedVolume PlacedVolume
Forward definition of the geometry placement.
AlignmentData * access() const
Checked object access. Throws invalid handle runtime exception.
Alignments::Delta Delta
Forward definition of the alignment delta data.
AlignmentCondition(const Handle< Q > &e)
Constructor to be used when reading the already parsed object.
std::map< key_type, key_value > Keys
Definition of the keys.
Class describing an condition to re-adjust an alignment.
static key_type hashCode(const char *value)
Hash code generation from input string.
Data & data()
Data accessor for the use of decorators.
virtual ~Processor()=default
Default destructor.
AlignmentCondition()
Default constructor.
std::vector< PlacedVolume > NodeList
Forward definition of the nodelist leading to the world.
Interna::AlignmentConditionObject Object
Forward definition of the base data object containing alignment data.
Alignment(const Handle< Q > &e)
Constructor to be used when reading the already parsed object.
const iov_type & iov() const
Access the IOV block.
AlignmentData Data
Forward definition of the base data object containing alignment data.
const TGeoHMatrix & detectorTransformation() const
Access the alignment/placement matrix with respect to the world.
AlignmentCondition(Object *p)
Default constructor.
Alignments::Delta Delta
Forward definition of the alignment delta data.
unsigned int hash32(const char *key)
We need it so often: one-at-time 32 bit hash function.
const Data & data() const
Data accessor for the use of decorators.
AlignmentData Data
Forward definition of the base data object containing alignment data.
Handle: a templated class like a shared pointer, which allows specialized access to tgeometry objects...
Container class for alignment handles aggregated by a detector element.
Container(const Container &c)
Constructor to be used when reading the already parsed object.
Main handle class to hold an alignment conditions object.
unsigned int key_type
Forward definition of the key type.
The main interface to the DD4hep detector description package.
Abstract base for processing callbacks to container objects.
Container()
Default constructor.
const TGeoHMatrix & worldTransformation() const
Create cached matrix to transform to world coordinates.
const TGeoHMatrix & worldTransformation() const
Create cached matrix to transform to world coordinates.
Derived condition data-object definition.
Geometry::PlacedVolume PlacedVolume
Forward definition of the geometry placement.