#include <AlignableSiStripDet.h>
Public Member Functions | |
AlignableSiStripDet (const GluedGeomDet *geomDet) | |
Constructor. More... | |
virtual Alignments * | alignments () const |
first consistify with component detunits, then call method from AlignableDet More... | |
virtual | ~AlignableSiStripDet () |
reduntantly make destructor virtual More... | |
Public Member Functions inherited from AlignableDet | |
virtual void | addAlignmentPositionError (const AlignmentPositionError &ape, bool propagateDown) |
virtual void | addAlignmentPositionErrorFromRotation (const RotationType &rot, bool propagateDown) |
AlignableDet (const GeomDet *geomDet, bool addComponents=true) | |
virtual AlignmentErrors * | alignmentErrors () const |
Return vector of alignment errors. More... | |
const AlignmentPositionError * | alignmentPositionError () const |
alignment position error - for checking only, otherwise use alignmentErrors() above! More... | |
virtual void | setAlignmentPositionError (const AlignmentPositionError &ape, bool propagateDown) |
Set the AlignmentPositionError and, if (propagateDown), to all components. More... | |
virtual | ~AlignableDet () |
Destructor. More... | |
Public Member Functions inherited from AlignableComposite | |
virtual void | addAlignmentPositionErrorFromLocalRotation (const RotationType &rotation, bool propagateDown) |
virtual void | addComponent (Alignable *component) |
virtual void | addSurfaceDeformation (const SurfaceDeformation *deformation, bool propagateDown) |
AlignableComposite (align::ID id, StructureType aType, const RotationType &rot=RotationType()) | |
virtual StructureType | alignableObjectId () const |
Return the alignable type identifier. More... | |
virtual Alignables | components () const |
Return vector of direct components. More... | |
virtual void | dump () const |
Recursive printout of alignable structure. More... | |
virtual void | move (const GlobalVector &displacement) |
Move with respect to the global reference frame. More... | |
virtual void | moveComponentLocal (const int i, const LocalVector &localDisplacement) |
Move a single component with respect to the local reference frame. More... | |
virtual void | moveComponentsLocal (const LocalVector &localDisplacement) |
Move with respect to the local reference frame. More... | |
virtual void | recursiveComponents (Alignables &result) const |
Provide all components, subcomponents etc. (cf. description in base class) More... | |
virtual void | rotateInGlobalFrame (const RotationType &rotation) |
Rotation interpreted in global reference frame. More... | |
virtual void | setSurfaceDeformation (const SurfaceDeformation *deformation, bool propagateDown) |
Set the surface deformation parameters - if (!propagateDown) do not affect daughters. More... | |
virtual int | surfaceDeformationIdPairs (std::vector< std::pair< int, SurfaceDeformation * > > &) const |
Return surface deformations. More... | |
virtual | ~AlignableComposite () |
deleting its components 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... | |
const 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 Member Functions | |
void | consistifyAlignments () |
make alignments consistent with daughters More... | |
Private Attributes | |
const Bounds * | theMonoBounds |
StripGeomDetType & | theMonoType |
const Bounds * | theStereoBounds |
StripGeomDetType & | theStereoType |
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 AlignableComposite | |
AlignableComposite (const GeomDet *geomDet) | |
Constructor from GeomDet, only for use in AlignableDet. More... | |
void | setSurface (const AlignableSurface &s) |
Protected Member Functions inherited from Alignable | |
void | addDisplacement (const GlobalVector &displacement) |
void | addRotation (const RotationType &rotation) |
Protected Attributes inherited from AlignableComposite | |
StructureType | theStructureType |
Protected Attributes inherited from Alignable | |
Alignables | theDeepComponents |
DetId | theDetId |
GlobalVector | theDisplacement |
align::ID | theId |
RotationType | theRotation |
AlignableSurface | theSurface |
An alignable for GluedDets in Strip tracker, taking care of consistency with AlignableDet components.
First implementation April/May 2008
Definition at line 23 of file AlignableSiStripDet.h.
AlignableSiStripDet::AlignableSiStripDet | ( | const GluedGeomDet * | geomDet | ) |
Constructor.
Definition at line 29 of file AlignableSiStripDet.cc.
References AlignableComposite::components(), edm::hlt::Exception, GeomDet::geographicalId(), GluedGeomDet::monoDet(), and GluedGeomDet::stereoDet().
|
virtual |
reduntantly make destructor virtual
Definition at line 56 of file AlignableSiStripDet.cc.
References theMonoBounds, and theStereoBounds.
|
virtual |
first consistify with component detunits, then call method from AlignableDet
Reimplemented from AlignableDet.
Definition at line 63 of file AlignableSiStripDet.cc.
References AlignableDet::alignments(), and consistifyAlignments().
|
private |
make alignments consistent with daughters
Definition at line 71 of file AlignableSiStripDet.cc.
References Alignable::addDisplacement(), Alignable::addRotation(), BoundPlane::build(), AlignableComposite::components(), BoundingBox::corners(), Alignable::globalPosition(), Alignable::globalRotation(), i, evf::evtn::offset(), L1TEmulatorMonitor_cff::p, GloballyPositioned< T >::position(), MediumProperties::radLen(), GloballyPositioned< T >::rotation(), Alignable::rotation(), theMonoBounds, Alignable::theRotation, theStereoBounds, Alignable::theSurface, PV3DBase< T, PVType, FrameType >::x(), MediumProperties::xi(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by alignments().
|
private |
The following four members are needed to recalculate the surface in consistifyAlignments, to get rid of a GluedDet* which is disregarded since it could become an invalid pointer in the next event (theoretically...). But this solution is not better, the references for the types would become invalid together with the GeomDets they are taken from. StripGeomDetType has neither clone() and nor a decent copy constructor, so I cannot go the the same way as for the bounds. Sigh!
Definition at line 45 of file AlignableSiStripDet.h.
Referenced by consistifyAlignments(), and ~AlignableSiStripDet().
|
private |
Definition at line 47 of file AlignableSiStripDet.h.
|
private |
Definition at line 46 of file AlignableSiStripDet.h.
Referenced by consistifyAlignments(), and ~AlignableSiStripDet().
|
private |
Definition at line 48 of file AlignableSiStripDet.h.