X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModelAPI%2FModelAPI_ResultBody.h;h=ad5846e0f10a84927141a7b1f729b954c35d2bad;hb=1cef78af4c4328ecf99a3ced86bda38e6e82e15c;hp=54df9a2c65c6cfa974ce5a958a9a3f35f9dc5626;hpb=4748bf45f55c8185533d460302d3dbefc948b56e;p=modules%2Fshaper.git diff --git a/src/ModelAPI/ModelAPI_ResultBody.h b/src/ModelAPI/ModelAPI_ResultBody.h index 54df9a2c6..ad5846e0f 100644 --- a/src/ModelAPI/ModelAPI_ResultBody.h +++ b/src/ModelAPI/ModelAPI_ResultBody.h @@ -44,8 +44,11 @@ public: return RESULT_BODY_COLOR; } - /// Stores the shape (called by the execution method). - MODELAPI_EXPORT virtual void store(const std::shared_ptr& theShape); + /// \brief Stores the shape (called by the execution method). + /// param[in] theShape shape to store. + /// param[in] theIsStoreSameShapes if false stores reference to the same shape if it is already in document. + MODELAPI_EXPORT virtual void store(const std::shared_ptr& theShape, + const bool theIsStoreSameShapes = true); /// Stores the generated shape (called by the execution method). MODELAPI_EXPORT virtual void storeGenerated(const std::shared_ptr& theFromShape, @@ -93,7 +96,7 @@ public: /// load and orient modified shapes MODELAPI_EXPORT virtual void loadAndOrientModifiedShapes (GeomAlgoAPI_MakeShape* theMS, std::shared_ptr theShapeIn, const int theKindOfShape, const int theTag, - const std::string& theName, GeomAPI_DataMapOfShapeShape& theSubShapes); + const std::string& theName, GeomAPI_DataMapOfShapeShape& theSubShapes, const bool theIsStoreSeparate = false); /// load and orient generated shapes MODELAPI_EXPORT virtual void loadAndOrientGeneratedShapes (GeomAlgoAPI_MakeShape* theMS, std::shared_ptr theShapeIn, const int theKindOfShape, @@ -111,6 +114,10 @@ public: MODELAPI_EXPORT virtual void loadDisconnectedVertexes(std::shared_ptr theShape, const std::string& theName,int& theTag); + /// Returns true if the latest modification of this body in the naming history + // is equal to the given shape + MODELAPI_EXPORT virtual bool isLatestEqual(const std::shared_ptr& theShape) = 0; + protected: /// Default constructor accessible only from Model_Objects MODELAPI_EXPORT ModelAPI_ResultBody();