X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESH_I%2FSMESH_Group_i.hxx;h=2ed372adb13d1a151131acd9937598e457ea7e81;hb=d54614fd6455d07a217dd09544d35b624a39411b;hp=7e16691a6df8db23d2ae1013d1839b1ae001fa85;hpb=e4737e85f0da6d3f90fd08f6be1c2825195fe16f;p=modules%2Fsmesh.git diff --git a/src/SMESH_I/SMESH_Group_i.hxx b/src/SMESH_I/SMESH_Group_i.hxx index 7e16691a6..2ed372adb 100644 --- a/src/SMESH_I/SMESH_Group_i.hxx +++ b/src/SMESH_I/SMESH_Group_i.hxx @@ -16,7 +16,7 @@ // License along with this library; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // -// See http://www.salome-platform.org or email : webmaster.salome@opencascade.org +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // // // @@ -29,6 +29,8 @@ #ifndef SMESH_Group_i_HeaderFile #define SMESH_Group_i_HeaderFile +#include "SMESH.hxx" + #include #include CORBA_SERVER_HEADER(SMESH_Group) #include CORBA_SERVER_HEADER(SMESH_Mesh) @@ -37,13 +39,13 @@ #include "SALOME_GenericObj_i.hh" class SMESH_Mesh_i; -class ::SMESH_Group; +class SMESH_Group; class SMESHDS_GroupBase; // =========== // Group Base // =========== -class SMESH_GroupBase_i: +class SMESH_I_EXPORT SMESH_GroupBase_i: public virtual POA_SMESH::SMESH_GroupBase, public virtual SALOME::GenericObj_i { @@ -70,9 +72,15 @@ class SMESH_GroupBase_i: // Internal C++ interface int GetLocalID() const { return myLocalID; } SMESH_Mesh_i* GetMeshServant() const { return myMeshServant; } - ::SMESH_Group* GetSmeshGroup() const; + SMESH_Group* GetSmeshGroup() const; SMESHDS_GroupBase* GetGroupDS() const; + void SetColor(const SALOMEDS::Color& color); + SALOMEDS::Color GetColor(); + + void SetColorNumber(CORBA::Long color); + CORBA::Long GetColorNumber(); + private: SMESH_Mesh_i* myMeshServant; int myLocalID; @@ -82,10 +90,9 @@ private: // Group // ====== -class SMESH_Group_i: - public SMESH_GroupBase_i, +class SMESH_I_EXPORT SMESH_Group_i: public virtual POA_SMESH::SMESH_Group, - public virtual SALOME::GenericObj_i + public SMESH_GroupBase_i { public: SMESH_Group_i( PortableServer::POA_ptr thePOA, SMESH_Mesh_i* theMeshServant, const int theLocalID ); @@ -94,16 +101,18 @@ class SMESH_Group_i: void Clear(); CORBA::Long Add( const SMESH::long_array& theIDs ); CORBA::Long Remove( const SMESH::long_array& theIDs ); + + CORBA::Long AddByPredicate( SMESH::Predicate_ptr thePredicate ); + CORBA::Long RemoveByPredicate( SMESH::Predicate_ptr thePredicate ); }; // ========================= // Group linked to geometry // ========================= -class SMESH_GroupOnGeom_i: - public SMESH_GroupBase_i, +class SMESH_I_EXPORT SMESH_GroupOnGeom_i: public virtual POA_SMESH::SMESH_GroupOnGeom, - public virtual SALOME::GenericObj_i + public SMESH_GroupBase_i { public: SMESH_GroupOnGeom_i( PortableServer::POA_ptr thePOA, SMESH_Mesh_i* theMeshServant, const int theLocalID );