CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_5/src/Geometry/GlobalTrackingGeometryBuilder/plugins/GlobalTrackingGeometryBuilder.cc

Go to the documentation of this file.
00001 
00008 #include <Geometry/GlobalTrackingGeometryBuilder/plugins/GlobalTrackingGeometryBuilder.h>
00009 #include <Geometry/CommonDetUnit/interface/GlobalTrackingGeometry.h>
00010 
00011 #include <Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h>
00012 #include <Geometry/CSCGeometry/interface/CSCGeometry.h>
00013 #include <Geometry/RPCGeometry/interface/RPCGeometry.h>
00014 #include <Geometry/GEMGeometry/interface/GEMGeometry.h>
00015 #include <Geometry/DTGeometry/interface/DTGeometry.h>
00016 
00017 
00018 #include <iostream>
00019 #include <iomanip>
00020 
00021 GlobalTrackingGeometryBuilder::GlobalTrackingGeometryBuilder() : myName("GlobalTrackingGeometryBuilder"){}
00022 
00023 
00024 GlobalTrackingGeometryBuilder::~GlobalTrackingGeometryBuilder(){}
00025 
00026 
00027 GlobalTrackingGeometry* GlobalTrackingGeometryBuilder::build(const TrackerGeometry* tk, 
00028                                                              const DTGeometry* dt, 
00029                                                              const CSCGeometry* csc, 
00030                                                              const RPCGeometry* rpc, 
00031                                                              const GEMGeometry* gem){
00032 
00033     // DO NOT CHANGE THE ORDER OF THE GEOMETRIES !!!!!!!  
00034     
00035     std::vector<const TrackingGeometry*> tkGeometries;
00036     
00037     tkGeometries.push_back(tk);
00038     tkGeometries.push_back(dt);
00039     tkGeometries.push_back(csc);
00040     tkGeometries.push_back(rpc);
00041     tkGeometries.push_back(gem);
00042     
00043     
00044     return new GlobalTrackingGeometry(tkGeometries);
00045 }
00046