+// Copyright (C) 2014-20xx CEA/DEN, EDF R&D
+
// File: Model_AttributeReference.h
// Created: 8 May 2014
// Author: Mikhail PONIKAROV
class Model_AttributeReference : public ModelAPI_AttributeReference
{
+ TDF_Label myLab; ///< the main label of this attribute
Handle_TDF_Reference myRef; ///< references to the feature label
public:
/// Defines the object referenced from this attribute
MODEL_EXPORT ~Model_AttributeReference();
- MODEL_EXPORT virtual void setObject(const boost::shared_ptr<ModelAPI_Object>& theObject);
+ MODEL_EXPORT virtual void setObject(const std::shared_ptr<ModelAPI_Object>& theObject);
+
+ /// Returns true if attribute was initialized by some value
+ MODEL_EXPORT virtual bool isInitialized();
+
protected:
/// Objects are created for features automatically
MODEL_EXPORT Model_AttributeReference(TDF_Label& theLabel);
+ /// Reinitializes the internal state of the attribute (may be needed on undo/redo, abort, etc)
+ virtual void reinit();
friend class Model_Data;
friend class Model_AttributeSelection;