Salome HOME
Issue #1063: Problem of dynamic cast on Linux for Selection validators is solved
[modules/shaper.git] / src / ModelAPI / ModelAPI_Data.h
index e57aaec10a62c18ff9df8a474b44927b89ae5d28..c9599820691e0201db1026df0264f2ce84a535ea 100644 (file)
@@ -7,6 +7,10 @@
 #ifndef ModelAPI_Data_H_
 #define ModelAPI_Data_H_
 
+#ifdef _WINDOWS // to avoid too long decorated name warning 
+#pragma warning( disable : 4503 )
+#endif
+
 #include "ModelAPI.h"
 #include <string>
 #include <list>
@@ -141,12 +145,28 @@ class MODELAPI_EXPORT ModelAPI_Data
   virtual void referencesToObjects(
     std::list<std::pair<std::string, std::list<std::shared_ptr<ModelAPI_Object> > > >& theRefs) =0;
 
-  /// Copies all atributes content into theTarget data
+  /// Copies all attributes content into theTarget data
   virtual void copyTo(std::shared_ptr<ModelAPI_Data> theTarget) = 0;
 
   /// Returns the invalid data pointer (to avoid working with NULL shared ptrs in swig)
   virtual std::shared_ptr<ModelAPI_Data> invalidPtr() = 0;
 
+  /// Identifier of the transaction when object (feature or result) was updated last time.
+  virtual int updateID() = 0;
+
+  /// Identifier of the transaction when object (feature or result) was updated last time.
+  /// This method is called by the updater.
+  virtual void setUpdateID(const int theID) = 0;
+
+  /// Returns the owner of htis data
+  virtual std::shared_ptr<ModelAPI_Object> owner() = 0;
+
+  /// Returns true if the object is deleted, but some data is still keept in memory
+  virtual bool isDeleted() = 0;
+
+  /// Sets true if the object is deleted, but some data is still keept in memory
+  virtual void setIsDeleted(const bool theFlag) = 0;
+
  protected:
   /// Objects are created for features automatically
   ModelAPI_Data();