Salome HOME
Initial merge of branch 'BR_HYDRO_IMPS_2016' into BR_PORTING_OCCT_7
[modules/hydro.git] / src / HYDROData / HYDROData_Entity.h
index 51186e607beed5a9c755f78d1b15c17e2875d2f0..d82b3d7b015ff69068a4ed005751b168ac47c105 100644 (file)
 #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
@@ -65,24 +66,23 @@ const ObjectKind KIND_STRICKLER_TABLE     = 26;
 const ObjectKind KIND_LAND_COVER_OBSOLETE = 27;
 const ObjectKind KIND_CHANNEL_ALTITUDE    = 28;
 const ObjectKind KIND_LAND_COVER_MAP      = 29;
+const ObjectKind KIND_DTM                 = 30;
 const ObjectKind KIND_LAST                = KIND_LAND_COVER_MAP;
 
-DEFINE_STANDARD_HANDLE(HYDROData_Entity, MMgt_TShared)
-
 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.
@@ -119,7 +119,7 @@ public:
   };
 
 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.
@@ -242,7 +242,7 @@ public:
   /**
    * 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.
@@ -334,7 +334,7 @@ protected:
    * \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;
 
   /**
@@ -342,7 +342,7 @@ protected:
    * \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 );
 
   /**
@@ -354,7 +354,7 @@ protected:
              - 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 );
 
@@ -367,7 +367,7 @@ protected:
              - 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 );
 
@@ -386,7 +386,7 @@ protected:
    *        - 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;
@@ -452,6 +452,10 @@ 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: