1 #ifndef SALOMEAPP_DATAOBJECT_H
2 #define SALOMEAPP_DATAOBJECT_H
6 #include "CAM_DataObject.h"
7 #include "CAM_RootObject.h"
9 #include "SALOMEDSClient.hxx"
11 class SalomeApp_Study;
13 class SALOMEAPP_EXPORT SalomeApp_DataObject : public virtual CAM_DataObject
18 enum { CT_Value, CT_Entry, CT_IOR, CT_RefEntry };
21 SalomeApp_DataObject( SUIT_DataObject* = 0 );
22 SalomeApp_DataObject( const _PTR(SObject)&, SUIT_DataObject* = 0 );
23 virtual ~SalomeApp_DataObject();
25 virtual QString name() const;
26 virtual QPixmap icon() const;
27 virtual QString toolTip() const;
29 virtual QString text( const int ) const;
30 virtual QColor color( const ColorRole ) const;
32 virtual SUIT_DataObjectKey* key() const;
33 virtual QString entry() const;
35 virtual _PTR(SObject) object() const; // location of corresponding SALOMEDS::SObject
37 bool isReference() const;
38 _PTR(SObject) referencedObject() const;
40 SUIT_DataObject* componentObject() const;
41 QString componentDataType() const; // GEOM, SMESH, VISU, etc.
44 QString ior( const _PTR(SObject)& ) const;
45 QString entry( const _PTR(SObject)& ) const;
46 QString value( const _PTR(SObject)& ) const;
49 _PTR(SObject) myObject;
53 * SalomeApp_ModuleObject - class for optimized access to DataModel from
54 * SalomeApp_DataObject instances - see also CAM_RootObject.h
57 class SALOMEAPP_EXPORT SalomeApp_ModuleObject : public SalomeApp_DataObject,
61 SalomeApp_ModuleObject( SUIT_DataObject* = 0 );
62 SalomeApp_ModuleObject( const _PTR(SObject)&, SUIT_DataObject* = 0 );
63 SalomeApp_ModuleObject( CAM_DataModel*, const _PTR(SObject)&, SUIT_DataObject* = 0 );
64 virtual ~SalomeApp_ModuleObject();