Salome HOME
Some minor changes in tests. Now the initialization plugin performs correctly in...
[modules/shaper.git] / src / Model / Model_AttributeDocRef.h
index b17ddf14714133d437c007bc4bd286b3318f7417..04eacc4372978ddebb19e8e1f2f78c2fb55e2709 100644 (file)
@@ -1,3 +1,5 @@
+// Copyright (C) 2014-20xx CEA/DEN, EDF R&D
+
 // File:        Model_AttributeDocRef.h
 // Created:     2 Apr 2014
 // Author:      Mikhail PONIKAROV
@@ -7,7 +9,7 @@
 
 #include "Model.h"
 #include "ModelAPI_AttributeDocRef.h"
-#include <TDataStd_Comment.hxx>
+#include <TDataStd_Integer.hxx>
 #include <TDF_Label.hxx>
 
 /**\class Model_AttributeDocRef
 
 class Model_AttributeDocRef : public ModelAPI_AttributeDocRef
 {
-  Handle_TDataStd_Comment myComment; ///< reference to document is identified as string-id
-public:
+  Handle(TDataStd_Integer) myID; ///< persistent and unique identifier of the document in the application
+ public:
+
   /// Defines the document referenced from this attribute
-  MODEL_EXPORT virtual void setValue(boost::shared_ptr<ModelAPI_Document> theDoc);
+  MODEL_EXPORT virtual void setValue(std::shared_ptr<ModelAPI_Document> theDoc);
 
   /// Returns document referenced from this attribute
-  MODEL_EXPORT virtual boost::shared_ptr<ModelAPI_Document> value();
+  MODEL_EXPORT virtual std::shared_ptr<ModelAPI_Document> value();
+
+  /// Returns the persisten ID of the document
+  MODEL_EXPORT virtual int docId();
 
-protected:
+ protected:
   /// Initializes attibutes
   Model_AttributeDocRef(TDF_Label& theLabel);