X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModel%2FModel_Document.h;h=db04509ba5e941d98f11140deda59744ad2577f8;hb=07bc7fd1c59cbe7a2d916654edf77409670f215b;hp=05d7d76eb39afc65b01e095272fa50258e97e9fb;hpb=98728587134b06fd3dfe2a158bd39015fa0df2ab;p=modules%2Fshaper.git diff --git a/src/Model/Model_Document.h b/src/Model/Model_Document.h index 05d7d76eb..db04509ba 100644 --- a/src/Model/Model_Document.h +++ b/src/Model/Model_Document.h @@ -1,3 +1,5 @@ +// Copyright (C) 2014-20xx CEA/DEN, EDF R&D + // File: Model_Document.h // Created: 28 Feb 2014 // Author: Mikhail PONIKAROV @@ -90,10 +92,10 @@ class Model_Document : public ModelAPI_Document MODEL_EXPORT virtual ObjectPtr object(TDF_Label theLabel); //! Adds a new sub-document by the identifier, or returns existing one if it is already exist - MODEL_EXPORT virtual boost::shared_ptr subDocument(std::string theDocID); + MODEL_EXPORT virtual std::shared_ptr subDocument(std::string theDocID); //! Internal sub-document by ID - MODEL_EXPORT virtual boost::shared_ptr subDoc(std::string theDocID); + MODEL_EXPORT virtual std::shared_ptr subDoc(std::string theDocID); ///! Returns the id of hte document MODEL_EXPORT virtual const std::string& id() const @@ -114,21 +116,21 @@ class Model_Document : public ModelAPI_Document MODEL_EXPORT virtual int size(const std::string& theGroupID, const bool theHidden = false); /// Creates a construction cresults - MODEL_EXPORT virtual boost::shared_ptr createConstruction( - const boost::shared_ptr& theFeatureData, const int theIndex = 0); + MODEL_EXPORT virtual std::shared_ptr createConstruction( + const std::shared_ptr& theFeatureData, const int theIndex = 0); /// Creates a body results - MODEL_EXPORT virtual boost::shared_ptr createBody( - const boost::shared_ptr& theFeatureData, const int theIndex = 0); + MODEL_EXPORT virtual std::shared_ptr createBody( + const std::shared_ptr& theFeatureData, const int theIndex = 0); /// Creates a part results - MODEL_EXPORT virtual boost::shared_ptr createPart( - const boost::shared_ptr& theFeatureData, const int theIndex = 0); + MODEL_EXPORT virtual std::shared_ptr createPart( + const std::shared_ptr& theFeatureData, const int theIndex = 0); /// Creates a group results - MODEL_EXPORT virtual boost::shared_ptr createGroup( - const boost::shared_ptr& theFeatureData, const int theIndex = 0); + MODEL_EXPORT virtual std::shared_ptr createGroup( + const std::shared_ptr& theFeatureData, const int theIndex = 0); //! Returns a feature by result (owner of result) - MODEL_EXPORT virtual boost::shared_ptr - feature(const boost::shared_ptr& theResult); + MODEL_EXPORT virtual std::shared_ptr + feature(const std::shared_ptr& theResult); ///! Returns true if parametric updater need to execute feature on recomputartion ///! On abort, undo or redo it is not necessary: results in document are updated automatically @@ -166,12 +168,12 @@ class Model_Document : public ModelAPI_Document void initData(ObjectPtr theObj, TDF_Label theLab, const int theTag); //! Allows to store the result in the data tree of the document (attaches 'data' of result to tree) - MODEL_EXPORT virtual void storeResult(boost::shared_ptr theFeatureData, - boost::shared_ptr theResult, + MODEL_EXPORT virtual void storeResult(std::shared_ptr theFeatureData, + std::shared_ptr theResult, const int theResultIndex = 0); //! returns the label of result by index; creates this label if it was not created before - TDF_Label resultLabel(const boost::shared_ptr& theFeatureData, const int theResultIndex); + TDF_Label resultLabel(const std::shared_ptr& theFeatureData, const int theResultIndex); //! Updates the results list of the feature basing on the current data tree void updateResults(FeaturePtr theFeature); @@ -181,6 +183,7 @@ class Model_Document : public ModelAPI_Document friend class Model_Application; friend class Model_Session; + friend class Model_Update; friend class Model_AttributeReference; friend class DFBrowser; @@ -188,8 +191,10 @@ class Model_Document : public ModelAPI_Document std::string myID; ///< identifier of the document in the application std::string myKind; ///< kind of the document in the application Handle_TDocStd_Document myDoc; ///< OCAF document - /// number of transactions after the last "save" call, used for "IsModified" method - int myTransactionsAfterSave; + /// counter of transactions + int myTransactionsCounter; + /// counter value of transaction on the last "save" call, used for "IsModified" method + int myTransactionSave; /// number of nested transactions performed (or -1 if not nested) int myNestedNum; /// All features managed by this document (not only in history of OB)