// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-
%ExportedHeaderCode
#include <HYDROData_Object.h>
%End
-typedef int ObjectKind;
-
-class HYDROData_Object
+class HYDROData_Object : HYDROData_Entity /Abstract/
{
%TypeHeaderCode
#include <HYDROData_Object.h>
%End
%ConvertToSubClassCode
- // HYDROData_Object sub-classes provide a unique kind ID.
- switch ( sipCpp->GetKind() )
+ if ( !Handle(HYDROData_ArtificialObject)::DownCast( sipCpp ).IsNull() )
+ sipClass = sipClass_HYDROData_ArtificialObject;
+ else if ( !Handle(HYDROData_NaturalObject)::DownCast( sipCpp ).IsNull() )
+ sipClass = sipClass_HYDROData_NaturalObject;
+ else
{
- case KIND_BATHYMETRY:
- sipClass = sipClass_HYDROData_Bathymetry;
- break;
-
- case KIND_UNKNOWN:
- sipClass = sipClass_HYDROData_Object;
- break;
-
- default:
- // We don't recognise the type.
- sipClass = NULL;
+ // HYDROData_Object sub-classes provide a unique kind ID.
+ switch ( sipCpp->GetKind() )
+ {
+ case KIND_UNKNOWN:
+ sipClass = sipClass_HYDROData_Object;
+ break;
+
+ default:
+ // We don't recognise the type.
+ sipClass = NULL;
+ }
}
%End
public:
- /**
- * Visual state data.
- */
- struct VisualState
- {
- bool Visibility;
- double Transparency;
- double ZValue;
-
- VisualState();
- };
-
- typedef QMap < int, HYDROData_Object::VisualState > ViewId2VisualStateMap;
- typedef QMapIterator< int, HYDROData_Object::VisualState > ViewId2VisualStateMapIterator;
-
-public:
-
- /**
- * Returns the kind of this object. Must be redefined in all objects of known type.
- */
- const ObjectKind GetKind() const;
-
- /**
- * Returns the name of this object.
- */
- QString GetName() const;
-
- /**
- * Updates the name of this object.
- */
- void SetName(const QString& theName);
-
- /**
- * Returns the object visibility state for the view with specified id.
- * \param theViewId view id
- * \returns visibility state
- */
- bool IsVisible( const int theViewId ) const;
-
- /**
- * Sets the object visibility state for the view with specified id.
- * \param theViewId view id
- * \param theVal visibility state
- */
- void SetVisible( const int theViewId,
- const bool theVal );
-
- /**
- * Checks is object exists in the data structure.
- * \returns true is object is not exists in the data model
- */
- bool IsRemoved() const;
- /**
- * Removes object from the data structure.
- */
- void Remove();
-
- /**
- * Returns unique integer identifier of the object (may be used for ordering of objects)
- */
- int ID() const;
-
- /**
- * Copies all properties of this to the destinated object.
- * Objects must be the same type.
- * \param theDestination initialized object (from any document) - target of copying
- */
- /*
- void CopyTo( HYDROData_Object theDestination ) const;
- */
protected: