CMS 3D CMS Logo

DDPosData.h
Go to the documentation of this file.
1 #ifndef DETECTOR_DESCRIPTION_CORE_DD_POS_DATA_H
2 #define DETECTOR_DESCRIPTION_CORE_DD_POS_DATA_H
3 
7 
9 
13 struct DDPosData {
15 
22  DDPosData(const DDTranslation& t, const DDRotation& r, int c, const DDDivision* d = nullptr)
23  : trans_(t), rot_(r), copyno_(c), div_(d) {}
24  DDPosData() = delete;
25  DDPosData& operator=(const DDPosData&) = delete;
26 
27  const DDTranslation& translation() const { return trans_; }
28  const DDTranslation& trans() const { return trans_; }
29 
30  const DDRotationMatrix& rotation() const { return rot_.rotation(); }
31  const DDRotationMatrix& rot() const { return rot_.rotation(); }
32  const DDRotation& ddrot() const { return rot_; }
33  int copyno() const { return copyno_; }
34 
35  const DDDivision& div() const { return *div_; }
36  const DDDivision& division() const { return *div_; }
37 
38 private:
41  int copyno_;
42  const DDDivision* div_;
43 };
44 
45 #endif
DDPosData(const DDTranslation &t, const DDRotation &r, int c, const DDDivision *d=nullptr)
Creates a new relative position.
Definition: DDPosData.h:22
Relative position of a child-volume inside a parent-volume.
Definition: DDPosData.h:13
const DDRotationMatrix & rot() const
Definition: DDPosData.h:31
const DDTranslation & translation() const
Definition: DDPosData.h:27
const DDDivision & div() const
Definition: DDPosData.h:35
const DDDivision * div_
Definition: DDPosData.h:42
Represents a uniquely identifyable rotation matrix.
Definition: DDTransform.h:57
DDPosData & operator=(const DDPosData &)=delete
ROOT::Math::Rotation3D DDRotationMatrix
A DDRotationMatrix is currently implemented with a ROOT Rotation3D.
int copyno_
Definition: DDPosData.h:41
DDTranslation trans_
Definition: DDPosData.h:39
d
Definition: ztail.py:151
const DDTranslation & trans() const
Definition: DDPosData.h:28
const DDDivision & division() const
Definition: DDPosData.h:36
const DDRotationMatrix & rotation() const
Returns the read-only rotation-matrix.
Definition: DDTransform.h:81
DDPosData()=delete
int copyno() const
Definition: DDPosData.h:33
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DDTranslation
Definition: DDTranslation.h:7
const DDRotation & ddrot() const
Definition: DDPosData.h:32
DDRotation rot_
Definition: DDPosData.h:40
const DDRotationMatrix & rotation() const
Definition: DDPosData.h:30