X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FGeomAlgoImpl%2FGEOMAlgo_Splitter.hxx;h=58020b2b1ed6ec3b119faf62d8a2f9b16a508393;hb=4c6bc04d7e9741d06345a4a06ae11f3bf80f5b04;hp=0796e5579cc690960d1a23d0a13c350d6ef4caba;hpb=42dfdea5422ab72d81c36155b4c6f352c85c1110;p=modules%2Fshaper.git diff --git a/src/GeomAlgoImpl/GEOMAlgo_Splitter.hxx b/src/GeomAlgoImpl/GEOMAlgo_Splitter.hxx index 0796e5579..58020b2b1 100644 --- a/src/GeomAlgoImpl/GEOMAlgo_Splitter.hxx +++ b/src/GeomAlgoImpl/GEOMAlgo_Splitter.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2015 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2019 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -19,9 +19,6 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// File: GEOMAlgo_Splitter.hxx -// -// Author: Peter KURNEV #ifndef GEOMAlgo_Splitter_HeaderFile #define GEOMAlgo_Splitter_HeaderFile @@ -39,60 +36,72 @@ #include -#include -#include - #include //======================================================================= //class : GEOMAlgo_Splitter //purpose : //======================================================================= -class GEOMAlgo_Splitter : public BOPAlgo_Builder +/*! + * \class GEOMAlgo_Splitter + * \ingroup DataAlgo + * A class for shapes partitioning + */ + class GEOMAlgo_Splitter : public BOPAlgo_Builder { public: - - GEOMALGOIMPL_EXPORT - GEOMAlgo_Splitter(); + /// Constructor + GEOMALGOIMPL_EXPORT GEOMAlgo_Splitter(); - GEOMALGOIMPL_EXPORT - GEOMAlgo_Splitter(const Handle(NCollection_BaseAllocator)& theAllocator); + /// Constructor + /// \param theAllocator an allocator object + GEOMALGOIMPL_EXPORT GEOMAlgo_Splitter(const Handle(NCollection_BaseAllocator)& theAllocator); - GEOMALGOIMPL_EXPORT - virtual ~GEOMAlgo_Splitter(); + GEOMALGOIMPL_EXPORT virtual ~GEOMAlgo_Splitter(); - GEOMALGOIMPL_EXPORT - void AddTool(const TopoDS_Shape& theShape); + /// Add a tool shape + /// \param theShape a tool shape + GEOMALGOIMPL_EXPORT void AddTool(const TopoDS_Shape& theShape); - GEOMALGOIMPL_EXPORT - const BOPCol_ListOfShape& Tools()const; + /// Returns list of tool shapes + GEOMALGOIMPL_EXPORT const NCollection_List& Tools()const; - GEOMALGOIMPL_EXPORT - void SetLimit(const TopAbs_ShapeEnum aLimit); + /// Set type of used shapes + /// \param aLimit a shape type + GEOMALGOIMPL_EXPORT void SetLimit(const TopAbs_ShapeEnum aLimit); - GEOMALGOIMPL_EXPORT - TopAbs_ShapeEnum Limit()const; + /// Returns defined limit type + GEOMALGOIMPL_EXPORT TopAbs_ShapeEnum Limit()const; - GEOMALGOIMPL_EXPORT - void SetLimitMode(const Standard_Integer aMode); + /// Set mode (0 or 1) of limit + /// \param aMode the mode value + GEOMALGOIMPL_EXPORT void SetLimitMode(const Standard_Integer aMode); - GEOMALGOIMPL_EXPORT - Standard_Integer LimitMode()const; + /// Returns mode of limit + GEOMALGOIMPL_EXPORT Standard_Integer LimitMode()const; - GEOMALGOIMPL_EXPORT - virtual void Clear(); + /// Clears all tool shapes + GEOMALGOIMPL_EXPORT virtual void Clear(); protected: - GEOMALGOIMPL_EXPORT - virtual void BuildResult(const TopAbs_ShapeEnum theType); + /// Build result. + /// \param theType a type of limit + GEOMALGOIMPL_EXPORT virtual void BuildResult(const TopAbs_ShapeEnum theType); - GEOMALGOIMPL_EXPORT - virtual void PostTreat(); + /// Post processing of the calculation + GEOMALGOIMPL_EXPORT virtual void PostTreat(); protected: - BOPCol_ListOfShape myTools; - BOPCol_MapOfShape myMapTools; + /// List of tools + NCollection_List myTools; + + /// Map of tools + NCollection_Map myMapTools; + + /// A limit type TopAbs_ShapeEnum myLimit; + + /// A limit mode Standard_Integer myLimitMode; };