1 // File: Model_AttributeDocRef.h
3 // Author: Mikhail PONIKAROV
5 #ifndef Model_AttributeDocRef_H_
6 #define Model_AttributeDocRef_H_
9 #include "ModelAPI_AttributeDocRef.h"
10 #include <TDataStd_Comment.hxx>
11 #include <TDF_Label.hxx>
13 /**\class Model_AttributeDocRef
15 * \brief Attribute that contains reference to another document.
18 class Model_AttributeDocRef : public ModelAPI_AttributeDocRef
20 Handle_TDataStd_Comment myComment; ///< reference to document is identified as string-id
21 boost::shared_ptr<ModelAPI_Document> myDoc; ///< document referenced by this attribute (if already loaded)
23 /// Defines the document referenced from this attribute
24 MODEL_EXPORT virtual void setValue(boost::shared_ptr<ModelAPI_Document> theDoc);
26 /// Returns document referenced from this attribute
27 MODEL_EXPORT virtual boost::shared_ptr<ModelAPI_Document> value();
30 /// Initializes attibutes
31 Model_AttributeDocRef(TDF_Label& theLabel);
33 friend class Model_Data;