CMS 3D CMS Logo

Public Member Functions | Private Member Functions

DDPolycone Class Reference

#include <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 (void) const
std::vector< double > rMaxVec (void) const
std::vector< double > rMinVec (void) const
std::vector< double > rVec (void) const
double startPhi (void) const
std::vector< double > zVec (void) const

Private Member Functions

 DDPolycone (void)

Detailed Description

Definition at line 221 of file DDSolid.h.


Constructor & Destructor Documentation

DDPolycone::DDPolycone ( const DDSolid s)

Definition at line 361 of file DDSolid.cc.

References ddpolycone_rrz, ddpolycone_rz, DDName::name(), DDBase< N, C >::name(), DDName::ns(), and DDSolid::shape().

  : DDPolySolid(s)
{
  if (s.shape() != ddpolycone_rz && s.shape() != ddpolycone_rrz) {
    std::string ex  = "Solid [" + s.name().ns() + ":" + s.name().name() + "] is not a DDPolycone.\n";
    ex = ex + "Use a different solid interface!";
    throw DDException(ex);
  }
}
DDPolycone::DDPolycone ( void  ) [private]

Member Function Documentation

double DDPolycone::deltaPhi ( void  ) const
std::vector< double > DDPolycone::rMaxVec ( void  ) const
std::vector< double > DDPolycone::rMinVec ( void  ) const
std::vector< double > DDPolycone::rVec ( void  ) const

Definition at line 375 of file DDSolid.cc.

References ddpolycone_rz, DDPolySolid::getVec(), and DDSolid::shape().

Referenced by DDCoreToDDXMLOutput::solid().

                                         {
  std::vector<double> tvec;
  if (shape() == ddpolycone_rz)
    tvec = getVec(1, 2, 2);
  return tvec; 
}
double DDPolycone::startPhi ( void  ) const

Definition at line 371 of file DDSolid.cc.

References DDBase< DDName, DDI::Solid * >::rep().

Referenced by SolidsForOnline::beginRun(), and DDCoreToDDXMLOutput::solid().

{ return rep().parameters()[0]; }
std::vector< double > DDPolycone::zVec ( void  ) const