CMS 3D CMS Logo

DDLCone.cc

Go to the documentation of this file.
00001 /***************************************************************************
00002                           DDLCone.cc  -  description
00003                              -------------------
00004     begin                : Mon Oct 29 2001
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 "DDLCone.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 "DetectorDescription/ExprAlgo/interface/ExprEvalSingleton.h"
00028 
00029 //#include <strstream>
00030 #include <string>
00031 
00032 // Default constructor.
00033 DDLCone::DDLCone()
00034 {
00035 }
00036 
00037 // Default destructor
00038 DDLCone::~DDLCone()
00039 {
00040 }
00041 
00042 // Upon encountering the end of the Cone element, call DDCore.
00043 void DDLCone::processElement (const std::string& type, const std::string& nmspace)
00044 {  
00045   DCOUT_V('P', "DDLCone::processElement started");
00046   ExprEvalInterface & ev = ExprEvalSingleton::instance();
00047   DDXMLAttribute atts = getAttributeSet();
00048 
00049   DDSolid ddcone = DDSolidFactory::cons(getDDName(nmspace)
00050                                         , ev.eval(nmspace, atts.find("dz")->second)
00051                                         , ev.eval(nmspace, atts.find("rMin1")->second)
00052                                         , ev.eval(nmspace, atts.find("rMax1")->second)
00053                                         , ev.eval(nmspace, atts.find("rMin2")->second)
00054                                         , ev.eval(nmspace, atts.find("rMax2")->second)
00055                                         , ev.eval(nmspace, atts.find("startPhi")->second)
00056                                         , ev.eval(nmspace, atts.find("deltaPhi")->second));
00057 
00058   DDLSolid::setReference(nmspace);
00059 
00060   DCOUT_V('P', "DDLCone::processElement completed");
00061 
00062 }

Generated on Tue Jun 9 17:32:23 2009 for CMSSW by  doxygen 1.5.4