From a3eed7026dfc524dc97883d11ae0fc071ba7a4e0 Mon Sep 17 00:00:00 2001 From: Sergey Linev <S.Linev@gsi.de> Date: Mon, 10 Dec 2018 10:37:33 +0100 Subject: [PATCH] eve7: remove internal CSG methods from header file Only one method and TBaseMesh class are used from outside --- graf3d/eve7/inc/ROOT/REveCsgOps.hxx | 9 +++------ graf3d/eve7/src/REveCsgOps.cxx | 7 +++---- graf3d/eve7/src/REveGeoPolyShape.cxx | 5 ++--- 3 files changed, 8 insertions(+), 13 deletions(-) diff --git a/graf3d/eve7/inc/ROOT/REveCsgOps.hxx b/graf3d/eve7/inc/ROOT/REveCsgOps.hxx index 7d781351e20..0ef47ab2d00 100644 --- a/graf3d/eve7/inc/ROOT/REveCsgOps.hxx +++ b/graf3d/eve7/inc/ROOT/REveCsgOps.hxx @@ -26,12 +26,9 @@ public: virtual Int_t GetVertexIndex(Int_t polyNum, Int_t vertNum) const = 0; }; -TBaseMesh *ConvertToMesh(const TBuffer3D &buff, TGeoMatrix *matr = nullptr); -TBaseMesh *BuildUnion(const TBaseMesh *leftOperand, const TBaseMesh *rightOperand); -TBaseMesh *BuildIntersection(const TBaseMesh *leftOperand, const TBaseMesh *rightOperand); -TBaseMesh *BuildDifference(const TBaseMesh *leftOperand, const TBaseMesh *rightOperand); -TBaseMesh *BuildFromCompositeShape(TGeoCompositeShape *cshape, Int_t n_seg); -TBaseMesh *BuildFromCompositeShapeNew(TGeoCompositeShape *cshape, Int_t n_seg); +// TBaseMesh *BuildFromCompositeShape(TGeoCompositeShape *cshape, Int_t n_seg); + +std::unique_ptr<TBaseMesh> BuildFromCompositeShapeNew(TGeoCompositeShape *cshape, Int_t n_seg); } // namespace EveCsg diff --git a/graf3d/eve7/src/REveCsgOps.cxx b/graf3d/eve7/src/REveCsgOps.cxx index 1f87aaf2cd4..9513f11b282 100644 --- a/graf3d/eve7/src/REveCsgOps.cxx +++ b/graf3d/eve7/src/REveCsgOps.cxx @@ -2820,7 +2820,7 @@ Int_t TCsgVV3D::AddObject(const TBuffer3D& buffer, Bool_t* addChildren) { if (fCompositeOpen) { - auto newMesh = ConvertToMesh(buffer); + auto newMesh = ConvertToMesh(buffer, nullptr); fCSTokens.push_back(std::make_pair(TBuffer3D::kCSNoOp, newMesh)); } @@ -2971,10 +2971,9 @@ std::unique_ptr<TBaseMesh> MakeMesh(TGeoMatrix *matr, TGeoShape *shape) return res; } -TBaseMesh *BuildFromCompositeShapeNew(TGeoCompositeShape *cshape, Int_t n_seg) +std::unique_ptr<TBaseMesh> BuildFromCompositeShapeNew(TGeoCompositeShape *cshape, Int_t n_seg) { - auto res = MakeMesh(nullptr, cshape); - return res.release(); + return MakeMesh(nullptr, cshape); } diff --git a/graf3d/eve7/src/REveGeoPolyShape.cxx b/graf3d/eve7/src/REveGeoPolyShape.cxx index 26ecf7262b3..052b532d331 100644 --- a/graf3d/eve7/src/REveGeoPolyShape.cxx +++ b/graf3d/eve7/src/REveGeoPolyShape.cxx @@ -65,9 +65,8 @@ REveGeoPolyShape* REveGeoPolyShape::Construct(TGeoCompositeShape *cshape, Int_t egps->fDY = cshape->GetDY(); egps->fDZ = cshape->GetDZ(); - EveCsg::TBaseMesh *mesh = EveCsg::BuildFromCompositeShapeNew(cshape, n_seg); - egps->SetFromMesh(mesh); - delete mesh; + auto mesh = EveCsg::BuildFromCompositeShapeNew(cshape, n_seg); + egps->SetFromMesh(mesh.get()); return egps; } -- GitLab