#include <DetectorDescription/Core/interface/DDSolid.h>
Public Member Functions | |
DDPolycone (const DDSolid &s) | |
double | deltaPhi () const |
std::vector< double > | rMaxVec () const |
std::vector< double > | rMinVec () const |
std::vector< double > | rVec () const |
double | startPhi () const |
std::vector< double > | zVec () const |
Private Member Functions | |
DDPolycone () |
Definition at line 244 of file DDSolid.h.
DDPolycone::DDPolycone | ( | const DDSolid & | s | ) |
Definition at line 341 of file DDSolid.cc.
References ddpolycone_rrz, ddpolycone_rz, DDName::name(), DDBase< N, C >::name(), DDName::ns(), and DDSolid::shape().
00342 : DDPolySolid(s) 00343 { 00344 if (s.shape() != ddpolycone_rz && s.shape() != ddpolycone_rrz) { 00345 std::string ex = "Solid [" + s.name().ns() + ":" + s.name().name() + "] is not a DDPolycone.\n"; 00346 ex = ex + "Use a different solid interface!"; 00347 throw DDException(ex); 00348 } 00349 }
DDPolycone::DDPolycone | ( | ) | [private] |
double DDPolycone::deltaPhi | ( | ) | const |
Definition at line 353 of file DDSolid.cc.
References DDBase< DDName, DDI::Solid * >::rep().
Referenced by SolidsForOnline::beginJob(), DDDividedPolyconePhi::DDDividedPolyconePhi(), and DDDividedPolyconePhi::getMaxParameter().
00353 { return rep().parameters()[1]; }
std::vector< double > DDPolycone::rMaxVec | ( | ) | const |
Definition at line 376 of file DDSolid.cc.
References ddpolycone_rrz, DDPolySolid::getVec(), and DDSolid::shape().
Referenced by DDDividedPolyconeRho::DDDividedPolyconeRho(), DDDividedPolyconeZ::DDDividedPolyconeZ(), and DDDividedPolyconeRho::getMaxParameter().
00376 { 00377 std::vector<double> tvec; 00378 if (shape() == ddpolycone_rrz) 00379 tvec = getVec(2, 2, 3); 00380 return tvec; 00381 }
std::vector< double > DDPolycone::rMinVec | ( | ) | const |
Definition at line 369 of file DDSolid.cc.
References ddpolycone_rrz, DDPolySolid::getVec(), and DDSolid::shape().
Referenced by DDDividedPolyconeRho::DDDividedPolyconeRho(), DDDividedPolyconeZ::DDDividedPolyconeZ(), and DDDividedPolyconeRho::getMaxParameter().
00369 { 00370 std::vector<double> tvec; 00371 if (shape() == ddpolycone_rrz) 00372 tvec = getVec(1, 2, 3); 00373 return tvec; 00374 }
std::vector< double > DDPolycone::rVec | ( | ) | const |
Definition at line 355 of file DDSolid.cc.
References ddpolycone_rz, DDPolySolid::getVec(), and DDSolid::shape().
00355 { 00356 std::vector<double> tvec; 00357 if (shape() == ddpolycone_rz) 00358 tvec = getVec(1, 2, 2); 00359 return tvec; 00360 }
double DDPolycone::startPhi | ( | ) | const |
Definition at line 351 of file DDSolid.cc.
References DDBase< DDName, DDI::Solid * >::rep().
Referenced by SolidsForOnline::beginJob().
00351 { return rep().parameters()[0]; }
std::vector< double > DDPolycone::zVec | ( | ) | const |
Definition at line 362 of file DDSolid.cc.
References ddpolycone_rz, DDPolySolid::getVec(), and DDSolid::shape().
Referenced by DDDividedPolyconeZ::checkParametersValidity(), DDDividedPolyconeZ::DDDividedPolyconeZ(), DDDividedPolyconeZ::getMaxParameter(), and DDDividedPolyconeZ::makeDDTranslation().
00362 { 00363 if (shape() == ddpolycone_rz) 00364 return getVec(0, 2, 2); 00365 else // (shape() == ddpolycone_rrz) 00366 return getVec(0, 2, 3); 00367 }