X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROPy%2FHYDROData_Document.sip;h=882fe167ab7cd1444c472ad7bcc15896a8810877;hb=58bb6b7459bebeeb089c9ed486c4683a8bae7288;hp=e79e16d57bf4a30e85c59e058acede435534ee7b;hpb=8409849256ec79e1fe34fa460d46f0a91e646606;p=modules%2Fhydro.git diff --git a/src/HYDROPy/HYDROData_Document.sip b/src/HYDROPy/HYDROData_Document.sip index e79e16d5..882fe167 100644 --- a/src/HYDROPy/HYDROData_Document.sip +++ b/src/HYDROPy/HYDROData_Document.sip @@ -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 @@ -25,9 +21,9 @@ %End %ModuleHeaderCode -HYDROData_Object* copyObject( HYDROData_Object* theObject ); -Handle(HYDROData_Object) createHandle( HYDROData_Object* theObject ); -HYDROData_Object* createPointer( const Handle(HYDROData_Object)& theObject ); +HYDROData_Entity* copyObject( HYDROData_Entity* theObject ); +Handle(HYDROData_Entity) createHandle( HYDROData_Entity* theObject ); +HYDROData_Entity* createPointer( const Handle(HYDROData_Entity)& theObject ); %End enum Data_DocError { @@ -39,14 +35,15 @@ enum Data_DocError { DocError_UnknownProblem ///< problem has unknown nature }; -class HYDROData_Document +class HYDROData_Document { %TypeHeaderCode #include %End %ConvertToSubClassCode - if ( !Handle(HYDROData_Document)::DownCast( sipCpp ).IsNull() ) + HYDROData_Document* aDoc = dynamic_cast< HYDROData_Document*>( sipCpp ); + if ( aDoc ) sipClass = sipClass_HYDROData_Document; else sipClass = NULL; @@ -54,9 +51,9 @@ class HYDROData_Document %TypeCode - HYDROData_Object* copyObject( HYDROData_Object* theObject ) + HYDROData_Entity* copyObject( HYDROData_Entity* theObject ) { - HYDROData_Object* aRes = NULL; + HYDROData_Entity* aRes = NULL; if ( theObject == NULL ) return aRes; @@ -69,7 +66,7 @@ class HYDROData_Document } case KIND_POLYLINE: { - aRes = new HYDROData_Polyline( *dynamic_cast( theObject ) ); + aRes = new HYDROData_Polyline3D( *dynamic_cast( theObject ) ); break; } case KIND_BATHYMETRY: @@ -77,9 +74,69 @@ class HYDROData_Document aRes = new HYDROData_Bathymetry( *dynamic_cast( theObject ) ); break; } + case KIND_ALTITUDE: + { + aRes = new HYDROData_AltitudeObject( *dynamic_cast( theObject ) ); + break; + } + case KIND_IMMERSIBLE_ZONE: + { + aRes = new HYDROData_ImmersibleZone( *dynamic_cast( theObject ) ); + break; + } + case KIND_RIVER: + { + aRes = new HYDROData_River( *dynamic_cast( theObject ) ); + break; + } + case KIND_STREAM: + { + aRes = new HYDROData_Stream( *dynamic_cast( theObject ) ); + break; + } + case KIND_CONFLUENCE: + { + aRes = new HYDROData_Confluence( *dynamic_cast( theObject ) ); + break; + } + case KIND_CHANNEL: + { + aRes = new HYDROData_Channel( *dynamic_cast( theObject ) ); + break; + } + case KIND_OBSTACLE: + { + aRes = new HYDROData_Obstacle( *dynamic_cast( theObject ) ); + break; + } + case KIND_DIGUE: + { + aRes = new HYDROData_Digue( *dynamic_cast( theObject ) ); + break; + } + case KIND_PROFILE: + { + aRes = new HYDROData_Profile( *dynamic_cast( theObject ) ); + break; + } + case KIND_PROFILEUZ: + { + aRes = new HYDROData_ProfileUZ( *dynamic_cast( theObject ) ); + break; + } + case KIND_POLYLINEXY: + { + aRes = new HYDROData_PolylineXY( *dynamic_cast( theObject ) ); + break; + } case KIND_CALCULATION: { - aRes = new HYDROData_Calculation( *dynamic_cast( theObject ) ); + aRes = new HYDROData_CalculationCase( *dynamic_cast( theObject ) ); + break; + } + case KIND_REGION: + { + aRes = new HYDROData_Region( *dynamic_cast( theObject ) ); break; } case KIND_ZONE: @@ -87,9 +144,34 @@ class HYDROData_Document aRes = new HYDROData_Zone( *dynamic_cast( theObject ) ); break; } - case KIND_REGION: + case KIND_SHAPES_GROUP: { - aRes = new HYDROData_Region( *dynamic_cast( theObject ) ); + aRes = new HYDROData_ShapesGroup( *dynamic_cast( theObject ) ); + break; + } + case KIND_SPLIT_GROUP: + { + aRes = new HYDROData_SplitShapesGroup( *dynamic_cast( theObject ) ); + break; + } + case KIND_OBSTACLE_ALTITUDE: + { + aRes = new HYDROData_ObstacleAltitude( *dynamic_cast( theObject ) ); + break; + } + case KIND_STREAM_ALTITUDE: + { + aRes = new HYDROData_StreamAltitude( *dynamic_cast( theObject ) ); + break; + } + case KIND_STRICKLER_TABLE: + { + aRes = new HYDROData_StricklerTable( *dynamic_cast( theObject ) ); + break; + } + case KIND_LAND_COVER_MAP: + { + aRes = new HYDROData_LandCoverMap( *dynamic_cast( theObject ) ); break; } } @@ -97,15 +179,15 @@ class HYDROData_Document return aRes; } - Handle(HYDROData_Object) createHandle( HYDROData_Object* theObject ) + Handle(HYDROData_Entity) createHandle( HYDROData_Entity* theObject ) { - Handle(HYDROData_Object) aRes = copyObject( theObject ); + Handle(HYDROData_Entity) aRes = copyObject( theObject ); return aRes; } - HYDROData_Object* createPointer( const Handle(HYDROData_Object)& theObject ) + HYDROData_Entity* createPointer( const Handle(HYDROData_Entity)& theObject ) { - HYDROData_Object* aRes = NULL; + HYDROData_Entity* aRes = NULL; if ( !theObject.IsNull() ) aRes = copyObject( theObject.operator->() ); @@ -118,7 +200,7 @@ class HYDROData_Document public: //! Returns the existing document or creates new if it is not exist - static HYDROData_Document Document( const int theStudyID ) [Handle_HYDROData_Document (const int)] ; + static HYDROData_Document Document( const int theStudyID ) [opencascade::handle (const int)] ; %MethodCode Handle(HYDROData_Document) aDocument; @@ -192,10 +274,10 @@ public: //! Creates and locates in the document a new object //! \param theKind kind of the created object, can not be UNKNOWN //! \returns the created object - HYDROData_Object CreateObject( const ObjectKind theKind ) [Handle_HYDROData_Object (const ObjectKind)] ; + HYDROData_Entity CreateObject( const ObjectKind theKind ) [opencascade::handle (const ObjectKind)] ; %MethodCode - Handle(HYDROData_Object) anObject; + Handle(HYDROData_Entity) anObject; Py_BEGIN_ALLOW_THREADS anObject = sipSelfWasArg ? sipCpp->HYDROData_Document::CreateObject( a0 ) : sipCpp->CreateObject( a0 ); @@ -205,6 +287,32 @@ public: %End + HYDROData_Entity FindObjectByName( const QString& theName, + const ObjectKind theKind = KIND_UNKNOWN ) + [opencascade::handle (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 GetInterpolatorNames() const; + protected: //! Creates new document: private because "Document" method must be used instead of direct creation.