#include <TDocStd_Document.hxx>
#include <NCollection_DataMap.hxx>
#include <TDF_Label.hxx>
+#include <TDF_LabelList.hxx>
#include <map>
#include <set>
#include <vector>
/// Creates a body results
std::shared_ptr<ModelAPI_ResultBody> createBody(
const std::shared_ptr<ModelAPI_Data>& theFeatureData, const int theIndex = 0);
- /// Creates a body results
- std::shared_ptr<ModelAPI_ResultCompSolid> createCompSolid(
- const std::shared_ptr<ModelAPI_Data>& theFeatureData, const int theIndex = 0);
/// Creates a part results
std::shared_ptr<ModelAPI_ResultPart> createPart(
const std::shared_ptr<ModelAPI_Data>& theFeatureData, const int theIndex = 0);
void setUniqueName(FeaturePtr theFeature);
//! Synchronizes myFeatures list with the updated document
- //! \param theMarkUpdated causes the "update" event for all features
+ //! \param theUpdated list of labels that are marked as modified, so featrues must be also
//! \param theUpdateReferences causes the update of back-references
//! \param theFlush makes flush all events in the end of all modifications of this method
- void synchronizeFeatures(const bool theMarkUpdated, const bool theUpdateReferences,
+ void synchronizeFeatures(const TDF_LabelList& theUpdated, const bool theUpdateReferences,
const bool theFlush);
//! Synchronizes the BackReferences list in Data of Features and Results
void synchronizeBackRefs();
FeaturePtr firstFeature();
/// Returns to the last (from the history point of view) feature, any: invisible or disabled
FeaturePtr lastFeature();
+ /// Returns true if theLater is in history of features creation later than theCurrent
+ bool isLater(FeaturePtr theLater, FeaturePtr theCurrent) const;
/// Returns the result group identifier of the given feature (for this at least one result must
/// be created before)