#ifndef HYDROData_Region_HeaderFile
#define HYDROData_Region_HeaderFile
-#include "HYDROData_Entity.h"
+#include "HYDROData_ShapesGroup.h"
DEFINE_STANDARD_HANDLE(HYDROData_Region, HYDROData_Entity)
class Handle(HYDROData_Zone);
-
+class Handle(HYDROData_Document);
class TopoDS_Shape;
+class TopoDS_Face;
+class QStringList;
/**\class HYDROData_Region
* \brief Regions are groups (lists) of zones, they can include one or several zones.
*/
HYDRODATA_EXPORT virtual QStringList DumpToPython( MapOfTreatedObjects& theTreatedObjects ) const;
+ /**
+ * Returns flag indicating that object is updateble or not.
+ */
+ HYDRODATA_EXPORT virtual bool CanBeUpdated() const;
+
/**
* Removes object and it child sub-objects from the data structure.
* - 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;
+ HYDRODATA_EXPORT virtual TopoDS_Shape GetShape( HYDROData_ShapesGroup::SeqOfGroupsDefs* theSeqOfGroups = 0 ) const;
protected:
* Create new one reference zone for region on child label.
* The new zone is added into the list of reference zones.
*/
- HYDRODATA_EXPORT virtual Handle(HYDROData_Zone) addNewZone();
+ HYDRODATA_EXPORT virtual Handle(HYDROData_Zone) addNewZone( const Handle(HYDROData_Document)& theDoc,
+ const QString& thePrefix,
+ const TopoDS_Face& theFace,
+ const QStringList& theRefObjects );
protected: