File indexing completed on 2024-04-06 12:05:32
0001 #ifndef DETECTOR_DESCRIPTION_PARSER_DD_DIVIDED_TUBS_H
0002 #define DETECTOR_DESCRIPTION_PARSER_DD_DIVIDED_TUBS_H
0003
0004 #include "DDDividedGeometryObject.h"
0005 #include "DetectorDescription/Core/interface/DDTranslation.h"
0006 #include "DetectorDescription/Core/interface/DDDivision.h"
0007
0008 class DDCompactView;
0009 class DDLogicalPart;
0010 class DDRotation;
0011
0012 class DDDividedTubsRho final : public DDDividedGeometryObject {
0013 public:
0014 DDDividedTubsRho(const DDDivision& div, DDCompactView* cpv);
0015
0016 double getMaxParameter() const override;
0017 DDTranslation makeDDTranslation(int copyNo) const override;
0018 DDRotation makeDDRotation(int copyNo) const override;
0019 DDLogicalPart makeDDLogicalPart(int copyNo) const override;
0020 };
0021
0022 class DDDividedTubsPhi final : public DDDividedGeometryObject {
0023 public:
0024 DDDividedTubsPhi(const DDDivision& div, DDCompactView* cpv);
0025
0026 double getMaxParameter() const override;
0027 DDTranslation makeDDTranslation(int copyNo) const override;
0028 DDRotation makeDDRotation(int copyNo) const override;
0029 DDLogicalPart makeDDLogicalPart(int copyNo) const override;
0030 };
0031
0032 class DDDividedTubsZ final : public DDDividedGeometryObject {
0033 public:
0034 DDDividedTubsZ(const DDDivision& div, DDCompactView* cpv);
0035
0036 double getMaxParameter() const override;
0037 DDTranslation makeDDTranslation(int copyNo) const override;
0038 DDRotation makeDDRotation(int copyNo) const override;
0039 DDLogicalPart makeDDLogicalPart(int copyNo) const override;
0040 };
0041
0042 #endif