#include <AlignableDetUnit.h>
Public Member Functions | |
virtual void | addAlignmentPositionError (const AlignmentPositionError &ape, bool) |
virtual void | addAlignmentPositionErrorFromLocalRotation (const RotationType &rot, bool) |
virtual void | addAlignmentPositionErrorFromRotation (const RotationType &rot, bool) |
virtual void | addComponent (Alignable *) |
No components here => exception! More... | |
virtual void | addSurfaceDeformation (const SurfaceDeformation *deformation, bool) |
Add surface deformation parameters to the existing ones (2nd argument without effect) More... | |
AlignableDetUnit (const GeomDetUnit *geomDetUnit) | |
Constructor from GeomDetUnit - must not be NULL pointer! More... | |
virtual StructureType | alignableObjectId () const |
Return the alignable type identifier. More... | |
virtual AlignmentErrorsExtended * | alignmentErrors () const |
Return vector of alignment errors. More... | |
const AlignmentPositionError * | alignmentPositionError () const |
alignment position error - for checking only, otherwise use alignmentErrors() above! More... | |
virtual Alignments * | alignments () const |
Return vector of alignment data. More... | |
virtual void | cacheTransformation () |
cache the current position, rotation and other parameters (e.g. surface deformations) More... | |
virtual Alignables | components () const |
Returns a null vector (no components here) More... | |
virtual void | dump () const |
Printout information about GeomDet. More... | |
virtual void | move (const GlobalVector &displacement) |
Move with respect to the global reference frame. More... | |
virtual void | recursiveComponents (Alignables &result) const |
Do nothing (no components here, so no subcomponents either...) More... | |
virtual void | restoreCachedTransformation () |
restore the previously cached transformation More... | |
virtual void | rotateInGlobalFrame (const RotationType &rotation) |
Rotation with respect to the global reference frame. More... | |
virtual void | setAlignmentPositionError (const AlignmentPositionError &ape, bool) |
Set the AlignmentPositionError (no components => second argument ignored) More... | |
virtual void | setSurfaceDeformation (const SurfaceDeformation *deformation, bool) |
Set surface deformation parameters (2nd argument without effect) More... | |
virtual int | surfaceDeformationIdPairs (std::vector< std::pair< int, SurfaceDeformation * > > &) const |
Return surface deformations. More... | |
virtual | ~AlignableDetUnit () |
Destructor. More... | |
Public Member Functions inherited from Alignable | |
Alignable (align::ID, const AlignableSurface &) | |
Alignable (align::ID, const RotationType &) | |
AlignmentParameters * | alignmentParameters () const |
Get the AlignmentParameters. More... | |
const Alignables & | deepComponents () const |
const GlobalVector & | displacement () const |
Return change of the global position since the creation of the object. More... | |
bool | firstCompsWithParams (Alignables ¶mComps) const |
const DetId & | geomDetId () const |
const PositionType & | globalPosition () const |
Return the global position of the object. More... | |
const RotationType & | globalRotation () const |
Return the global orientation of the object. More... | |
align::ID | id () const |
Return the ID of Alignable, i.e. DetId of 'first' component GeomDet(Unit). More... | |
Alignable * | mother () const |
Return pointer to container alignable (if any) More... | |
virtual void | rotateAroundGlobalAxis (const GlobalVector &axis, Scalar radians) |
Rotation around arbitratry global axis. More... | |
virtual void | rotateAroundGlobalX (Scalar radians) |
Rotation around global x-axis. More... | |
virtual void | rotateAroundGlobalY (Scalar radians) |
Rotation around global y-axis. More... | |
virtual void | rotateAroundGlobalZ (Scalar radians) |
Rotation around global z-axis. More... | |
virtual void | rotateAroundLocalAxis (const LocalVector &axis, Scalar radians) |
Rotation around arbitratry local axis. More... | |
virtual void | rotateAroundLocalX (Scalar radians) |
Rotation around local x-axis. More... | |
virtual void | rotateAroundLocalY (Scalar radians) |
Rotation around local y-axis. More... | |
virtual void | rotateAroundLocalZ (Scalar radians) |
Rotation around local z-axis. More... | |
virtual void | rotateInLocalFrame (const RotationType &rotation) |
Rotation intepreted in the local reference frame. More... | |
const RotationType & | rotation () const |
Return change of orientation since the creation of the object. More... | |
void | setAlignmentParameters (AlignmentParameters *dap) |
Set the AlignmentParameters. More... | |
void | setMother (Alignable *mother) |
Assign mother to alignable. More... | |
void | setSurvey (const SurveyDet *) |
Set survey info. More... | |
int | size () const |
Return number of direct components. More... | |
const AlignableSurface & | surface () const |
Return the Surface (global position and orientation) of the object. More... | |
AlignmentSurfaceDeformations * | surfaceDeformations () const |
Return surface deformations, sorted by DetId. More... | |
const SurveyDet * | survey () const |
Return survey info. More... | |
virtual | ~Alignable () |
Destructor. More... | |
Private Attributes | |
AlignmentPositionError * | theAlignmentPositionError |
SurfaceDeformation * | theCachedSurfaceDeformation |
SurfaceDeformation * | theSurfaceDeformation |
Additional Inherited Members | |
Public Types inherited from Alignable | |
typedef align::Alignables | Alignables |
typedef align::GlobalVector | GlobalVector |
typedef align::LocalVector | LocalVector |
typedef align::PositionType | PositionType |
typedef align::RotationType | RotationType |
typedef align::Scalar | Scalar |
typedef align::StructureType | StructureType |
Protected Member Functions inherited from Alignable | |
void | addDisplacement (const GlobalVector &displacement) |
void | addRotation (const RotationType &rotation) |
Protected Attributes inherited from Alignable | |
GlobalVector | theCachedDisplacement |
RotationType | theCachedRotation |
AlignableSurface | theCachedSurface |
Alignables | theDeepComponents |
DetId | theDetId |
GlobalVector | theDisplacement |
align::ID | theId |
RotationType | theRotation |
AlignableSurface | theSurface |
A concrete class that allows to (mis)align a DetUnit.
Typically all AlignableComposites have (directly or indirectly) this one as the ultimate component.
Definition at line 13 of file AlignableDetUnit.h.
AlignableDetUnit::AlignableDetUnit | ( | const GeomDetUnit * | geomDetUnit | ) |
Constructor from GeomDetUnit - must not be NULL pointer!
Definition at line 15 of file AlignableDetUnit.cc.
References GeomDet::alignmentPositionError(), setAlignmentPositionError(), setSurfaceDeformation(), GeomDet::surfaceDeformation(), and Alignable::theDeepComponents.
|
virtual |
Destructor.
Definition at line 36 of file AlignableDetUnit.cc.
References theAlignmentPositionError, theCachedSurfaceDeformation, and theSurfaceDeformation.
|
virtual |
Add (or set if it does not exist yet) the AlignmentPositionError (no components => second argument without effect)
Implements Alignable.
Definition at line 84 of file AlignableDetUnit.cc.
References setAlignmentPositionError(), and theAlignmentPositionError.
Referenced by addAlignmentPositionErrorFromRotation().
|
virtual |
Add (or set if it does not exist yet) the AlignmentPositionError resulting from a rotation in the local reference frame (no components => second argument without effect)
Implements Alignable.
Definition at line 116 of file AlignableDetUnit.cc.
References addAlignmentPositionErrorFromRotation(), Alignable::globalRotation(), and TkRotation< T >::multiplyInverse().
|
virtual |
Add (or set if it does not exist yet) the AlignmentPositionError resulting from a rotation in the global reference frame (no components => second argument without effect)
Implements Alignable.
Definition at line 96 of file AlignableDetUnit.cc.
References addAlignmentPositionError(), PV3DBase< T, PVType, FrameType >::basicVector(), TkRotation< T >::multiplyInverse(), Alignable::surface(), AlignableSurface::toGlobal(), and create_public_lumi_plots::width.
Referenced by addAlignmentPositionErrorFromLocalRotation().
|
virtual |
No components here => exception!
Implements Alignable.
Definition at line 44 of file AlignableDetUnit.cc.
References Exception.
|
virtual |
Add surface deformation parameters to the existing ones (2nd argument without effect)
Implements Alignable.
Definition at line 138 of file AlignableDetUnit.cc.
References SurfaceDeformation::add(), setSurfaceDeformation(), theSurfaceDeformation, and SurfaceDeformation::type().
|
inlinevirtual |
Return the alignable type identifier.
Implements Alignable.
Definition at line 62 of file AlignableDetUnit.h.
References align::AlignableDetUnit.
|
virtual |
Return vector of alignment errors.
Implements Alignable.
Definition at line 192 of file AlignableDetUnit.cc.
References asHepMatrix(), Alignable::geomDetId(), AlignmentPositionError::globalError(), AlignmentErrorsExtended::m_alignError, GlobalErrorBaseExtended< T, ErrorWeightType >::matrix(), DetId::rawId(), and theAlignmentPositionError.
|
inline |
alignment position error - for checking only, otherwise use alignmentErrors() above!
Definition at line 83 of file AlignableDetUnit.h.
References theAlignmentPositionError.
Referenced by AlignableDetOrUnitPtr::alignmentPositionError().
|
virtual |
Return vector of alignment data.
Implements Alignable.
Definition at line 169 of file AlignableDetUnit.cc.
References Alignable::geomDetId(), Alignable::globalPosition(), Alignable::globalRotation(), Alignments::m_align, DetId::rawId(), makeMuonMisalignmentScenario::rot, create_public_lumi_plots::transform, x, TkRotation< T >::xx(), TkRotation< T >::xy(), TkRotation< T >::xz(), y, TkRotation< T >::yx(), TkRotation< T >::yy(), TkRotation< T >::yz(), z, TkRotation< T >::zx(), TkRotation< T >::zy(), and TkRotation< T >::zz().
|
virtual |
cache the current position, rotation and other parameters (e.g. surface deformations)
Reimplemented from Alignable.
Definition at line 224 of file AlignableDetUnit.cc.
References SurfaceDeformation::clone(), Alignable::theCachedDisplacement, Alignable::theCachedRotation, Alignable::theCachedSurface, theCachedSurfaceDeformation, Alignable::theDisplacement, Alignable::theRotation, Alignable::theSurface, and theSurfaceDeformation.
|
inlinevirtual |
Returns a null vector (no components here)
Implements Alignable.
Definition at line 28 of file AlignableDetUnit.h.
|
virtual |
Printout information about GeomDet.
Implements Alignable.
Definition at line 156 of file AlignableDetUnit.cc.
References Alignable::displacement(), Alignable::globalPosition(), Alignable::globalRotation(), and Alignable::rotation().
|
virtual |
Move with respect to the global reference frame.
Implements Alignable.
Definition at line 51 of file AlignableDetUnit.cc.
References Alignable::addDisplacement(), GloballyPositioned< T >::move(), and Alignable::theSurface.
Referenced by Vispa.Gui.WidgetContainer.WidgetContainer::autosize(), Vispa.Gui.VispaWidget.VispaWidget::dragWidget(), Vispa.Gui.VispaWidget.VispaWidget::setZoom(), and Vispa.Gui.PortConnection.PointToPointConnection::updateConnection().
|
inlinevirtual |
Do nothing (no components here, so no subcomponents either...)
Implements Alignable.
Definition at line 31 of file AlignableDetUnit.h.
|
virtual |
restore the previously cached transformation
Reimplemented from Alignable.
Definition at line 240 of file AlignableDetUnit.cc.
References setSurfaceDeformation(), Alignable::theCachedDisplacement, Alignable::theCachedRotation, Alignable::theCachedSurface, theCachedSurfaceDeformation, Alignable::theDisplacement, Alignable::theRotation, Alignable::theSurface, and theSurfaceDeformation.
|
virtual |
Rotation with respect to the global reference frame.
Implements Alignable.
Definition at line 61 of file AlignableDetUnit.cc.
References Alignable::addRotation(), GloballyPositioned< T >::rotate(), and Alignable::theSurface.
|
virtual |
Set the AlignmentPositionError (no components => second argument ignored)
Implements Alignable.
Definition at line 71 of file AlignableDetUnit.cc.
References theAlignmentPositionError.
Referenced by addAlignmentPositionError(), and AlignableDetUnit().
|
virtual |
Set surface deformation parameters (2nd argument without effect)
Implements Alignable.
Definition at line 126 of file AlignableDetUnit.cc.
References SurfaceDeformation::clone(), and theSurfaceDeformation.
Referenced by addSurfaceDeformation(), AlignableDetUnit(), and restoreCachedTransformation().
|
virtual |
Return surface deformations.
Implements Alignable.
Definition at line 213 of file AlignableDetUnit.cc.
References Alignable::geomDetId(), query::result, and theSurfaceDeformation.
|
private |
Definition at line 87 of file AlignableDetUnit.h.
Referenced by addAlignmentPositionError(), alignmentErrors(), alignmentPositionError(), setAlignmentPositionError(), and ~AlignableDetUnit().
|
private |
Definition at line 89 of file AlignableDetUnit.h.
Referenced by cacheTransformation(), restoreCachedTransformation(), and ~AlignableDetUnit().
|
private |
Definition at line 88 of file AlignableDetUnit.h.
Referenced by addSurfaceDeformation(), cacheTransformation(), restoreCachedTransformation(), setSurfaceDeformation(), surfaceDeformationIdPairs(), and ~AlignableDetUnit().