+
#ifndef HYDROData_Iterator_HeaderFile
#define HYDROData_Iterator_HeaderFile
-#include <HYDROData_Object.h>
-#include <HYDROData_Document.h>
+#include "HYDROData_Document.h"
#include <TDF_ChildIDIterator.hxx>
/**
* Returns the current object of the iterator.
*/
- HYDRODATA_EXPORT Handle(HYDROData_Object) Current();
+ HYDRODATA_EXPORT Handle(HYDROData_Entity) Current();
+
+public:
+
+ /**
+ * Creates object in the document on the given label
+ * \param theDoc document where object will be located
+ * \param theKind kind of the new object, can not be UNKNOWN
+ */
+ static Handle(HYDROData_Entity) CreateObject( TDF_Label& theNewLabel,
+ const ObjectKind& theObjectKind );
protected:
friend class HYDROData_Document;
- friend class HYDROData_Image;
- friend class HYDROData_Calculation;
+ friend class HYDROData_Entity;
/**
* Creates object in the document, call HYDROData_Document method to create
* \param theDoc document where object will be located
* \param theKind kind of the new object, can not be UNKNOWN
*/
- static Handle_HYDROData_Object CreateObject(
- Handle_HYDROData_Document theDoc, ObjectKind theKind);
+ static Handle(HYDROData_Entity) CreateObject(
+ const Handle(HYDROData_Document)& theDoc,
+ const ObjectKind& theObjectKind );
/**
* Returns object associated to the given label.
*/
- static Handle_HYDROData_Object Object(const TDF_Label theLabel);
+ static Handle(HYDROData_Entity) Object( const TDF_Label& theLabel );
TDF_ChildIDIterator myIter; ///< iterator by the objects in the document
};