47 #include "CLHEP/Matrix/SymMatrix.h"
98 m_tree =
new TTree(m_outputTreename.c_str(),m_outputTreename.c_str());
102 m_treeErrors =
new TTree(
"alignTreeErrors",
"alignTreeErrors");
150 for (std::vector<AlignTransform>::const_iterator
i = theAlignments->
m_align.begin();
i != theAlignments->
m_align.end(); ++
i){
153 CLHEP::Hep3Vector translation =
i->translation();
154 m_x = translation.x();
155 m_y = translation.y();
156 m_z = translation.z();
159 CLHEP::HepRotation rotation =
i->rotation();
161 m_beta = rotation.getTheta();
176 std::vector<AlignTransformError> alignErrors = alignmentErrors->m_alignError;
177 for (std::vector<AlignTransformError>::const_iterator
i = alignErrors.begin();
i != alignErrors.end(); ++
i){
180 CLHEP::HepSymMatrix errMatrix =
i->matrix();
183 m_xx = errMatrix[0][0];
184 m_xy = errMatrix[0][1];
185 m_xz = errMatrix[0][2];
186 m_yy = errMatrix[1][1];
187 m_yz = errMatrix[1][2];
188 m_zz = errMatrix[2][2];
T getUntrackedParameter(std::string const &, T const &) const
Class to update a given geometry with a set of alignments.
#define DEFINE_FWK_MODULE(type)
AlignableTracker * theCurrentTracker
virtual void analyze(const edm::Event &iEvent, const edm::EventSetup &iSetup)
std::string m_outputTreename
std::vector< AlignTransform > m_align
void get(HolderT &iHolder) const
void applyAlignments(C *geometry, const Alignments *alignments, const AlignmentErrors *alignmentErrors, const AlignTransform &globalCoordinates)
int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum) ...
~TrackerGeometryIntoNtuples()
TrackerGeometry * build(const GeometricDet *gd)
Alignments * theAlignments
const AlignTransform & DetectorGlobalPosition(const Alignments &allGlobals, const DetId &id)
TrackerGeometryIntoNtuples(const edm::ParameterSet &)