2 #ifndef HYDROData_DummyObject3D_HeaderFile
3 #define HYDROData_DummyObject3D_HeaderFile
5 #include <HYDROData_Entity.h>
7 DEFINE_STANDARD_HANDLE(HYDROData_DummyObject3D, HYDROData_Entity)
9 class Handle(HYDROData_Object);
12 /**\class HYDROData_DummyObject3D
13 * \brief The artificial objects are objects created or planned for creation by human.
16 class HYDROData_DummyObject3D : public HYDROData_Entity
20 * Enumeration of tags corresponding to the persistent object parameters.
24 DataTag_First = HYDROData_Entity::DataTag_First + 100 ///< first tag, to reserve
28 DEFINE_STANDARD_RTTI(HYDROData_DummyObject3D);
33 * Returns the kind of this object. Must be redefined in all objects of known type.
35 HYDRODATA_EXPORT virtual const ObjectKind GetKind() const { return KIND_DUMMY_3D; }
38 * Returns the name of this object.
40 HYDRODATA_EXPORT virtual QString GetName() const;
43 * Returns flag indicating that object is updateble or not.
45 HYDRODATA_EXPORT virtual bool CanBeUpdated() const;
48 * Returns flag indicating that object can be removed or not.
50 HYDRODATA_EXPORT virtual bool CanRemove();
54 * Returns the parent object.
56 HYDRODATA_EXPORT Handle(HYDROData_Object) GetObject() const;
59 * Returns the 3d shape of the parent object.
61 HYDRODATA_EXPORT virtual TopoDS_Shape GetShape() const;
65 * Returns filling color of object.
67 HYDRODATA_EXPORT virtual QColor GetFillingColor() const;
70 * Returns border color of object.
72 HYDRODATA_EXPORT virtual QColor GetBorderColor() const;
76 friend class HYDROData_Iterator;
79 * Creates new object in the internal data structure. Use higher level objects
80 * to create objects with real content.
82 HYDRODATA_EXPORT HYDROData_DummyObject3D();
85 * Destructs properties of the object and object itself, removes it from the document.
87 virtual HYDRODATA_EXPORT ~HYDROData_DummyObject3D();