#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 * | ellipsoid (const DDSolid &) |
static G4VSolid * | ellipticaltube (const DDSolid &) |
static G4VSolid * | intersection (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 |
Friends | |
class | testPseudoTrap |
class | testTruncTubs |
Definition at line 12 of file DDG4SolidConverter.h.
typedef G4VSolid*(* DDG4SolidConverter::FNPTR)(const DDSolid &) |
Definition at line 17 of file DDG4SolidConverter.h.
DDG4SolidConverter::DDG4SolidConverter | ( | ) |
Definition at line 13 of file DDG4SolidConverter.cc.
References box(), cons(), ddbox, ddcons, ddellipsoid, ddellipticaltube, ddintersection, ddorb, ddparallelepiped, ddpolycone_rrz, ddpolycone_rz, ddpolyhedra_rrz, ddpolyhedra_rz, ddpseudotrap, ddreflected, ddsphere, ddsubtraction, ddtorus, ddtrap, ddtrunctubs, ddtubs, ddunion, ellipsoid(), ellipticaltube(), intersection(), orb(), para(), polycone_rrz(), polycone_rz(), polyhedra_rrz(), polyhedra_rz(), pseudotrap(), reflected(), sphere(), subtraction(), torus(), trap(), trunctubs(), tubs(), and unionsolid().
DDG4SolidConverter::~DDG4SolidConverter | ( | ) |
Definition at line 40 of file DDG4SolidConverter.cc.
|
staticprivate |
Definition at line 65 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), DDBase< N, C >::name(), and alignCSCRings::s.
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 103 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), DDBase< N, C >::name(), and alignCSCRings::s.
Referenced by DDG4SolidConverter().
G4VSolid * DDG4SolidConverter::convert | ( | const DDSolid & | s | ) |
Definition at line 42 of file DDG4SolidConverter.cc.
References Exception, DDSolid::parameters(), query::result, DDSolid::shape(), and DDBase< N, C >::toString().
Referenced by DDG4Builder::convertSolid(), intersection(), reflected(), subtraction(), and unionsolid().
|
staticprivate |
Definition at line 560 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), DDBase< N, C >::name(), alignCSCRings::s, DDEllipsoid::xSemiAxis(), DDEllipsoid::ySemiAxis(), DDEllipsoid::zBottomCut(), DDEllipsoid::zSemiAxis(), and DDEllipsoid::zTopCut().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 549 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), DDBase< N, C >::name(), alignCSCRings::s, DDEllipticalTube::xSemiAxis(), DDEllipticalTube::ySemiAxis(), and DDEllipticalTube::zHeight().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 320 of file DDG4SolidConverter.cc.
References convert(), LogDebug, DDName::name(), DDBase< N, C >::name(), DDRotation::rotation(), DDBooleanSolid::rotation(), alignCSCRings::s, DDBooleanSolid::solidA(), DDBooleanSolid::solidB(), and DDBooleanSolid::translation().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 541 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), DDBase< N, C >::name(), DDOrb::radius(), and alignCSCRings::s.
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 573 of file DDG4SolidConverter.cc.
References DDParallelepiped::alpha(), LogDebug, DDName::name(), DDBase< N, C >::name(), DDParallelepiped::phi(), alignCSCRings::s, DDParallelepiped::theta(), DDParallelepiped::xHalf(), DDParallelepiped::yHalf(), and DDParallelepiped::zHalf().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 147 of file DDG4SolidConverter.cc.
References KineDebug3::count(), i, LogDebug, DDName::name(), DDBase< N, C >::name(), and alignCSCRings::s.
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 117 of file DDG4SolidConverter.cc.
References KineDebug3::count(), i, LogDebug, DDName::name(), DDBase< N, C >::name(), alignCSCRings::r, and alignCSCRings::s.
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 204 of file DDG4SolidConverter.cc.
References KineDebug3::count(), i, LogDebug, DDName::name(), DDBase< N, C >::name(), and alignCSCRings::s.
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 183 of file DDG4SolidConverter.cc.
References KineDebug3::count(), i, LogDebug, DDName::name(), DDBase< N, C >::name(), alignCSCRings::r, and alignCSCRings::s.
Referenced by DDG4SolidConverter().
|
staticprivate |
correct implementation, but fails to visualize due to G4/Iguana limitations
Definition at line 345 of file DDG4SolidConverter.cc.
References funct::abs(), DDPseudoTrap::atMinusZ(), delta, Exception, firstTime, h, DDPseudoTrap::halfZ(), LogDebug, DDName::name(), mergeVDriftHistosByStation::name, DDBase< N, C >::name(), EnergyCorrector::pt, alignCSCRings::r, DDPseudoTrap::radius(), query::result, makeMuonMisalignmentScenario::rot, alignCSCRings::s, mathSSE::sqrt(), x(), DDPseudoTrap::x1(), DDPseudoTrap::x2(), DDPseudoTrap::y1(), and DDPseudoTrap::y2().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 247 of file DDG4SolidConverter.cc.
References convert(), LogDebug, DDName::name(), DDBase< N, C >::name(), alignCSCRings::s, and DDReflectionSolid::unreflected().
Referenced by DDG4SolidConverter().
|
staticprivate |
|
staticprivate |
Definition at line 528 of file DDG4SolidConverter.cc.
References DDSphere::deltaPhi(), DDSphere::deltaTheta(), DDSphere::innerRadius(), LogDebug, DDName::name(), DDBase< N, C >::name(), DDSphere::outerRadius(), alignCSCRings::s, DDSphere::startPhi(), and DDSphere::startTheta().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 292 of file DDG4SolidConverter.cc.
References convert(), LogDebug, DDName::name(), DDBase< N, C >::name(), DDRotation::rotation(), DDBooleanSolid::rotation(), alignCSCRings::s, DDBooleanSolid::solidA(), DDBooleanSolid::solidB(), and DDBooleanSolid::translation().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 230 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), DDBase< N, C >::name(), and alignCSCRings::s.
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 85 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), DDBase< N, C >::name(), and alignCSCRings::s.
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 448 of file DDG4SolidConverter.cc.
References funct::abs(), alpha, funct::cos(), DDTruncTubs::cutAtDelta(), DDTruncTubs::cutAtStart(), DDTruncTubs::cutInside(), SiPixelRawToDigiRegional_cfi::deltaPhi, DDTruncTubs::deltaPhi(), Exception, DDName::fullname(), LogDebug, visualization-live-secondInstance_cfg::m, DDSolidShapesName::name(), DDName::name(), mergeVDriftHistosByStation::name, DDBase< N, C >::name(), dttmaxenums::R, alignCSCRings::r, query::result, DDTruncTubs::rIn(), makeMuonMisalignmentScenario::rot, DDTruncTubs::rOut(), alignCSCRings::s, DDSolid::shape(), funct::sin(), mathSSE::sqrt(), DDTruncTubs::startPhi(), groupFilesInBlocks::tt, and DDTruncTubs::zHalf().
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 73 of file DDG4SolidConverter.cc.
References LogDebug, DDName::name(), DDBase< N, C >::name(), and alignCSCRings::s.
Referenced by DDG4SolidConverter().
|
staticprivate |
Definition at line 263 of file DDG4SolidConverter.cc.
References convert(), 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 48 of file DDG4SolidConverter.h.
|
friend |
Definition at line 47 of file DDG4SolidConverter.h.
|
private |
Definition at line 45 of file DDG4SolidConverter.h.
|
staticprivate |
Definition at line 44 of file DDG4SolidConverter.h.