21 theAlignRecordName(
"TrackerAlignmentRcd" ),
22 theErrorRecordName(
"TrackerAlignmentErrorExtendedRcd" )
56 for ( align::Alignables::const_iterator iter = thePixelEndCapsAlignables.begin();
57 iter != thePixelEndCapsAlignables.end(); ++iter )
61 int id = (*iter)->geomDetId().rawId();
67 align::LocalVector lvector( local_displacements.at(0), local_displacements.at(1), local_displacements.at(2));
71 (*iter)->move( gvector );
74 (*iter)->rotateAroundLocalX( local_rotations.at(0) );
75 (*iter)->rotateAroundLocalY( local_rotations.at(1) );
76 (*iter)->rotateAroundLocalZ( local_rotations.at(2) );
87 for ( align::Alignables::const_iterator iter = theEndCapsAlignables.begin();
88 iter != theEndCapsAlignables.end(); ++iter ){
91 int id = (*iter)->geomDetId().rawId();
97 align::LocalVector lvector( local_displacements.at(0), local_displacements.at(1), local_displacements.at(2));
101 (*iter)->move( gvector );
104 (*iter)->rotateAroundLocalX( local_rotations.at(0) );
105 (*iter)->rotateAroundLocalY( local_rotations.at(1) );
106 (*iter)->rotateAroundLocalZ( local_rotations.at(2) );
117 for ( align::Alignables::const_iterator iter = thePixelHalfBarrelsAlignables.begin();
118 iter != thePixelHalfBarrelsAlignables.end(); ++iter ){
121 int id = (*iter)->geomDetId().rawId();
127 align::LocalVector lvector( local_displacements.at(0), local_displacements.at(1), local_displacements.at(2));
131 (*iter)->move( gvector );
134 (*iter)->rotateAroundLocalX( local_rotations.at(0) );
135 (*iter)->rotateAroundLocalY( local_rotations.at(1) );
136 (*iter)->rotateAroundLocalZ( local_rotations.at(2) );
147 for ( align::Alignables::const_iterator iter = theOuterHalfBarrelsAlignables.begin();
148 iter != theOuterHalfBarrelsAlignables.end(); ++iter ){
151 int id = (*iter)->geomDetId().rawId();
157 align::LocalVector lvector( local_displacements.at(0), local_displacements.at(1), local_displacements.at(2));
161 (*iter)->move( gvector );
164 (*iter)->rotateAroundLocalX( local_rotations.at(0) );
165 (*iter)->rotateAroundLocalY( local_rotations.at(1) );
166 (*iter)->rotateAroundLocalZ( local_rotations.at(2) );
177 for ( align::Alignables::const_iterator iter = theInnerHalfBarrelsAlignables.begin();
178 iter != theInnerHalfBarrelsAlignables.end(); ++iter ){
181 int id = (*iter)->geomDetId().rawId();
187 align::LocalVector lvector( local_displacements.at(0), local_displacements.at(1), local_displacements.at(2));
191 (*iter)->move( gvector );
194 (*iter)->rotateAroundLocalX( local_rotations.at(0) );
195 (*iter)->rotateAroundLocalY( local_rotations.at(1) );
196 (*iter)->rotateAroundLocalZ( local_rotations.at(2) );
207 for ( align::Alignables::const_iterator iter = theTIDsAlignables.begin();
208 iter != theTIDsAlignables.end(); ++iter ){
211 int id = (*iter)->geomDetId().rawId();
217 align::LocalVector lvector( local_displacements.at(0), local_displacements.at(1), local_displacements.at(2));
221 (*iter)->move( gvector );
224 (*iter)->rotateAroundLocalX( local_rotations.at(0) );
225 (*iter)->rotateAroundLocalY( local_rotations.at(1) );
226 (*iter)->rotateAroundLocalZ( local_rotations.at(2) );
238 for ( align::Alignables::const_iterator iter = theTIBTIDAlignables.begin();
239 iter != theTIBTIDAlignables.end(); ++iter )
243 int id = (*iter)->geomDetId().rawId();
249 align::GlobalVector gvector (globalDisplacements.at(0), globalDisplacements.at(1), globalDisplacements.at(2));
250 (*iter)->move( gvector );
255 (*iter)->rotateInGlobalFrame( theResultRotation );
257 (*iter)->rotateInGlobalFrame( backwardRotation );
271 throw cms::Exception(
"NotAvailable") <<
"PoolDBOutputService not available";
Alignables & pixelHalfBarrelGeomDets()
Return pixel barrel GeomDets.
void moveAlignableTIDs(int rawId, const align::Scalars &localDisplacements, const align::Scalars &localRotations)
AlignmentErrorsExtended * alignmentErrors() const
Return alignment errors, sorted by DetId.
void moveAlignablePixelEndCaps(int rawId, const align::Scalars &localDisplacements, const align::Scalars &localRotations)
void moveAlignableInnerHalfBarrels(int rawId, const align::Scalars &localDisplacements, const align::Scalars &localRotations)
void moveAlignablePixelHalfBarrels(int rawId, const align::Scalars &localDisplacements, const align::Scalars &localRotations)
std::string theAlignRecordName
Alignables TIBTIDGeomDets()
Return inner barrel and TID GeomDets together.
Alignables & innerBarrelGeomDets()
Return inner barrel GeomDets.
std::vector< Scalar > Scalars
Alignables & TIDGeomDets()
Return TID GeomDets.
void writeOne(T *payload, Time_t time, const std::string &recordName, bool withlogging=false)
TrackerAlignment(const edm::EventSetup &setup)
void moveAlignableOuterHalfBarrels(int rawId, const align::Scalars &localDisplacements, const align::Scalars &localRotations)
void moveAlignableTIBTIDs(int rawId, const align::Scalars &globalDisplacements, const align::RotationType &backwardRotation, const align::RotationType &forwardRotation, bool toAndFro)
std::string theErrorRecordName
Alignables & endcapGeomDets()
Return endcap GeomDets.
Alignables & pixelEndcapGeomDets()
Return pixel endcap GeomDets.
Alignables & outerBarrelGeomDets()
Return outer barrel GeomDets.
T const * product() const
void moveAlignableEndCaps(int rawId, const align::Scalars &localDisplacements, const align::Scalars &localRotations)
std::vector< Alignable * > Alignables
cond::Time_t currentTime() const
TkRotation transposed() const
AlignableTracker * theAlignableTracker
Alignments * alignments() const
Return alignments, sorted by DetId.
void setup(std::vector< TH2F > &depth, std::string name, std::string units="")