2 #ifndef HYDROData_StreamAltitude_HeaderFile
3 #define HYDROData_StreamAltitude_HeaderFile
6 #include "HYDROData_IAltitudeObject.h"
8 class Handle(HYDROData_Profile);
10 DEFINE_STANDARD_HANDLE(HYDROData_StreamAltitude, HYDROData_IAltitudeObject)
13 /**\class HYDROData_StreamAltitude
14 * \brief Class that stores/retreives information about the stream altitude.
17 class HYDROData_StreamAltitude : public HYDROData_IAltitudeObject
22 * Enumeration of tags corresponding to the persistent object parameters.
26 DataTag_First = HYDROData_IAltitudeObject::DataTag_First + 100, ///< first tag, to reserve
31 DEFINE_STANDARD_RTTI(HYDROData_StreamAltitude);
34 * Returns the kind of this object.
36 HYDRODATA_EXPORT virtual const ObjectKind GetKind() const { return KIND_STREAM_ALTITUDE; }
40 * Dump Altitude object to Python script representation.
42 HYDRODATA_EXPORT virtual QStringList DumpToPython( MapOfTreatedObjects& theTreatedObjects ) const;
46 // Public methods to work with altitudes.
49 * Returns altitude for given point.
50 * \param thePoint the point to examine
51 * \return altitude value
53 HYDRODATA_EXPORT virtual double GetAltitudeForPoint( const gp_XY& thePoint ) const;
57 bool getBoundaryProfilesForPoint( const gp_XY& thePoint,
58 Handle(HYDROData_Profile)& theLeftProfile,
59 Handle(HYDROData_Profile)& theRightProfile ) const;
63 friend class HYDROData_Iterator;
66 * Creates new object in the internal data structure. Use higher level objects
67 * to create objects with real content.
69 HYDRODATA_EXPORT HYDROData_StreamAltitude();
72 * Destructs properties of the object and object itself, removes it from the document.
74 HYDRODATA_EXPORT ~HYDROData_StreamAltitude();