26 for (
int i=1;
i!=7;
i++) {
30 for (
int j=off;
j!=
end; ++
j) {
42 bool upgradeGeometry =
false;
46 if( pSet.
exists(
"trackerGeometryConstants" ))
49 upgradeGeometry = tkGeomConsts.
getParameter<
bool>(
"upgradeGeometry" );
50 BIG_PIX_PER_ROC_X = tkGeomConsts.
getParameter<
int>(
"BIG_PIX_PER_ROC_X" );
51 BIG_PIX_PER_ROC_Y = tkGeomConsts.
getParameter<
int>(
"BIG_PIX_PER_ROC_Y" );
58 std::vector<const GeometricDet*>
comp;
66 LogDebug(
"SubDetectorGeometricDetType") <<
"GeometriDet enumerator values of the subdetectors";
67 for(
unsigned int i=0;
i<subdetgd.size();++
i) {
68 assert(subdetgd[
i]->geographicalId().subdetId()>0 && subdetgd[
i]->geographicalId().subdetId()<7);
69 gdsubdetmap[subdetgd[
i]->geographicalId().subdetId()-1]= subdetgd[
i]->type();
70 LogTrace(
"SubDetectorGeometricDetType") <<
"subdet " <<
i
71 <<
" type " << subdetgd[
i]->type()
72 <<
" detid " << subdetgd[
i]->geographicalId()
73 <<
" subdetid " << subdetgd[
i]->geographicalId().subdetId();
76 std::vector<const GeometricDet*> dets[6];
77 std::vector<const GeometricDet*> & pixB = dets[0]; pixB.reserve(comp.size());
78 std::vector<const GeometricDet*> & pixF = dets[1]; pixF.reserve(comp.size());
79 std::vector<const GeometricDet*> & tib = dets[2]; tib.reserve(comp.size());
80 std::vector<const GeometricDet*> & tid = dets[3]; tid.reserve(comp.size());
81 std::vector<const GeometricDet*> & tob = dets[4]; tob.reserve(comp.size());
82 std::vector<const GeometricDet*> & tec = dets[5]; tec.reserve(comp.size());
84 for(u_int32_t
i = 0;
i<comp.size();
i++)
85 dets[comp[
i]->geographicalID().subdetId()-1].push_back(comp[
i]);
91 for(
unsigned int i=0;i<6;++
i) {
129 for(
unsigned int i=0;i<6;++
i) {
136 for(
unsigned int i=0;i<6;++
i) {
138 if(dets[i].
size()!=0)
throw cms::Exception(
"NotEmptyUnknownSubDet") <<
"Subdetector " << i+1 <<
" is unknown but it is not empty: " << dets[
i].size();
144 verifyDUinTG(*tracker);
152 bool upgradeGeometry,
156 LogDebug(
"BuildingGeomDetUnits") <<
" Pixel type. Size of vector: " << gdv.size()
157 <<
" GeomDetType subdetector: " << det
159 <<
" big pix per ROC x: " << BIG_PIX_PER_ROC_X <<
" y: " << BIG_PIX_PER_ROC_Y
160 <<
" is upgrade: " << upgradeGeometry;
164 for(u_int32_t
i=0;
i<gdv.size();
i++){
166 std::string const & detName = gdv[
i]->name().fullname();
168 std::unique_ptr<const Bounds> bounds(gdv[
i]->bounds());
173 gdv[
i]->pixROCRows(),
174 gdv[
i]->pixROCCols(),
177 gdv[
i]->pixROCx(), gdv[
i]->pixROCy());
197 LogDebug(
"BuildingGeomDetUnits") <<
" Strip type. Size of vector: " << gdv.size()
198 <<
" GeomDetType subdetector: " << det
204 for(u_int32_t
i=0;
i<gdv.size();
i++){
206 std::string const & detName = gdv[
i]->name().fullname();
208 std::unique_ptr<const Bounds> bounds(gdv[
i]->bounds());
211 gdv[
i]->siliconAPVNum(),
234 auto const & gdu= tracker->
detUnits();
237 for(u_int32_t
i=0;
i<gdu.size();
i++){
243 for(u_int32_t
jj=0;
jj<gduId.size();
jj++){
251 throw cms::Exception(
"Configuration") <<
"No partner detector found \n"
252 <<
"There is a problem on Tracker geometry configuration\n";
255 std::vector<const GeomDetUnit *> glued(2);
T getParameter(std::string const &) const
void addDet(GeomDet const *p)
StripTopology * build(const Bounds *, double, std::string)
void setEndsetDU(SubDetector sid)
PixelTopology * build(const Bounds *bounds, bool upgradeGeometry, int ROWS_PER_ROC, int COLS_PER_ROC, int BIG_PIX_PER_ROC_X, int BIG_PIX_PER_ROC_Y, int ROCS_X, int ROCS_Y)
TrackerGeometry * build(const GeometricDet *gd, const edm::ParameterSet &pSet)
void buildGeomDet(TrackerGeometry *)
static const int BIG_PIX_PER_ROC_Y
bool exists(std::string const ¶meterName) const
checks if a parameter exists
void buildPixel(std::vector< const GeometricDet * > const &, TrackerGeometry *, GeomDetType::SubDetector det, bool upgradeGeometry, int BIG_PIX_PER_ROC_X, int BIG_PIX_PER_ROC_Y)
unsigned int partnerDetId() const
ResultType plane(const std::vector< const GeomDetUnit * > &dets) const
ConstGeometricDetContainer & components()
virtual const DetUnitContainer & detUnits() const
Returm a vector of all GeomDetUnit.
void addDetUnit(GeomDetUnit const *p)
static const int BIG_PIX_PER_ROC_X
unsigned int endsetDU(SubDetector sid) const
unsigned int glued() const
glued
void setOffsetDU(SubDetector sid)
std::map< std::string, const StripGeomDetType * > theStripDetTypeMap
void buildSilicon(std::vector< const GeometricDet * > const &, TrackerGeometry *, GeomDetType::SubDetector det, const std::string &part)
PlaneBuilderFromGeometricDet::ResultType buildPlaneWithMaterial(const GeometricDet *gd, double scaleFactor=1.) const
void addType(GeomDetType const *p)
unsigned int offsetDU(SubDetector sid) const
ResultType plane(const GeometricDet *gd) const
std::map< std::string, const PixelGeomDetType * > thePixelDetTypeMap
std::vector< GeometricDet const * > ConstGeometricDetContainer
unsigned int stereo() const
stereo
SubDetector subDetGeom[18]
void addDetUnitId(DetId p)
ConstGeometricDetContainer deepComponents() const
virtual const DetIdContainer & detUnitIds() const
Returm a vector of all GeomDetUnit DetIds.
tuple size
Write out results.