Salome HOME
Some minor changes in tests. Now the initialization plugin performs correctly in...
[modules/shaper.git] / src / Model / Model_Data.h
index da40e7d4a8de9e5247bd08e92167765da748209c..8f8cfe5151f3d22f073a2120d45b10f1553e4bfe 100644 (file)
@@ -16,6 +16,7 @@
 #include <ModelAPI_AttributeRefAttr.h>
 #include <ModelAPI_AttributeReference.h>
 #include <ModelAPI_AttributeRefList.h>
+#include <ModelAPI_AttributeRefAttrList.h>
 #include <ModelAPI_AttributeString.h>
 #include <ModelAPI_AttributeIntArray.h>
 #include <ModelAPI_Data.h>
@@ -55,6 +56,8 @@ class Model_Data : public ModelAPI_Data
   std::set<AttributePtr> myRefsToMe;
   /// flag that may block the "attribute updated" sending
   bool mySendAttributeUpdated;
+  /// if some attribute was changed, but mySendAttributeUpdated was false, this flag stores this
+  bool myWasChangedButBlocked;
 
   /// Returns label of this feature
   TDF_Label label()
@@ -68,6 +71,7 @@ class Model_Data : public ModelAPI_Data
   friend class Model_AttributeReference;
   friend class Model_AttributeRefAttr;
   friend class Model_AttributeRefList;
+  friend class Model_AttributeRefAttrList;
   friend class Model_AttributeSelection;
   friend class Model_AttributeSelectionList;
 
@@ -100,6 +104,10 @@ class Model_Data : public ModelAPI_Data
   /// Returns the attribute that contains list of references to features
   MODEL_EXPORT virtual std::shared_ptr<ModelAPI_AttributeRefList>
     reflist(const std::string& theID);
+  /// Returns the attribute that contains list of references to features
+  /// or reference to an attribute of a feature
+  MODEL_EXPORT virtual std::shared_ptr<ModelAPI_AttributeRefAttrList>
+    refattrlist(const std::string& theID);
   /// Returns the attribute that contains boolean value
   MODEL_EXPORT virtual std::shared_ptr<ModelAPI_AttributeBoolean>
     boolean(const std::string& theID);