#include <DDG4SolidConverter.h>
Public Types | |
typedef G4VSolid *(* | FNPTR) (const DDSolid &) |
Public Member Functions | |
G4VSolid * | convert (const DDSolid &) |
DDG4SolidConverter () | |
~DDG4SolidConverter () | |
Static Private Member Functions | |
static G4VSolid * | box (const DDSolid &) |
static G4VSolid * | cons (const DDSolid &) |
static G4VSolid * | cuttubs (const DDSolid &) |
static G4VSolid * | ellipsoid (const DDSolid &) |
static G4VSolid * | ellipticaltube (const DDSolid &) |
static G4VSolid * | extrudedpolygon (const DDSolid &) |
static G4VSolid * | intersection (const DDSolid &) |
static G4VSolid * | multiunion (const DDSolid &) |
static G4VSolid * | orb (const DDSolid &) |
static G4VSolid * | para (const DDSolid &) |
static G4VSolid * | polycone_rrz (const DDSolid &) |
static G4VSolid * | polycone_rz (const DDSolid &) |
static G4VSolid * | polyhedra_rrz (const DDSolid &) |
static G4VSolid * | polyhedra_rz (const DDSolid &) |
static G4VSolid * | pseudotrap (const DDSolid &s) |
static G4VSolid * | reflected (const DDSolid &) |
static G4VSolid * | shapeless (const DDSolid &) |
static G4VSolid * | sphere (const DDSolid &) |
static G4VSolid * | subtraction (const DDSolid &) |
static G4VSolid * | torus (const DDSolid &) |
static G4VSolid * | trap (const DDSolid &) |
static G4VSolid * | trunctubs (const DDSolid &) |
static G4VSolid * | tubs (const DDSolid &) |
static G4VSolid * | unionsolid (const DDSolid &) |
Private Attributes | |
std::map< DDSolidShape, FNPTR > | convDispatch_ |
Static Private Attributes | |
static const std::vector< double > * | par_ = 0 |
static G4RotationMatrix * | rot = 0 |
Friends | |
class | testPseudoTrap |
class | testTruncTubs |
Definition at line 14 of file DDG4SolidConverter.h.
typedef G4VSolid*(* DDG4SolidConverter::FNPTR) (const DDSolid &) |
Definition at line 19 of file DDG4SolidConverter.h.
DDG4SolidConverter::DDG4SolidConverter | ( | ) |
Definition at line 13 of file DDG4SolidConverter.cc.
References box(), cons(), convDispatch_, cuttubs(), ddbox, ddcons, ddcuttubs, ddellipsoid, ddellipticaltube, ddextrudedpolygon, ddintersection, ddmultiunion, ddorb, ddparallelepiped, ddpolycone_rrz, ddpolycone_rz, ddpolyhedra_rrz, ddpolyhedra_rz, ddpseudotrap, ddreflected, ddsphere, ddsubtraction, ddtorus, ddtrap, ddtrunctubs, ddtubs, ddunion, ellipsoid(), ellipticaltube(), extrudedpolygon(), intersection(), multiunion(), orb(), para(), polycone_rrz(), polycone_rz(), polyhedra_rrz(), polyhedra_rz(), pseudotrap(), reflected(), sphere(), subtraction(), torus(), trap(), trunctubs(), tubs(), and unionsolid().
Referenced by intersection(), reflected(), subtraction(), and unionsolid().
DDG4SolidConverter::~DDG4SolidConverter | ( | ) |
Definition at line 41 of file DDG4SolidConverter.cc.
|
staticprivate |
Definition at line 64 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), and DDBase< N, C >::name().
Referenced by DDG4SolidConverter(), and trunctubs().
|
staticprivate |
Definition at line 111 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), and DDBase< N, C >::name().
Referenced by DDG4SolidConverter().
G4VSolid * DDG4SolidConverter::convert | ( | const DDSolid & | solid | ) |
Definition at line 43 of file DDG4SolidConverter.cc.
References convDispatch_, Exception, par_, DDSolid::parameters(), mps_fire::result, DDSolid::shape(), and DDBase< N, C >::toString().
Referenced by DDG4Builder::convertSolid().
|
staticprivate |
Definition at line 81 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), and DDBase< N, C >::name().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 598 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), DDBase< N, C >::name(), DDEllipsoid::xSemiAxis(), DDEllipsoid::ySemiAxis(), DDEllipsoid::zBottomCut(), DDEllipsoid::zSemiAxis(), and DDEllipsoid::zTopCut().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 588 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), DDBase< N, C >::name(), DDEllipticalTube::xSemiAxis(), DDEllipticalTube::ySemiAxis(), and DDEllipticalTube::zHeight().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 236 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), DDBase< N, C >::name(), x, y, and z.
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 341 of file DDG4SolidConverter.cc.
References DDG4SolidConverter(), mps_fire::i, LogDebug, AnalysisDataFormats_SUSYBSMObjects::ms, multiunion(), DDName::name(), DDBase< N, C >::name(), DDRotation::rotation(), DDBooleanSolid::rotation(), DDBooleanSolid::solidA(), DDBooleanSolid::solidB(), DDMultiUnionSolid::solids(), and DDBooleanSolid::translation().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 384 of file DDG4SolidConverter.cc.
Referenced by DDG4SolidConverter(), and intersection().
|
staticprivate |
Definition at line 581 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), DDBase< N, C >::name(), and DDOrb::radius().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 610 of file DDG4SolidConverter.cc.
References DDParallelepiped::alpha(), LogDebug, DDName::name(), DDBase< N, C >::name(), DDParallelepiped::phi(), DDParallelepiped::theta(), DDParallelepiped::xHalf(), DDParallelepiped::yHalf(), and DDParallelepiped::zHalf().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 154 of file DDG4SolidConverter.cc.
References KineDebug3::count(), mps_fire::i, LogDebug, DDName::name(), DDBase< N, C >::name(), and par_.
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 124 of file DDG4SolidConverter.cc.
References KineDebug3::count(), mps_fire::i, LogDebug, DDName::name(), DDBase< N, C >::name(), alignCSCRings::r, and z.
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 210 of file DDG4SolidConverter.cc.
References KineDebug3::count(), mps_fire::i, createfilelist::int, LogDebug, DDName::name(), DDBase< N, C >::name(), and par_.
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 190 of file DDG4SolidConverter.cc.
References KineDebug3::count(), mps_fire::i, createfilelist::int, LogDebug, DDName::name(), DDBase< N, C >::name(), par_, alignCSCRings::r, and z.
Referenced by DDG4SolidConverter().
|
staticprivate |
correct implementation, but fails to visualize due to G4/Iguana limitations
Definition at line 391 of file DDG4SolidConverter.cc.
References funct::abs(), DDPseudoTrap::atMinusZ(), delta, Exception, h, DDPseudoTrap::halfZ(), LogDebug, DDName::name(), dataset::name, DDBase< N, C >::name(), EnergyCorrector::pt, alignCSCRings::r, DDPseudoTrap::radius(), mps_fire::result, rot, mathSSE::sqrt(), AlCaHLTBitMon_QueryRunRegistry::string, trap(), tubs(), x, DDPseudoTrap::x1(), DDPseudoTrap::x2(), DDPseudoTrap::y1(), and DDPseudoTrap::y2().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 271 of file DDG4SolidConverter.cc.
References DDG4SolidConverter(), LogDebug, DDName::name(), DDBase< N, C >::name(), and DDReflectionSolid::unreflected().
Referenced by DDG4SolidConverter().
|
staticprivate |
|
staticprivate |
Definition at line 569 of file DDG4SolidConverter.cc.
References DDSphere::deltaPhi(), DDSphere::deltaTheta(), DDSphere::innerRadius(), LogDebug, DDName::name(), DDBase< N, C >::name(), DDSphere::outerRadius(), DDSphere::startPhi(), and DDSphere::startTheta().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 314 of file DDG4SolidConverter.cc.
References DDG4SolidConverter(), LogDebug, DDName::name(), DDBase< N, C >::name(), DDRotation::rotation(), DDBooleanSolid::rotation(), DDBooleanSolid::solidA(), DDBooleanSolid::solidB(), and DDBooleanSolid::translation().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 255 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), and DDBase< N, C >::name().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 94 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), and DDBase< N, C >::name().
Referenced by DDG4SolidConverter(), and pseudotrap().
|
staticprivate |
Definition at line 490 of file DDG4SolidConverter.cc.
References funct::abs(), alpha, box(), funct::cos(), DDTruncTubs::cutAtDelta(), DDTruncTubs::cutAtStart(), DDTruncTubs::cutInside(), hiPixelPairStep_cff::deltaPhi, DDTruncTubs::deltaPhi(), Exception, DDName::fullname(), LogDebug, DDSolidShapesName::name(), DDName::name(), dataset::name, DDBase< N, C >::name(), dttmaxenums::R, alignCSCRings::r, mps_fire::result, DDTruncTubs::rIn(), rot, DDTruncTubs::rOut(), DDSolid::shape(), funct::sin(), mathSSE::sqrt(), DDTruncTubs::startPhi(), AlCaHLTBitMon_QueryRunRegistry::string, groupFilesInBlocks::tt, tubs(), and DDTruncTubs::zHalf().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 71 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), and DDBase< N, C >::name().
Referenced by DDG4SolidConverter(), pseudotrap(), and trunctubs().
|
staticprivate |
Definition at line 286 of file DDG4SolidConverter.cc.
References DDG4SolidConverter(), LogDebug, DDName::name(), DDBase< N, C >::name(), DDRotation::rotation(), DDBooleanSolid::rotation(), DDBooleanSolid::solidA(), DDBooleanSolid::solidB(), and DDBooleanSolid::translation().
Referenced by DDG4SolidConverter().
|
friend |
Definition at line 55 of file DDG4SolidConverter.h.
|
friend |
Definition at line 54 of file DDG4SolidConverter.h.
|
private |
Definition at line 50 of file DDG4SolidConverter.h.
Referenced by convert(), and DDG4SolidConverter().
|
staticprivate |
Definition at line 49 of file DDG4SolidConverter.h.
Referenced by convert(), polycone_rrz(), polyhedra_rrz(), and polyhedra_rz().
|
staticprivate |
Definition at line 52 of file DDG4SolidConverter.h.
Referenced by pseudotrap(), and trunctubs().