![]() |
![]() |
00001 #include "PixelForwardLayerBuilder.h" 00002 #include "PixelForwardLayerPhase1.h" 00003 #include "PixelBladeBuilder.h" 00004 00005 using namespace edm; 00006 using namespace std; 00007 00008 ForwardDetLayer* PixelForwardLayerBuilder::build(const GeometricDet* aPixelForwardLayer, 00009 const TrackerGeometry* theGeomDetGeometry){ 00010 vector<const GeometricDet*> theGeometricPanels = aPixelForwardLayer->components(); 00011 int panelsSize = theGeometricPanels.size(); 00012 00013 /* 00014 for(vector<const GeometricDet*>::const_iterator it= theGeometricPanels.begin(); 00015 it!=theGeometricPanels.end();it++){ 00016 00017 edm::LogInfo(TkDetLayers) << "panel.phi(): " << (*it)->positionBounds().phi() << " , " 00018 << "panel.z(): " << (*it)->positionBounds().z() << " , " 00019 << "comp.size(): " << (*it)->components().size() ; 00020 } 00021 */ 00022 00023 //edm::LogInfo(TkDetLayers) << "pixelFwdLayer.panels().size(): " << panelsSize ; 00024 00025 vector<const PixelBlade*> theBlades; 00026 PixelBladeBuilder myBladeBuilder; 00027 00028 for(int i=0; i< (panelsSize/2); i++){ 00029 theBlades.push_back( myBladeBuilder.build( theGeometricPanels[i], 00030 theGeometricPanels[i+(panelsSize/2)], 00031 theGeomDetGeometry ) ); 00032 } 00033 00034 if ( aPixelForwardLayer->type()==GeometricDet::PixelEndCapPhase1 ) 00035 return new PixelForwardLayerPhase1(theBlades); 00036 return new PixelForwardLayer(theBlades); 00037 }