2 #ifndef HYDROData_HYDROData_Calculation
3 #define HYDROData_HYDROData_Calculation
5 #include <HYDROData_Object.h>
12 class Handle(HYDROData_Polyline);
14 DEFINE_STANDARD_HANDLE(HYDROData_Calculation, HYDROData_Object)
17 /**\class HYDROData_Calculation
18 * \brief Class that stores/retreives information about the Calculation case.
20 * Calculation case is defined by selection of Geometry objects with or without
\93Zone of water
\94.
22 class HYDROData_Calculation : public HYDROData_Object
28 * Enumeration of tags corresponding to the persistent object parameters.
32 DataTag_First = HYDROData_Object::DataTag_First + 100, ///< first tag, to reserve
33 DataTag_BoundaryPolyline, ///< reference boundary polyline
38 DEFINE_STANDARD_RTTI(HYDROData_Calculation);
41 * Returns the kind of this object. Must be redefined in all objects of known type.
43 HYDRODATA_EXPORT virtual const ObjectKind GetKind() const { return KIND_CALCULATION; }
47 * Dump Calculation object to Python script representation.
49 HYDRODATA_EXPORT virtual QStringList DumpToPython( MapOfTreatedObjects& theTreatedObjects ) const;
52 // Public methods to work with Calculation
54 HYDRODATA_EXPORT virtual void SetBoundaryPolyline( const Handle(HYDROData_Polyline)& thePolyline );
56 HYDRODATA_EXPORT virtual Handle(HYDROData_Polyline) GetBoundaryPolyline() const;
60 friend class HYDROData_Iterator;
63 * Creates new object in the internal data structure. Use higher level objects
64 * to create objects with real content.
66 HYDROData_Calculation();
69 * Destructs properties of the object and object itself, removes it from the document.
71 ~HYDROData_Calculation();