X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROData%2FHYDROData_Region.h;h=cfaf931f7d6a494814d26c2ef361d7c007f93b11;hb=deed826b2d6c39ba2ed410108cdf54d64cded321;hp=5a331837cceadc7ada01c70acf718112a62f3445;hpb=d5985aa1399ef1c21f3d9eafe4414afa1d07fc14;p=modules%2Fhydro.git diff --git a/src/HYDROData/HYDROData_Region.h b/src/HYDROData/HYDROData_Region.h index 5a331837..cfaf931f 100644 --- a/src/HYDROData/HYDROData_Region.h +++ b/src/HYDROData/HYDROData_Region.h @@ -9,6 +9,8 @@ DEFINE_STANDARD_HANDLE(HYDROData_Region, HYDROData_Entity) class Handle(HYDROData_Zone); +class TopoDS_Shape; + /**\class HYDROData_Region * \brief Regions are groups (lists) of zones, they can include one or several zones. */ @@ -23,18 +25,10 @@ protected: enum DataTag { DataTag_First = HYDROData_Entity::DataTag_First + 100, ///< first tag, to reserve + DataTag_ChildZone, ///< child zones DataTag_Zone, ///< reference zones }; - /** - * Enumeration of tags corresponding to the child sub-objects of object. - */ - enum ChildTag - { - ChildTag_First = HYDROData_Entity::ChildTag_First + 100, ///< first tag, to reserve - ChildTag_Zone ///< child zones - }; - public: DEFINE_STANDARD_RTTI(HYDROData_Region); @@ -49,6 +43,13 @@ public: HYDRODATA_EXPORT virtual QStringList DumpToPython( MapOfTreatedObjects& theTreatedObjects ) const; + /** + * Removes object and it child sub-objects from the data structure. + * Reimplemented to update names of regions in father calculation. + */ + HYDRODATA_EXPORT virtual void Remove(); + + /** * Add new one reference zone for region. * The label of theZone is changed in case if old parent is not this region. @@ -70,6 +71,14 @@ public: */ HYDRODATA_EXPORT virtual void RemoveZones(); + /** + * \brief Returns the shape of the region. + * Shape of the region could be: + * - a face which is the union of the region zones faces + * - a shell if the zones faces can't be united into one face + * \return shape as TopoDS_Shape + */ + HYDRODATA_EXPORT virtual TopoDS_Shape GetShape() const; protected: @@ -81,19 +90,19 @@ protected: protected: - friend class HYDROData_Calculation; + friend class HYDROData_CalculationCase; friend class HYDROData_Iterator; /** * Creates new object in the internal data structure. Use higher level objects * to create objects with real content. */ - HYDROData_Region(); + HYDRODATA_EXPORT HYDROData_Region(); /** * Destructs properties of the object and object itself, removes it from the document. */ - ~HYDROData_Region(); + HYDRODATA_EXPORT ~HYDROData_Region(); }; #endif