Salome HOME
Code alignment.
[modules/hydro.git] / src / HYDROData / HYDROData_Object.h
index 763153a354c764adb884fa391c5a2bb695046780..e5bfa5fb2945a3337fd4d9f5f465d4d5af1a454d 100644 (file)
@@ -3,7 +3,9 @@
 
 #include <HYDROData.h>
 
+#include <NCollection_Sequence.hxx>
 #include <TDF_Label.hxx>
+#include <QMap>
 #include <QString>
 
 ///! Kind of an object in a document
@@ -11,6 +13,9 @@ typedef int ObjectKind;
 ///! Unrecognized object
 const ObjectKind KIND_UNKNOWN = 0;
 const ObjectKind KIND_IMAGE = 1;
+const ObjectKind KIND_POLYLINE = 2;
+const ObjectKind KIND_VISUAL_STATE = 3;
+const ObjectKind KIND_BATHYMETRY = 4;
 
 DEFINE_STANDARD_HANDLE(HYDROData_Object, MMgt_TShared)
 
@@ -23,6 +28,16 @@ DEFINE_STANDARD_HANDLE(HYDROData_Object, MMgt_TShared)
  */
 class HYDROData_Object : public MMgt_TShared
 {
+protected:
+  /**
+   * Enumeration of tags corresponding to the persistent object parameters.
+   */
+  enum DataTag
+  {
+    DataTag_First = 0     ///< first tag, to reserve
+    // ...
+  };
+
 public:
   DEFINE_STANDARD_RTTI(HYDROData_Object);
 
@@ -64,6 +79,11 @@ public:
    */
   HYDRODATA_EXPORT void CopyTo(Handle_HYDROData_Object theDestination) const;
 
+  /**
+   * Returns the label of this object.
+   */
+  HYDRODATA_EXPORT TDF_Label& Label() {return myLab;}
+
 protected:
 
   friend class HYDROData_Iterator;
@@ -85,11 +105,6 @@ protected:
    */
   HYDRODATA_EXPORT virtual void SetLabel(TDF_Label theLabel);
 
-  /**
-   * Returns the label of this object.
-   */
-  TDF_Label& Label() {return myLab;}
-  
   /**
    * Internal method that used to store the byte array attribute
    * \param theTag tag of a label to store attribute (for 0 this is myLab)
@@ -112,6 +127,8 @@ protected:
   TDF_Label myLab; ///< label of this object
 };
 
+typedef NCollection_Sequence<Handle_HYDROData_Object> HYDROData_SequenceOfObjects;
+
 ///! Is Equal for HYDROData_Object mapping
 HYDRODATA_EXPORT bool IsEqual(const Handle_HYDROData_Object& theObj1, const Handle_HYDROData_Object& theObj2);