#include <ModelAPI_Document.h>
#include <ModelAPI_Feature.h>
#include <ModelAPI_Result.h>
+#include <ModelAPI_ResultParameter.h>
#include <TDocStd_Document.hxx>
#include <NCollection_DataMap.hxx>
MODEL_EXPORT virtual std::shared_ptr<ModelAPI_ResultGroup> createGroup(
const std::shared_ptr<ModelAPI_Data>& theFeatureData, const int theIndex = 0);
+ MODEL_EXPORT virtual std::shared_ptr<ModelAPI_ResultParameter> createParameter(
+ const std::shared_ptr<ModelAPI_Data>& theFeatureData, const int theIndex = 0);
+
//! Returns a feature by result (owner of result)
MODEL_EXPORT virtual std::shared_ptr<ModelAPI_Feature>
feature(const std::shared_ptr<ModelAPI_Result>& theResult);
//! Synchronizes myFeatures list with the updated document
//! \param theMarkUpdated causes the "update" event for all features
//! \param theUpdateReferences causes the update of back-references
- void synchronizeFeatures(const bool theMarkUpdated, const bool theUpdateReferences);
+ //! \param theFlush makes flush all events in the end of all modifications of this method
+ void synchronizeFeatures(const bool theMarkUpdated, const bool theUpdateReferences,
+ const bool theFlush);
//! Synchronizes the BackReferences list in Data of Features and Results
void synchronizeBackRefs();
/// Internally makes document know that feature was removed or added in history after creation
MODEL_EXPORT virtual void addToHistory(const std::shared_ptr<ModelAPI_Object> theObject);
+ /// Returns true if the document is root module document
+ bool isRoot() const;
+
friend class Model_Application;
friend class Model_Session;
friend class Model_Update;