#include "Alignment/MuonAlignment/interface/AlignableDTChamber.h"
#include "Alignment/MuonAlignment/interface/AlignableDTSuperLayer.h"
Go to the source code of this file.
Functions | |
std::ostream & | operator<< (std::ostream &os, const AlignableDTChamber &r) |
Printout the DetUnits in the DT chamber. |
std::ostream& operator<< | ( | std::ostream & | os, |
const AlignableDTChamber & | r | ||
) |
Printout the DetUnits in the DT chamber.
Definition at line 30 of file AlignableDTChamber.cc.
References AlignableComposite::components(), Alignable::displacement(), Alignable::globalPosition(), Alignable::globalRotation(), i, Alignable::rotation(), Alignable::surface(), and AlignableSurface::toLocal().
{ std::vector<Alignable*> theDets = r.components(); os << " This DTChamber contains " << theDets.size() << " units" << std::endl ; os << " position = " << r.globalPosition() << std::endl; os << " (phi, r, z)= (" << r.globalPosition().phi() << "," << r.globalPosition().perp() << "," << r.globalPosition().z(); os << "), orientation:" << std::endl<< r.globalRotation() << std::endl; os << " total displacement and rotation: " << r.displacement() << std::endl; os << r.rotation() << std::endl; for (std::vector<Alignable*>::const_iterator idet = theDets.begin(); idet != theDets.end(); ++idet) { const align::Alignables& comp = (*idet)->components(); for (unsigned int i = 0; i < comp.size(); ++i) { os << " Det position, phi, r: " << comp[i]->globalPosition() << " , " << comp[i]->globalPosition().phi() << " , " << comp[i]->globalPosition().perp() << std::endl; os << " local position, phi, r: " << r.surface().toLocal(comp[i]->globalPosition()) << " , " << r.surface().toLocal(comp[i]->globalPosition()).phi() << " , " << r.surface().toLocal(comp[i]->globalPosition()).perp() << std::endl; } } return os; }