Salome HOME
Merge branch 'dev_branch' into BR_quadtree
[modules/hydro.git] / src / HYDROPy / HYDROData_Document.sip
index bc921dee6ee6a4ff4213076d23d3f1ffae059596..584b11dd5e0fb5485a37a97443101c225f61cc5a 100644 (file)
@@ -1,12 +1,8 @@
-// Copyright (C) 2007-2013  CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
+// Copyright (C) 2014-2015  EDF-R&D
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 // License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+// version 2.1 of the License, or (at your option) any later version.
 //
 // This library is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -67,6 +63,11 @@ class HYDROData_Document
         aRes = new HYDROData_Image( *dynamic_cast<HYDROData_Image*>( theObject ) );
         break;
       }
+      case KIND_POLYLINE:
+      {
+        aRes = new HYDROData_Polyline3D( *dynamic_cast<HYDROData_Polyline3D*>( theObject ) );
+        break;
+      }
       case KIND_BATHYMETRY:
       {
         aRes = new HYDROData_Bathymetry( *dynamic_cast<HYDROData_Bathymetry*>( theObject ) );
@@ -77,9 +78,19 @@ class HYDROData_Document
         aRes = new HYDROData_AltitudeObject( *dynamic_cast<HYDROData_AltitudeObject*>( theObject ) );
         break;
       }
-      case KIND_OBSTACLE_ALTITUDE:
+      case KIND_IMMERSIBLE_ZONE:
       {
-        aRes = new HYDROData_ObstacleAltitude( *dynamic_cast<HYDROData_ObstacleAltitude*>( theObject ) );
+        aRes = new HYDROData_ImmersibleZone( *dynamic_cast<HYDROData_ImmersibleZone*>( theObject ) );
+        break;
+      }
+      case KIND_RIVER:
+      {
+        aRes = new HYDROData_River( *dynamic_cast<HYDROData_River*>( theObject ) );
+        break;
+      }
+      case KIND_STREAM:
+      {
+        aRes = new HYDROData_Stream( *dynamic_cast<HYDROData_Stream*>( theObject ) );
         break;
       }
       case KIND_CONFLUENCE:
@@ -87,14 +98,19 @@ class HYDROData_Document
         aRes = new HYDROData_Confluence( *dynamic_cast<HYDROData_Confluence*>( theObject ) );
         break;
       }
-      case KIND_IMMERSIBLE_ZONE:
+      case KIND_CHANNEL:
       {
-        aRes = new HYDROData_ImmersibleZone( *dynamic_cast<HYDROData_ImmersibleZone*>( theObject ) );
+        aRes = new HYDROData_Channel( *dynamic_cast<HYDROData_Channel*>( theObject ) );
         break;
       }
-      case KIND_POLYLINE:
+      case KIND_OBSTACLE:
       {
-        aRes = new HYDROData_Polyline3D( *dynamic_cast<HYDROData_Polyline3D*>( theObject ) );
+        aRes = new HYDROData_Obstacle( *dynamic_cast<HYDROData_Obstacle*>( theObject ) );
+        break;
+      }
+      case KIND_DIGUE:
+      {
+        aRes = new HYDROData_Digue( *dynamic_cast<HYDROData_Digue*>( theObject ) );
         break;
       }
       case KIND_PROFILE:
@@ -117,11 +133,6 @@ class HYDROData_Document
         aRes = new HYDROData_CalculationCase( *dynamic_cast<HYDROData_CalculationCase*>( theObject ) );
         break;
       }
-      case KIND_OBSTACLE:
-      {
-        aRes = new HYDROData_Obstacle( *dynamic_cast<HYDROData_Obstacle*>( theObject ) );
-        break;
-      }
       case KIND_REGION:
       {
         aRes = new HYDROData_Region( *dynamic_cast<HYDROData_Region*>( theObject ) );
@@ -132,19 +143,29 @@ class HYDROData_Document
         aRes = new HYDROData_Zone( *dynamic_cast<HYDROData_Zone*>( theObject ) );
         break;
       }
-      case KIND_DIGUE:
+      case KIND_SHAPES_GROUP:
       {
-        aRes = new HYDROData_Digue( *dynamic_cast<HYDROData_Digue*>( theObject ) );
+        aRes = new HYDROData_ShapesGroup( *dynamic_cast<HYDROData_ShapesGroup*>( theObject ) );
         break;
       }
-      case KIND_CHANNEL:
+      case KIND_SPLITTED_GROUP:
       {
-        aRes = new HYDROData_Channel( *dynamic_cast<HYDROData_Channel*>( theObject ) );
+        aRes = new HYDROData_SplittedShapesGroup( *dynamic_cast<HYDROData_SplittedShapesGroup*>( theObject ) );
         break;
       }
-      case KIND_STREAM:
+      case KIND_OBSTACLE_ALTITUDE:
       {
-        aRes = new HYDROData_Stream( *dynamic_cast<HYDROData_Stream*>( theObject ) );
+        aRes = new HYDROData_ObstacleAltitude( *dynamic_cast<HYDROData_ObstacleAltitude*>( theObject ) );
+        break;
+      }
+      case KIND_STREAM_ALTITUDE:
+      {
+        aRes = new HYDROData_StreamAltitude( *dynamic_cast<HYDROData_StreamAltitude*>( theObject ) );
+        break;
+      }
+      case KIND_STRICKLER_TABLE:
+      {
+        aRes = new HYDROData_StricklerTable( *dynamic_cast<HYDROData_StricklerTable*>( theObject ) );
         break;
       }
     }
@@ -260,6 +281,32 @@ public:
     
   %End
 
+  HYDROData_Entity FindObjectByName( const QString&   theName,
+                                     const ObjectKind theKind = KIND_UNKNOWN ) 
+  [Handle_HYDROData_Entity (const QString&, const ObjectKind)] ;
+  %MethodCode
+
+    Handle(HYDROData_Entity) anObject;
+    Py_BEGIN_ALLOW_THREADS
+    anObject =  sipSelfWasArg ? sipCpp->HYDROData_Document::FindObjectByName( *a0, a1 ) :
+                                sipCpp->FindObjectByName( *a0, a1 );
+    Py_END_ALLOW_THREADS
+
+    sipRes = createPointer( anObject );
+    
+  %End
+
+  HYDROData_SequenceOfObjects FindObjectsByNames( const QStringList& theNames,
+                                                  const ObjectKind   theKind = KIND_UNKNOWN );
+
+  void SetLocalCS( double, double );
+
+  //! Get the appropriate interpolator by the name.
+  HYDROData_IProfilesInterpolator* GetInterpolator( const TCollection_AsciiString& theName ) const;
+
+  //! Get list of registered interpolator names.
+  NCollection_Sequence<TCollection_AsciiString> GetInterpolatorNames() const;
+
 protected:
 
   //! Creates new document: private because "Document" method must be used instead of direct creation.