X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROPy%2FHYDROData_Entity.sip;h=9dc1676ed2653049d725949cfc06f4b36fcfdd28;hb=10a9948d19f358b0ccf850d362d8ad8173b3ea5f;hp=20ab25cbe19efdff4dff711db6001e8d42669fad;hpb=84f8b4a57d3cdad820bc1333a5066699cd1c8ae3;p=modules%2Fhydro.git diff --git a/src/HYDROPy/HYDROData_Entity.sip b/src/HYDROPy/HYDROData_Entity.sip index 20ab25cb..9dc1676e 100644 --- a/src/HYDROPy/HYDROData_Entity.sip +++ b/src/HYDROPy/HYDROData_Entity.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 @@ -20,7 +16,6 @@ // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // - %ExportedHeaderCode #include %End @@ -31,10 +26,24 @@ const ObjectKind KIND_UNKNOWN; const ObjectKind KIND_IMAGE; const ObjectKind KIND_POLYLINE; const ObjectKind KIND_BATHYMETRY; +const ObjectKind KIND_ALTITUDE; const ObjectKind KIND_IMMERSIBLE_ZONE; +const ObjectKind KIND_RIVER; +const ObjectKind KIND_STREAM; +const ObjectKind KIND_CONFLUENCE; +const ObjectKind KIND_CHANNEL; +const ObjectKind KIND_OBSTACLE; +const ObjectKind KIND_DIGUE; +const ObjectKind KIND_PROFILE; +const ObjectKind KIND_PROFILEUZ; +const ObjectKind KIND_POLYLINEXY; const ObjectKind KIND_CALCULATION; const ObjectKind KIND_ZONE; const ObjectKind KIND_REGION; +const ObjectKind KIND_SHAPES_GROUP; +const ObjectKind KIND_SPLITTED_GROUP; +const ObjectKind KIND_OBSTACLE_ALTITUDE; +const ObjectKind KIND_STRICKLER_TABLE; class HYDROData_Entity { @@ -51,27 +60,87 @@ class HYDROData_Entity break; case KIND_POLYLINE: - sipClass = sipClass_HYDROData_Polyline; + sipClass = sipClass_HYDROData_Polyline3D; break; case KIND_BATHYMETRY: sipClass = sipClass_HYDROData_Bathymetry; break; + case KIND_ALTITUDE: + sipClass = sipClass_HYDROData_AltitudeObject; + break; + case KIND_IMMERSIBLE_ZONE: sipClass = sipClass_HYDROData_ImmersibleZone; break; - + + case KIND_RIVER: + sipClass = sipClass_HYDROData_River; + break; + + case KIND_STREAM: + sipClass = sipClass_HYDROData_Stream; + break; + + case KIND_CONFLUENCE: + sipClass = sipClass_HYDROData_Confluence; + break; + + case KIND_CHANNEL: + sipClass = sipClass_HYDROData_Channel; + break; + + case KIND_OBSTACLE: + sipClass = sipClass_HYDROData_Obstacle; + break; + + case KIND_DIGUE: + sipClass = sipClass_HYDROData_Digue; + break; + + case KIND_PROFILE: + sipClass = sipClass_HYDROData_Profile; + break; + + case KIND_PROFILEUZ: + sipClass = sipClass_HYDROData_ProfileUZ; + break; + + case KIND_POLYLINEXY: + sipClass = sipClass_HYDROData_PolylineXY; + break; + case KIND_CALCULATION: - sipClass = sipClass_HYDROData_Calculation; + sipClass = sipClass_HYDROData_CalculationCase; + break; + + case KIND_ZONE: + sipClass = sipClass_HYDROData_Zone; break; case KIND_REGION: sipClass = sipClass_HYDROData_Region; break; - case KIND_ZONE: - sipClass = sipClass_HYDROData_Zone; + case KIND_SHAPES_GROUP: + sipClass = sipClass_HYDROData_ShapesGroup; + break; + + case KIND_SPLITTED_GROUP: + sipClass = sipClass_HYDROData_SplittedShapesGroup; + break; + + case KIND_STREAM_ALTITUDE: + sipClass = sipClass_HYDROData_StreamAltitude; + break; + + case KIND_OBSTACLE_ALTITUDE: + sipClass = sipClass_HYDROData_ObstacleAltitude; + break; + + case KIND_STRICKLER_TABLE: + sipClass = sipClass_HYDROData_StricklerTable; break; case KIND_UNKNOWN: @@ -89,24 +158,53 @@ public: /** * Returns the kind of this object. Must be redefined in all objects of known type. */ - const ObjectKind GetKind() const; + virtual const ObjectKind GetKind() const; /** * Returns the name of this object. */ - QString GetName() const; + virtual QString GetName() const; /** * Updates the name of this object. */ - void SetName(const QString& theName); + virtual void SetName(const QString& theName); /** * Updates object state. - * \param theIsForce force reupdating of data object */ - void Update(const bool theIsForce); + virtual void Update(); + /** + * Checks that object has 2D presentation. Base implementation returns false. + */ + virtual bool IsHas2dPrs() const; + + /** + * Returns data of object wrapped to QVariant. + * Base implementation returns null value. + */ + virtual QVariant GetDataVariant(); + + + /** + * Sets the "MustBeUpdated" flag: if object is depended on updated features. + * \param theFlag is true for objects that must be updated, false for up-to-date + */ + virtual void SetToUpdate( bool theFlag ); + + /** + * Returns the "MustBeUpdated" flag: is object data must be updated or not + * \returns false if object is up to date + */ + virtual bool IsMustBeUpdated() const; + + /** + * Returns flag indicating that object is updateble or not. + */ + virtual bool CanBeUpdated() const; + + /** * Checks is object exists in the data structure. * \returns true is object is not exists in the data model @@ -116,21 +214,64 @@ public: /** * Removes object from the data structure. */ - void Remove(); + virtual void Remove(); - /** - * Returns unique integer identifier of the object (may be used for ordering of objects) - */ - int ID() const; /** * Copies all properties of this to the destinated object. * Objects must be the same type. * \param theDestination initialized object (from any document) - target of copying */ - /* - void CopyTo( HYDROData_Entity theDestination ) const; - */ + void CopyTo( HYDROData_Entity theDestination ) const [void ( const Handle_HYDROData_Entity& )]; + %MethodCode + Handle(HYDROData_Entity) aCopyTo = createHandle( a0 ); + if ( !aCopyTo.IsNull() ) + { + Py_BEGIN_ALLOW_THREADS + sipSelfWasArg ? sipCpp->HYDROData_Entity::CopyTo( aCopyTo ): + sipCpp->CopyTo( aCopyTo ); + Py_END_ALLOW_THREADS + } + %End + + /** + * Returns father object. For object created under root document label + * this method always return NULL object. + */ + HYDROData_Entity GetFatherObject() const [Handle_HYDROData_Entity ()]; + %MethodCode + Handle(HYDROData_Entity) aFather; + + Py_BEGIN_ALLOW_THREADS + aFather = sipSelfWasArg ? sipCpp->HYDROData_Entity::GetFatherObject() : + sipCpp->GetFatherObject(); + Py_END_ALLOW_THREADS + + sipRes = createPointer( aFather ); + %End + + /** + * Returns the list of all reference objects of this object. + * Base implementation always return empty list. + */ + virtual HYDROData_SequenceOfObjects GetAllReferenceObjects() const; + + + /** + * Returns the z-level for object presentation, -1 if no z-level. + */ + virtual bool GetZLevel( int& theLevel ) const [Standard_Boolean ( Standard_Integer& )]; + + /** + * Set the z-level for object presentation. + */ + virtual void SetZLevel( const int& theLevel ) [void ( const Standard_Integer& )]; + + /** + * Remove the z-level of object presentation. + */ + virtual void RemoveZLevel(); + protected: