Salome HOME
Fix for the issue #937 and crashes:
[modules/shaper.git] / src / Model / Model_Data.h
index 1a502b4b0ca0f295b3f43c25c0aa4de06f2ea3a4..1e6c0d65082a4df12d4f9b7c7e61c9b78feed426 100644 (file)
@@ -170,6 +170,9 @@ class Model_Data : public ModelAPI_Data
   /// Registers error during the execution, causes the ExecutionFailed state
   MODEL_EXPORT virtual void setError(const std::string& theError, bool theSend = true);
 
+  /// Erases the error string if it is not empty
+  void eraseErrorString();
+
   /// Registers error during the execution, causes the ExecutionFailed state
   MODEL_EXPORT virtual std::string error() const;
 
@@ -202,7 +205,7 @@ class Model_Data : public ModelAPI_Data
 
   /// Returns true if the given object is owner of this data (needed for correct erase of object
   /// with duplicated data)
-  MODEL_EXPORT virtual bool isOwner(ModelAPI_Object* theOwner);
+  MODEL_EXPORT virtual std::shared_ptr<ModelAPI_Object> owner();
 
 protected:
   /// Returns true if "is in history" custom behaviors is defined for the feature
@@ -211,6 +214,12 @@ protected:
   /// Defines the custom "is in history" behavior
   MODEL_EXPORT virtual void setIsInHistory(const bool theFlag);
 
+  /// Returns true if the object is deleted, but some data is still keept in memory
+  MODEL_EXPORT virtual bool isDeleted();
+
+  /// Sets true if the object is deleted, but some data is still keept in memory
+  MODEL_EXPORT virtual void setIsDeleted(const bool theFlag);
+
 private:
   /// Removes all information about back references
   void eraseBackReferences();