X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROPy%2FHYDROData_Entity.sip;h=2d2ae58e21dd23e12c845ca995c891ad5ce5ae30;hb=7a4d799258d85afe105c29c1c25ac2789b61fe84;hp=3bba4c53cb946bcc08eebbc7f189e6febd537534;hpb=d84fadb6fba0d9ef3926995eab878175cc24e291;p=modules%2Fhydro.git diff --git a/src/HYDROPy/HYDROData_Entity.sip b/src/HYDROPy/HYDROData_Entity.sip index 3bba4c53..2d2ae58e 100644 --- a/src/HYDROPy/HYDROData_Entity.sip +++ b/src/HYDROPy/HYDROData_Entity.sip @@ -55,6 +55,10 @@ class HYDROData_Entity // HYDROData_Entity sub-classes provide a unique kind ID. switch ( sipCpp->GetKind() ) { + case KIND_ALTITUDE: + sipClass = sipClass_HYDROData_AltitudeObject; + break; + case KIND_IMAGE: sipClass = sipClass_HYDROData_Image; break; @@ -63,26 +67,66 @@ class HYDROData_Entity sipClass = sipClass_HYDROData_PolylineXY; break; + case KIND_PROFILEUZ: + sipClass = sipClass_HYDROData_ProfileUZ; + break; + case KIND_BATHYMETRY: sipClass = sipClass_HYDROData_Bathymetry; break; + case KIND_OBSTACLE_ALTITUDE: + sipClass = sipClass_HYDROData_ObstacleAltitude; + break; + case KIND_IMMERSIBLE_ZONE: sipClass = sipClass_HYDROData_ImmersibleZone; break; + case KIND_DIGUE: + sipClass = sipClass_HYDROData_Digue; + break; + + case KIND_CHANNEL: + sipClass = sipClass_HYDROData_Channel; + break; + case KIND_CALCULATION: sipClass = sipClass_HYDROData_CalculationCase; break; + case KIND_OBSTACLE: + sipClass = sipClass_HYDROData_Obstacle; + break; + + case KIND_POLYLINE: + sipClass = sipClass_HYDROData_Polyline3D; + break; + + case KIND_PROFILE: + sipClass = sipClass_HYDROData_Profile; + break; + case KIND_REGION: sipClass = sipClass_HYDROData_Region; break; + case KIND_STREAM: + sipClass = sipClass_HYDROData_Stream; + break; + case KIND_ZONE: sipClass = sipClass_HYDROData_Zone; break; + case KIND_SHAPES_GROUP: + sipClass = sipClass_HYDROData_ShapesGroup; + break; + + case KIND_SPLITTED_GROUP: + sipClass = sipClass_HYDROData_SplittedShapesGroup; + break; + case KIND_UNKNOWN: sipClass = sipClass_HYDROData_Entity; break; @@ -98,23 +142,48 @@ 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. */ - void Update(); + virtual void Update(); + + /** + * 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 @@ -124,21 +193,47 @@ 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; protected: