44 : dtGeometry_(dtGeometry),
45 cscGeometry_(cscGeometry),
46 gemGeometry_(gemGeometry),
48 cscSurvey_(cscSurvey),
49 dtSurveyError_(dtSurveyError),
50 cscSurveyError_(cscSurveyError) {}
78 unsigned int theSurveyIndex = 0;
81 const auto& barrels = output->
DTBarrel();
82 for (
const auto& iter : barrels) {
83 addSurveyInfo_(iter, &theSurveyIndex, theSurveyValues, theSurveyErrors);
90 for (
const auto& iter : endcaps) {
91 addSurveyInfo_(iter, &theSurveyIndex, theSurveyValues, theSurveyErrors);
102 unsigned int* theSurveyIndex,
107 unsigned int nComp =
comp.size();
109 for (
unsigned int i = 0;
i < nComp; ++
i)
115 throw cms::Exception(
"DatabaseError") <<
"Error reading survey info from DB. Mismatched id!";
118 const CLHEP::Hep3Vector& pos = theSurveyValues->
m_align[*theSurveyIndex].translation();
119 const CLHEP::HepRotation&
rot = theSurveyValues->
m_align[*theSurveyIndex].rotation();
123 align::RotationType(rot.xx(), rot.xy(), rot.xz(), rot.yx(), rot.yy(), rot.yz(), rot.zx(), rot.zy(), rot.zz()));
align::Scalar width() const
ErrorMatrix matrix() const
align::Alignables DTBarrel()
constexpr uint32_t rawId() const
get the raw id
void setWidth(align::Scalar width)
uint8_t structureType() const
std::vector< AlignTransform > m_align
void setLength(align::Scalar length)
align::Alignables CSCEndcaps()
virtual StructureType alignableObjectId() const =0
Return the alignable type identifier.
virtual const Alignables & components() const =0
Return vector of all direct components.
const AlignableSurface & surface() const
Return the Surface (global position and orientation) of the object.
align::Scalar length() const
void setSurvey(const SurveyDet *)
Set survey info.
std::vector< SurveyError > m_surveyErrors
Constructor of the full muon geometry.
const DetId & geomDetId() const