Salome HOME
2cc3f0e139c2b67b13f77bc59d59ac970a6e22c0
[modules/hydro.git] / src / HYDROData / HYDROData_Region.h
1
2 #ifndef HYDROData_Region_HeaderFile
3 #define HYDROData_Region_HeaderFile
4
5 #include <HYDROData_Domain.h>
6
7
8 DEFINE_STANDARD_HANDLE(HYDROData_Region, HYDROData_Domain)
9
10
11 /**\class HYDROData_Domain
12  * \brief Class that stores/retreives information about the 2d surface.
13  */
14 class HYDROData_Region : public HYDROData_Domain
15 {
16
17 protected:
18   /**
19    * Enumeration of tags corresponding to the persistent object parameters.
20    */
21   enum DataTag
22   {
23     DataTag_First = HYDROData_Domain::DataTag_First + 100, ///< first tag, to reserve
24   };
25
26 public:
27   DEFINE_STANDARD_RTTI(HYDROData_Region);
28
29   /**
30    * Returns the kind of this object. Must be redefined in all objects of known type.
31    */
32   HYDRODATA_EXPORT virtual const ObjectKind GetKind() const { return KIND_REGION; }
33
34 protected:
35
36   friend class HYDROData_Iterator;
37
38   /**
39    * Creates new object in the internal data structure. Use higher level objects 
40    * to create objects with real content.
41    */
42   HYDROData_Region();
43
44   /**
45    * Destructs properties of the object and object itself, removes it from the document.
46    */
47   ~HYDROData_Region();
48
49   /**
50    * Returns id for creation of object in python scripting.
51    */
52   virtual QString getPythonKindId() const;
53 };
54
55 #endif