00001 /*************************************************************************** 00002 DDLShapelessSolid.cc - description 00003 ------------------- 00004 begin : Wed May 15 2002 00005 email : case@ucdhep.ucdavis.edu 00006 ***************************************************************************/ 00007 00008 /*************************************************************************** 00009 * * 00010 * DDDParser sub-component of DDD * 00011 * * 00012 ***************************************************************************/ 00013 00014 00015 00016 // ------------------------------------------------------------------------- 00017 // Includes 00018 // ------------------------------------------------------------------------- 00019 #include "DDLShapelessSolid.h" 00020 #include "DDLElementRegistry.h" 00021 00022 // DDCore dependencies 00023 #include "DetectorDescription/Core/interface/DDName.h" 00024 #include "DetectorDescription/Core/interface/DDSolid.h" 00025 #include "DetectorDescription/Base/interface/DDdebug.h" 00026 00027 //#include <strstream> 00028 #include <string> 00029 00030 // Default constructor 00031 DDLShapelessSolid::DDLShapelessSolid() 00032 { 00033 } 00034 00035 // Default desctructor 00036 DDLShapelessSolid::~DDLShapelessSolid() 00037 { 00038 } 00039 00040 void DDLShapelessSolid::preProcessElement(const std::string& name, const std::string& nmspace) 00041 { 00042 DDLElementRegistry::getElement("rSolid")->clear(); 00043 } 00044 // Upon ending a ShapelessSolid element, call DDCore giving the box name, and dimensions. 00045 void DDLShapelessSolid::processElement (const std::string& type, const std::string& nmspace) 00046 { 00047 DCOUT_V('P', "DDLShapelessSolid::processElement started"); 00048 00049 DDSolid dds = DDSolidFactory::shapeless(getDDName(nmspace)); 00050 00051 DDLSolid::setReference(nmspace); 00052 00053 DCOUT_V('P', "DDLShapelessSolid::processElement completed"); 00054 }