Salome HOME
Issue #1063: Problem of dynamic cast on Linux for Selection validators is solved
[modules/shaper.git] / src / GeomAlgoAPI / GeomAlgoAPI_MakeShapeList.h
index 7de5773503df3e456d68b4733eaa6fcebeb4b887..0ba480907d05af9ca60c7527dd8e274f59d3d4bf 100644 (file)
@@ -14,7 +14,7 @@
 
 /** \class GeomAlgoAPI_MakeShapeList
  *  \ingroup DataAlgo
- *  \brief Interface to the root class of all topological shapes constructions
+ *  \brief List of topological shapes constructions
  */
 class GeomAlgoAPI_MakeShapeList : public GeomAlgoAPI_MakeShape
 {
@@ -37,8 +37,18 @@ public:
    */
   GEOMALGOAPI_EXPORT void init(const ListOfMakeShape& theMakeShapeList);
 
+  /** \brief Adds algo to the end of list.
+   *  \param[in] theMakeShape algo to be added.
+   */
+  GEOMALGOAPI_EXPORT void append(const std::shared_ptr<GeomAlgoAPI_MakeShape> theMakeShape);
+
+  /** \brief Adds another one list of algos to the end of list.
+   *  \param[in] theMakeShapeList algo list to be added.
+   */
+  GEOMALGOAPI_EXPORT void append(const GeomAlgoAPI_MakeShapeList& theMakeShapeList);
+
   /// \return a shape built by the shape construction algorithms
-  GEOMALGOAPI_EXPORT const std::shared_ptr<GeomAPI_Shape> shape() const;
+  GEOMALGOAPI_EXPORT virtual const std::shared_ptr<GeomAPI_Shape> shape() const;
 
   /// \return the list of shapes generated from the shape \a theShape
   GEOMALGOAPI_EXPORT virtual void generated(const std::shared_ptr<GeomAPI_Shape> theShape,
@@ -48,7 +58,7 @@ public:
   GEOMALGOAPI_EXPORT virtual void modified(const std::shared_ptr<GeomAPI_Shape> theShape,
                                            ListOfShape& theHistory);
 
-  /// Returns whether the shape is deleted
+  /// \return whether the shape is deleted
   GEOMALGOAPI_EXPORT virtual bool isDeleted(const std::shared_ptr<GeomAPI_Shape> theShape);
 
 private:
@@ -58,7 +68,7 @@ private:
 
 
 protected:
-  ListOfMakeShape myListOfMakeShape;
+  ListOfMakeShape myListOfMakeShape; ///< List of make shape algos.
 };
 
 #endif