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