CMS 3D CMS Logo

DDPolycone Class Reference

#include <DetectorDescription/Core/interface/DDSolid.h>

Inheritance diagram for DDPolycone:

DDPolySolid DDSolid DDBase< DDName, DDI::Solid * >

List of all members.

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 ()


Detailed Description

Definition at line 244 of file DDSolid.h.


Constructor & Destructor Documentation

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]


Member Function Documentation

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 }


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:18:12 2009 for CMSSW by  doxygen 1.5.4