Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:05:33

0001 #ifndef DDL_PolyGenerator_H
0002 #define DDL_PolyGenerator_H
0003 
0004 #include <string>
0005 
0006 #include "DDLSolid.h"
0007 
0008 class DDCompactView;
0009 class DDLElementRegistry;
0010 
0011 /// DDLPolyGenerator processes DDL XML Polycone and DDL XML Polyhedra elements.
0012 /** @class DDLPolyGenerator
0013  * @author Michael Case
0014  *
0015  *  DDLPolyGenerator.h  -  description
0016  *  -------------------
0017  *  begin: Mon Aug 5 2002
0018  *  email: case@ucdhep.ucdavis.edu
0019  *
0020  *  The PolyGenerator element uses RZPoint elements.  The DDLRZPoint
0021  *  can return the r and z std::vectors with the points needed to form the
0022  *  polycone.  The RZPoint "accumulator" is also used by the Polyhedra
0023  *  and Polycone elements, and could be used anywhere a pair of std::vectors
0024  *  of r and z values are needed.
0025  *
0026  */
0027 
0028 class DDLPolyGenerator final : public DDLSolid {
0029 public:
0030   DDLPolyGenerator(DDLElementRegistry* myreg);
0031 
0032   void processElement(const std::string& name, const std::string& nmspace, DDCompactView& cpv) override;
0033   void preProcessElement(const std::string& name, const std::string& nmspace, DDCompactView& cpv) override;
0034 };
0035 
0036 #endif