#include <TDF_Label.hxx>
#include <QMap>
#include <QString>
+#include <Standard_Type.hxx>
class QColor;
class QVariant;
class QStringList;
-class Handle(TDataStd_ReferenceList);
-class Handle_HYDROData_Entity;
+class TDataStd_ReferenceList;
+class HYDROData_Entity;
class TopoDS_Shape;
///! Kind of an object in a document
const ObjectKind KIND_LAND_COVER_OBSOLETE = 27;
const ObjectKind KIND_CHANNEL_ALTITUDE = 28;
const ObjectKind KIND_LAND_COVER_MAP = 29;
-const ObjectKind KIND_LAST = KIND_LAND_COVER_MAP;
-
-DEFINE_STANDARD_HANDLE(HYDROData_Entity, MMgt_TShared)
+const ObjectKind KIND_DTM = 30;
+const ObjectKind KIND_LAST = KIND_DTM;
class MapOfTreatedObjects : public QMap<QString,Handle(Standard_Transient)>
{
};
-class HYDRODATA_EXPORT HYDROData_SequenceOfObjects : public NCollection_Sequence<Handle_HYDROData_Entity>
+class HYDRODATA_EXPORT HYDROData_SequenceOfObjects : public NCollection_Sequence<Handle(HYDROData_Entity)>
{
public:
HYDROData_SequenceOfObjects();
HYDROData_SequenceOfObjects( const HYDROData_SequenceOfObjects& );
- HYDROData_SequenceOfObjects( const NCollection_Sequence<Handle_HYDROData_Entity>& );
+ HYDROData_SequenceOfObjects( const NCollection_Sequence<Handle(HYDROData_Entity)>& );
};
///! Is Equal for HYDROData_Entity mapping
-HYDRODATA_EXPORT bool IsEqual(const Handle_HYDROData_Entity& theObj1, const Handle_HYDROData_Entity& theObj2);
+HYDRODATA_EXPORT bool IsEqual(const Handle(HYDROData_Entity)& theObj1, const Handle(HYDROData_Entity)& theObj2);
/**\class HYDROData_Entity
* \brief Generic class of any object in the data model.
};
public:
- DEFINE_STANDARD_RTTI(HYDROData_Entity);
+ DEFINE_STANDARD_RTTIEXT(HYDROData_Entity, MMgt_TShared);
/**
* Returns the kind of this object. Must be redefined in all objects of known type.
/**
* Returns the z-level for object presentation, -1 if no z-level.
*/
- HYDRODATA_EXPORT virtual Standard_Boolean GetZLevel( Standard_Integer& theLevel ) const;
+ HYDRODATA_EXPORT virtual bool GetZLevel( Standard_Integer& theLevel ) const;
/**
* Set the z-level for object presentation.
* \param theObj pointer to reference object
* \param theTag tag of a label to store attribute (for 0 this is myLab)
*/
- bool HasReference( const Handle_HYDROData_Entity& theObj,
+ bool HasReference( const Handle(HYDROData_Entity)& theObj,
const int theTag = 0 ) const;
/**
* \param theObj pointer to reference object
* \param theTag tag of a label to store attribute (for 0 this is myLab)
*/
- void AddReferenceObject( const Handle_HYDROData_Entity& theObj,
+ void AddReferenceObject( const Handle(HYDROData_Entity)& theObj,
const int theTag = 0 );
/**
- if less than zero then prepend to the list
- indexing starts from 0
*/
- void SetReferenceObject( const Handle_HYDROData_Entity& theObj,
+ void SetReferenceObject( const Handle(HYDROData_Entity)& theObj,
const int theTag = 0,
const int theIndex = 0 );
- if less than zero then prepend to the list
- indexing starts from 0
*/
- void InsertReferenceObject( const Handle_HYDROData_Entity& theObj,
+ void InsertReferenceObject( const Handle(HYDROData_Entity)& theObj,
const int theTag = 0,
const int theBeforeIndex = 0 );
* - indexing starts from 0
* \returns pointer to reference object or NULL if label is not set
*/
- Handle_HYDROData_Entity GetReferenceObject( const int theTag = 0,
+ Handle(HYDROData_Entity) GetReferenceObject( const int theTag = 0,
const int theIndex = 0 ) const;
HYDROData_SequenceOfObjects GetReferenceObjects( const int theTag = 0 ) const;
* \param theTag tag of a label that keeps the attribute (for 0 this is myLab)
*/
void ClearReferenceObjects( const int theTag = 0 );
+
+public:
+
+ HYDRODATA_EXPORT virtual bool CompareLabels(const Handle(HYDROData_Entity)& theOtherObj);
protected:
void SetDouble( int theTag, double theValue );
double GetDouble( int theTag, double theDefValue = 0.0 ) const;
+ void SetInteger( int theTag, int theValue );
+ int GetInteger( int theTag, int theDefValue = 0 ) const;
+
+
int GetGeomChangeFlag() const;
protected: