1 #ifndef Alignment_CommonAlignment_AlignableComposite_H
2 #define Alignment_CommonAlignment_AlignableComposite_H
89 void dump()
const override;
void addAlignmentPositionError(const AlignmentPositionError &ape, bool propagateDown) override
void addAlignmentPositionErrorFromRotation(const RotationType &rotation, bool propagateDown) override
void setSurfaceDeformation(const SurfaceDeformation *deformation, bool propagateDown) override
Set the surface deformation parameters - if (!propagateDown) do not affect daughters.
void rotateInGlobalFrame(const RotationType &rotation) override
Rotation interpreted in global reference frame.
StructureType alignableObjectId() const override
Return the alignable type identifier.
AlignableComposite()
default constructor hidden
const GlobalVector & displacement() const
Return change of the global position since the creation of the object.
int surfaceDeformationIdPairs(std::vector< std::pair< int, SurfaceDeformation * > > &) const override
Return surface deformations.
const Alignables & components() const override
Return vector of direct components.
void move(const GlobalVector &displacement) override
Move with respect to the global reference frame.
void addAlignmentPositionErrorFromLocalRotation(const RotationType &rotation, bool propagateDown) override
void recursiveComponents(Alignables &result) const override
Provide all components, subcomponents etc. (cf. description in base class)
void setAlignmentPositionError(const AlignmentPositionError &ape, bool propagateDown) override
AlignmentErrorsExtended * alignmentErrors() const override
Return vector of alignment errors.
virtual void moveComponentsLocal(const LocalVector &localDisplacement)
Move with respect to the local reference frame.
const RotationType & rotation() const
Return change of orientation since the creation of the object.
StructureType theStructureType
void setSurface(const AlignableSurface &s)
Alignments * alignments() const override
Return alignment data.
virtual void moveComponentLocal(const int i, const LocalVector &localDisplacement)
Move a single component with respect to the local reference frame.
void dump() const override
Recursive printout of alignable structure.
void addSurfaceDeformation(const SurfaceDeformation *deformation, bool propagateDown) override
align::RotationType RotationType
~AlignableComposite() override
deleting its components
void update(align::ID, StructureType aType, const RotationType &rot=RotationType())
align::Alignables Alignables
void addComponent(Alignable *component) final
AlignableSurface theSurface
align::StructureType StructureType