CMS 3D CMS Logo

AlignableBeamSpot.h
Go to the documentation of this file.
1 #ifndef Alignment_CommonAlignment_AlignableBeamSpot_h
2 #define Alignment_CommonAlignment_AlignableBeamSpot_h
3 
16 
17 class SurfaceDeformation;
18 
19 class AlignableBeamSpot : public Alignable {
20 public:
22 
24  ~AlignableBeamSpot() override;
25 
29  void addComponent(Alignable* component) override {}
30 
32  const Alignables& components() const override { return emptyComponents_; }
33 
35  void recursiveComponents(Alignables& result) const override {}
36 
38  void move(const GlobalVector& displacement) override;
39 
41  void rotateInGlobalFrame(const RotationType& rotation) override;
42 
44  void setAlignmentPositionError(const AlignmentPositionError& ape, bool propagateDown) override;
45 
48  void addAlignmentPositionError(const AlignmentPositionError& ape, bool propagateDown) override;
49 
53  void addAlignmentPositionErrorFromRotation(const RotationType& rot, bool propagateDown) override;
54 
57  void addAlignmentPositionErrorFromLocalRotation(const RotationType& rotation, bool propagateDown) override;
58 
60  StructureType alignableObjectId() const override { return align::BeamSpot; }
61 
63  void dump() const override;
64 
66  Alignments* alignments() const override;
67 
69  AlignmentErrorsExtended* alignmentErrors() const override;
70 
73 
75  int surfaceDeformationIdPairs(std::vector<std::pair<int, SurfaceDeformation*> >&) const override { return 0; }
76 
78  void setSurfaceDeformation(const SurfaceDeformation*, bool) override;
80  void addSurfaceDeformation(const SurfaceDeformation*, bool) override;
81 
83  void initialize(double x, double y, double z, double dxdz, double dydz);
84 
86  void reset();
87 
90  static const DetId detId() { return DetId((DetId::Tracker << DetId::kDetOffset) + 0x1ffffff); }
91 
92 private:
95 
97 };
98 
99 #endif // ALIGNABLE_BEAMSPOT_H
Vector3DBase
Definition: Vector3DBase.h:8
DDAxes::y
AlignableBeamSpot::reset
void reset()
reset beam spot to the uninitialized state
Definition: AlignableBeamSpot.cc:151
Alignable::Alignables
align::Alignables Alignables
Definition: Alignable.h:34
align::BeamSpot
Definition: StructureType.h:89
Alignable
Definition: Alignable.h:27
DDAxes::x
AlignableBeamSpot::~AlignableBeamSpot
~AlignableBeamSpot() override
Destructor.
Definition: AlignableBeamSpot.cc:27
SurfaceDeformation
Definition: SurfaceDeformation.h:18
AlignableBeamSpot::components
const Alignables & components() const override
Return vector of direct components.
Definition: AlignableBeamSpot.h:32
AlignableBeamSpot::move
void move(const GlobalVector &displacement) override
Move with respect to the global reference frame.
Definition: AlignableBeamSpot.cc:30
AlignableBeamSpot::addComponent
void addComponent(Alignable *component) override
Definition: AlignableBeamSpot.h:29
DetId
Definition: DetId.h:17
AlignableBeamSpot::surfaceDeformationIdPairs
int surfaceDeformationIdPairs(std::vector< std::pair< int, SurfaceDeformation * > > &) const override
Return surface deformations.
Definition: AlignableBeamSpot.h:75
AlignableBeamSpot::addAlignmentPositionError
void addAlignmentPositionError(const AlignmentPositionError &ape, bool propagateDown) override
Definition: AlignableBeamSpot.cc:50
DDAxes::z
BeamSpotPI::dxdz
Definition: BeamSpotPayloadInspectorHelper.h:36
AlignableBeamSpot::setAlignmentPositionError
void setAlignmentPositionError(const AlignmentPositionError &ape, bool propagateDown) override
Set the AlignmentPositionError and, if (propagateDown), to all components.
Definition: AlignableBeamSpot.cc:42
AlignableBeamSpot::addAlignmentPositionErrorFromLocalRotation
void addAlignmentPositionErrorFromLocalRotation(const RotationType &rotation, bool propagateDown) override
Definition: AlignableBeamSpot.cc:65
AlignableBeamSpot::theInitializedFlag
bool theInitializedFlag
Definition: AlignableBeamSpot.h:96
Alignable::displacement
const GlobalVector & displacement() const
Return change of the global position since the creation of the object.
Definition: Alignable.h:141
AlignableBeamSpot::alignmentPositionError
const AlignmentPositionError * alignmentPositionError() const
alignment position error - for checking only, otherwise use alignmentErrors() above!
Definition: AlignableBeamSpot.h:72
AlignableBeamSpot::rotateInGlobalFrame
void rotateInGlobalFrame(const RotationType &rotation) override
Rotation interpreted in global reference frame.
Definition: AlignableBeamSpot.cc:36
align::StructureType
StructureType
Definition: StructureType.h:16
AlignableBeamSpot::alignmentErrors
AlignmentErrorsExtended * alignmentErrors() const override
Return vector of alignment errors.
Definition: AlignableBeamSpot.cc:114
AlignableBeamSpot::alignableObjectId
StructureType alignableObjectId() const override
Return the alignable type identifier.
Definition: AlignableBeamSpot.h:60
AlignableBeamSpot::detId
static const DetId detId()
Definition: AlignableBeamSpot.h:90
Alignable::rotation
const RotationType & rotation() const
Return change of orientation since the creation of the object.
Definition: Alignable.h:144
DetId::Tracker
Definition: DetId.h:25
AlignableBeamSpot
Definition: AlignableBeamSpot.h:19
AlignableBeamSpot::setSurfaceDeformation
void setSurfaceDeformation(const SurfaceDeformation *, bool) override
do no use, for compatibility only
Definition: AlignableBeamSpot.cc:68
AlignableBeamSpot::AlignableBeamSpot
AlignableBeamSpot()
Definition: AlignableBeamSpot.cc:21
BeamSpotPI::dydz
Definition: BeamSpotPayloadInspectorHelper.h:37
Alignable::RotationType
align::RotationType RotationType
Definition: Alignable.h:31
AlignableBeamSpot::dump
void dump() const override
Recursive printout of alignable structure.
Definition: AlignableBeamSpot.cc:80
trackerHitRTTI::vector
Definition: trackerHitRTTI.h:21
AlignmentErrorsExtended
Definition: AlignmentErrorsExtended.h:10
AlignableBeamSpot::addSurfaceDeformation
void addSurfaceDeformation(const SurfaceDeformation *, bool) override
do no use, for compatibility only
Definition: AlignableBeamSpot.cc:74
AlignableBeamSpot::alignments
Alignments * alignments() const override
Return vector of alignment data.
Definition: AlignableBeamSpot.cc:95
DetId::kDetOffset
static const int kDetOffset
Definition: DetId.h:21
makeMuonMisalignmentScenario.rot
rot
Definition: makeMuonMisalignmentScenario.py:322
Alignable.h
AlignableBeamSpot::addAlignmentPositionErrorFromRotation
void addAlignmentPositionErrorFromRotation(const RotationType &rot, bool propagateDown) override
Definition: AlignableBeamSpot.cc:59
AlignableBeamSpot::initialize
void initialize(double x, double y, double z, double dxdz, double dydz)
initialize the alignable with the passed beam spot parameters
Definition: AlignableBeamSpot.cc:129
AlignableBeamSpot::emptyComponents_
static const Alignables emptyComponents_
Definition: AlignableBeamSpot.h:93
mps_fire.result
result
Definition: mps_fire.py:311
AlignableBeamSpot::theAlignmentPositionError
AlignmentPositionError * theAlignmentPositionError
Definition: AlignableBeamSpot.h:94
AlignableBeamSpot::recursiveComponents
void recursiveComponents(Alignables &result) const override
Provide all components, subcomponents etc. (cf. description in base class)
Definition: AlignableBeamSpot.h:35
AlignmentPositionError
Definition: AlignmentPositionError.h:10
Alignments
Definition: Alignments.h:10