Salome HOME
Prepare version 1.2.1: quick fix for iteration 2 release
[modules/shaper.git] / src / Model / Model_AttributeRefList.h
index d784769e6c52b6619e5d9bb9be8bdecd9f4d90cf..1b2c861be2a5a7d04dce3270a491077e1ba52651 100644 (file)
@@ -1,3 +1,5 @@
+// Copyright (C) 2014-20xx CEA/DEN, EDF R&D
+
 // File:        Model_AttributeRefList.h
 // Created:     8 May 2014
 // Author:      Mikhail PONIKAROV
@@ -14,6 +16,7 @@
 /**\class Model_AttributeRefList
  * \ingroup DataModel
  * \brief Attribute that contains list of references to features (located in the same document).
+ * For the current moment it does not support references t oobjects in other documents.
  */
 
 class Model_AttributeRefList : public ModelAPI_AttributeRefList
@@ -27,11 +30,19 @@ class Model_AttributeRefList : public ModelAPI_AttributeRefList
   MODEL_EXPORT virtual void remove(ObjectPtr theObject);
 
   /// Returns number of features in the list
-  MODEL_EXPORT virtual int size();
+  MODEL_EXPORT virtual int size() const;
+
+  /// Removes all references from the list
+  MODEL_EXPORT virtual void clear();
 
   /// Returns the list of features
   MODEL_EXPORT virtual std::list<ObjectPtr> list();
 
+  /// Returns the list of features
+  MODEL_EXPORT virtual ObjectPtr object(const int theIndex) const;
+
+  /// Returns true if attribute was  initialized by some value
+  MODEL_EXPORT virtual bool isInitialized();
  protected:
   /// Objects are created for features automatically
   MODEL_EXPORT Model_AttributeRefList(TDF_Label& theLabel);