Salome HOME
Building Names. First part (to be debugged).
[modules/shaper.git] / src / Model / Model_Update.h
index 31d532da516fe38bd0ece5048025097635ed8b4b..a9a7bfee82e50711e447953cac2d8df2e063a309 100644 (file)
@@ -1,3 +1,5 @@
+// Copyright (C) 2014-20xx CEA/DEN, EDF R&D
+
 // File:        Model_Update.hxx
 // Created:     25 Jun 2014
 // Author:      Mikhail PONIKAROV
@@ -6,6 +8,7 @@
 #define Model_Update_H_
 
 #include "Model.h"
+#include <ModelAPI_Data.h>
 #include "Events_Listener.h"
 #include <memory>
 #include <set>
@@ -39,7 +42,9 @@ class Model_Update : public Events_Listener
   /// Processes the feature argument update: executes the results
   MODEL_EXPORT virtual void processEvent(const std::shared_ptr<Events_Message>& theMessage);
 
- protected:
+protected:
+  /// updates all features in the document and then - in sub-documents
+  void updateInDoc(std::shared_ptr<ModelAPI_Document> theDoc);
   /// Recoursively checks and updates the feature if needed (calls the execute method)
   /// Returns true if feature was updated.
   bool updateFeature(std::shared_ptr<ModelAPI_Feature> theFeature);
@@ -48,7 +53,8 @@ class Model_Update : public Events_Listener
   /// Returns true if object was updated.
   bool updateObject(std::shared_ptr<ModelAPI_Object> theObject, const bool theCyclic = true);
   /// Sends the redisplay events for feature and results, updates the updated status
-  void redisplayWithResults(std::shared_ptr<ModelAPI_Feature> theFeature);
+  void redisplayWithResults(std::shared_ptr<ModelAPI_Feature> theFeature, 
+    const ModelAPI_ExecState theState);
 };
 
 #endif