00001 #ifndef DD_DividedPolycone_H 00002 #define DD_DividedPolycone_H 00003 // 00004 // ******************************************************************** 00005 // 25.04.04 - M. Case ddd-ize G4ParameterisationPolycone* 00006 //--------------------------------------------------------------------- 00007 00008 #include "DDDividedGeometryObject.h" 00009 #include "DetectorDescription/Base/interface/DDTranslation.h" 00010 00011 class DDLogicalPart; 00012 class DDRotation; 00013 00014 //--------------------------------------------------------------------- 00015 // Class DDDividedPolycone 00016 //--------------------------------------------------------------------- 00017 00018 class DDDividedPolyconeRho : public DDDividedGeometryObject 00019 { 00020 public: // with description 00021 00022 DDDividedPolyconeRho( const DDDivision& div, DDCompactView* cpv ); 00023 00024 virtual ~DDDividedPolyconeRho(); 00025 00026 virtual void checkParametersValidity(); 00027 00028 virtual double getMaxParameter() const; 00029 00030 virtual DDTranslation makeDDTranslation( const int copyNo) const; 00031 00032 virtual DDRotation makeDDRotation(const int copyNo) const; 00033 00034 virtual DDLogicalPart makeDDLogicalPart( const int copyNo) const; 00035 }; 00036 00037 class DDDividedPolyconePhi : public DDDividedGeometryObject 00038 { 00039 public: // with description 00040 00041 DDDividedPolyconePhi( const DDDivision& div, DDCompactView* cpv ); 00042 00043 virtual ~DDDividedPolyconePhi(); 00044 00045 virtual void checkParametersValidity(); 00046 00047 virtual double getMaxParameter() const; 00048 00049 virtual DDTranslation makeDDTranslation( const int copyNo) const; 00050 00051 virtual DDRotation makeDDRotation(const int copyNo) const; 00052 00053 virtual DDLogicalPart makeDDLogicalPart( const int copyNo) const; 00054 }; 00055 00056 class DDDividedPolyconeZ : public DDDividedGeometryObject 00057 { 00058 public: // with description 00059 00060 DDDividedPolyconeZ( const DDDivision& div, DDCompactView* cpv ); 00061 00062 virtual ~DDDividedPolyconeZ(); 00063 00064 virtual void checkParametersValidity(); 00065 00066 virtual double getMaxParameter() const; 00067 00068 virtual DDTranslation makeDDTranslation( const int copyNo) const; 00069 00070 virtual DDRotation makeDDRotation(const int copyNo) const; 00071 00072 virtual DDLogicalPart makeDDLogicalPart( const int copyNo) const; 00073 }; 00074 00075 #endif