35 edm::LogInfo (
"MuonNavigationPrinter")<<
"MuonNavigationPrinter::MuonNavigationPrinter" ;
36 vector<DetLayer*>::const_iterator iter;
37 edm::LogInfo (
"MuonNavigationPrinter")<<
"================================";
43 edm::LogInfo (
"MuonNavigationPrinter")<<
"There are "<<barrel.size()<<
" Barrel DetLayers";
44 for ( iter = barrel.begin(); iter != barrel.end(); iter++ ) printLayer(*iter);
45 edm::LogInfo (
"MuonNavigationPrinter")<<
"================================";
48 vector<DetLayer*> backward;
52 edm::LogInfo (
"MuonNavigationPrinter")<<
"There are "<<backward.size()<<
" Backward DetLayers";
53 for ( iter = backward.begin(); iter != backward.end(); iter++ ) printLayer(*iter);
54 edm::LogInfo (
"MuonNavigationPrinter") <<
"==============================";
56 vector<DetLayer*> forward;
60 edm::LogInfo (
"MuonNavigationPrinter")<<
"There are "<<forward.size()<<
" Forward DetLayers";
61 for ( iter = forward.begin(); iter != forward.end(); iter++ ) printLayer(*iter);
67 edm::LogInfo (
"MuonNavigationPrinter")<<
"MuonNavigationPrinter::MuonNavigationPrinter" ;
68 vector<DetLayer*>::const_iterator iter;
71 edm::LogInfo (
"MuonNavigationPrinter")<<
"================================";
73 vector<BarrelDetLayer*> tkbarrel = tracker->
barrelLayers();
74 edm::LogInfo (
"MuonNavigationPrinter")<<
"There are "<<tkbarrel.size()<<
" Tk Barrel DetLayers";
77 edm::LogInfo (
"MuonNavigationPrinter")<<
"There are "<<barrel.size()<<
" Mu Barrel DetLayers";
78 for ( iter = barrel.begin(); iter != barrel.end(); iter++ ) printLayer(*iter);
79 edm::LogInfo (
"MuonNavigationPrinter")<<
"================================";
82 edm::LogInfo (
"MuonNavigationPrinter")<<
"There are "<<tkbackward.size()<<
" Tk Backward DetLayers";
85 edm::LogInfo (
"MuonNavigationPrinter")<<
"There are "<<backward.size()<<
" Mu Backward DetLayers";
86 for ( iter = backward.begin(); iter != backward.end(); iter++ ) printLayer(*iter);
87 edm::LogInfo (
"MuonNavigationPrinter") <<
"==============================";
90 edm::LogInfo (
"MuonNavigationPrinter")<<
"There are "<<tkforward.size()<<
" Tk Forward DetLayers";
94 edm::LogInfo (
"MuonNavigationPrinter")<<
"There are "<<forward.size()<<
" Mu Forward DetLayers";
95 for ( iter = forward.begin(); iter != forward.end(); iter++ ) printLayer(*iter);
106 << setiosflags(ios::showpoint | ios::fixed)
107 << setw(8) << setprecision(2)
108 << bdl->specificSurface().radius() <<
" length: "
109 << setw(6) << setprecision(2)
113 else if (
ForwardDetLayer* fdl = dynamic_cast<ForwardDetLayer*>(layer)) {
116 << setiosflags(ios::showpoint | ios::fixed)
117 << setw(8) << setprecision(2)
119 << setw(6) << setprecision(2)
120 << fdl->specificSurface().innerRadius() <<
" outer r: "
121 << setw(6) << setprecision(2)
122 << fdl->specificSurface().outerRadius();
124 edm::LogInfo (
"MuonNavigationPrinter") <<
" has " << nextLayers.size() <<
" next layers in the direction inside-out: ";
125 printLayers(nextLayers);
130 edm::LogInfo (
"MuonNavigationPrinter") <<
" has " << nextLayers.size() <<
" next layers in the direction outside-in: ";
131 printLayers(nextLayers);
133 edm::LogInfo (
"MuonNavigationPrinter") <<
" has " << compatibleLayers.size() <<
" compatible layers in the direction inside-out:: ";
134 printLayers(compatibleLayers);
135 compatibleLayers.clear();
138 edm::LogInfo (
"MuonNavigationPrinter") <<
" has " << compatibleLayers.size() <<
" compatible layers in the direction outside-in: ";
139 printLayers(compatibleLayers);
146 for ( vector<const DetLayer*>::const_iterator inext = nextLayers.begin();
147 inext != nextLayers.end(); inext++ ) {
152 edm::LogInfo (
"MuonNavigationPrinter") << (*inext)->location() <<
" "
153 << (*inext)->subDetector()
155 << setiosflags(ios::showpoint | ios::fixed)
156 << setw(8) << setprecision(2)
161 edm::LogInfo (
"MuonNavigationPrinter") << (*inext)->location() <<
" "
162 << (*inext)->subDetector()
164 << setiosflags(ios::showpoint | ios::fixed)
165 << setw(8) << setprecision(2)
168 edm::LogInfo (
"MuonNavigationPrinter") << setiosflags(ios::showpoint | ios::fixed)
170 << setw(6) << (*inext)->surface().bounds().length() <<
", "
171 << setw(6) << (*inext)->surface().bounds().width() <<
", "
172 << setw(4) <<(*inext)->surface().bounds().thickness() <<
" : "
173 << (*inext)->surface().position();
virtual const BoundSurface & surface() const =0
The surface of the GeometricSearchDet.
virtual float length() const =0
virtual Location location() const =0
Which part of the detector (barrel, endcap)
virtual const BoundSurface & surface() const
The surface of the GeometricSearchDet.
virtual std::vector< const DetLayer * > nextLayers(NavigationDirection direction) const
virtual SubDetector subDetector() const =0
The type of detector (PixelBarrel, PixelEndcap, TIB, TOB, TID, TEC, CSC, DT, RPCBarrel, RPCEndcap)
const std::vector< DetLayer * > & allForwardLayers() const
return all forward (+Z) layers (CSC+RPC), inside-out
const std::vector< DetLayer * > & allDTLayers() const
return the DT DetLayers (barrel), inside-out
void printLayer(DetLayer *) const
print layer
std::vector< BarrelDetLayer * > const & barrelLayers() const
MuonNavigationPrinter(const MuonDetLayerGeometry *, bool enableRPC=true)
Scalar radius() const
Radius of the cylinder.
std::vector< ForwardDetLayer * > const & negForwardLayers() const
const std::vector< DetLayer * > & allBackwardLayers() const
return all backward (-Z) layers (CSC+RPC), inside-out
const Bounds & bounds() const
std::vector< ForwardDetLayer * > const & posForwardLayers() const
const std::vector< DetLayer * > & backwardCSCLayers() const
return the backward (-Z) CSC DetLayers, inside-out
virtual const BoundCylinder & specificSurface() const
Extension of the interface.
const std::vector< DetLayer * > & forwardCSCLayers() const
return the forward (+Z) CSC DetLayers, inside-out
void printLayers(std::vector< const DetLayer * >) const
print next layers
std::vector< const DetLayer * > compatibleLayers(NavigationDirection direction) const
const PositionType & position() const
const std::vector< DetLayer * > & allBarrelLayers() const
return all barrel DetLayers (DT+RPC), inside-out