Go to the documentation of this file. 1 #ifndef ALIGNMENT_COMMONALIGNMENT_INTERFACE_ALIGNABLECOMPOSITEBUILDER_H_
2 #define ALIGNMENT_COMMONALIGNMENT_INTERFACE_ALIGNABLECOMPOSITEBUILDER_H_
Allows conversion between type and name, and vice-versa.
align::AlignmentLevels alignmentLevels_
void clearAlignmentLevels()
Resets the alignment-levels.
const AlignableObjectId alignableObjectId_
AlignableIndexer alignableIndexer_
const AlignableObjectId & objectIdProvider() const
Return tracker alignable object ID provider derived from the tracker's geometry.
unsigned int buildLevel(unsigned int parentLevel, AlignableMap &, std::ostringstream &, bool update=false)
Builds the components for a given level in the hierarchy.
unsigned int maxNumComponents(unsigned int startLevel) const
unsigned int buildAll(AlignableMap &, bool update=false)
const TrackerTopology * trackerTopology_
void addAlignmentLevel(std::unique_ptr< AlignmentLevel > level)
AlignableCompositeBuilder(const TrackerTopology *, const TrackerGeometry *, const AlignableIndexer &)
unsigned int getIndexOfStructure(align::ID, unsigned int level) const
std::vector< std::unique_ptr< AlignmentLevel > > AlignmentLevels
virtual ~AlignableCompositeBuilder()=default