00001 #include "CSCGeometryBuilderFromDDD.h" 00002 #include "CSCGeometryBuilder.h" 00003 #include "CSCGeometryParsFromDD.h" 00004 00005 #include <CondFormats/GeometryObjects/interface/RecoIdealGeometry.h> 00006 #include <CondFormats/GeometryObjects/interface/CSCRecoDigiParameters.h> 00007 00008 #include <FWCore/Utilities/interface/Exception.h> 00009 00010 00011 CSCGeometryBuilderFromDDD::CSCGeometryBuilderFromDDD() : myName("CSCGeometryBuilderFromDDD"){} 00012 00013 00014 CSCGeometryBuilderFromDDD::~CSCGeometryBuilderFromDDD(){} 00015 00016 00017 void CSCGeometryBuilderFromDDD::build(boost::shared_ptr<CSCGeometry> geom, const DDCompactView* cview, const MuonDDDConstants& muonConstants){ 00018 00019 RecoIdealGeometry rig; 00020 CSCRecoDigiParameters rdp; 00021 00022 // simple class just really a method to get the parameters... but I want this method 00023 // available to classes other than CSCGeometryBuilderFromDDD so... simple class... 00024 CSCGeometryParsFromDD cscp; 00025 if ( ! cscp.build(cview, muonConstants, rig, rdp) ) { 00026 throw cms::Exception("CSCGeometryBuilderFromDDD", "Failed to build the necessary objects from the DDD"); 00027 } 00028 CSCGeometryBuilder realbuilder; 00029 realbuilder.build(geom, rig, rdp); 00030 // return realbuilder.build(rig, rdp); 00031 00032 }