- /// Init attributes for extrusion.
- virtual void initMakeSolidsAttributes() {};
-
- /// Create solid from face with extrusion.
- virtual void makeSolid(const std::shared_ptr<GeomAPI_Shape> theFace,
- std::shared_ptr<GeomAlgoAPI_MakeShape>& theMakeShape) {};
-
-private:
- /// Load Naming data structure of the feature to the document
- void loadNamingDS(GeomAlgoAPI_Prism& thePrismAlgo,
- std::shared_ptr<ModelAPI_ResultBody> theResultBody,
- std::shared_ptr<GeomAPI_Shape> theBasis);
-
- /// Set the sub-object to list of exturusion base.
- void setSketchObjectToList();
+ /// Generates extrusions.
+ /// \param[out] theBaseShapes list of base shapes.
+ /// \param[out] theMakeShapes list of according algos.
+ /// \return false in case one of algo failed.
+ bool makeExtrusions(ListOfShape& theBaseShapes,
+ ListOfMakeShape& theMakeShapes);