Salome HOME
Color Number (Color Group) parameter is returned for compatibility
[modules/smesh.git] / src / SMESH_I / SMESH_Group_i.hxx
index 48fb1c036f5627e1b6e51e8a7484636157c65656..2ed372adb13d1a151131acd9937598e457ea7e81 100644 (file)
@@ -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 <SALOMEconfig.h>
 #include CORBA_SERVER_HEADER(SMESH_Group)
 #include CORBA_SERVER_HEADER(SMESH_Mesh)
 #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,7 +90,7 @@ private:
 // Group
 // ======
 
-class SMESH_Group_i:
+class SMESH_I_EXPORT SMESH_Group_i:
   public virtual POA_SMESH::SMESH_Group,
   public SMESH_GroupBase_i
 {
@@ -93,13 +101,16 @@ 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:
+class SMESH_I_EXPORT SMESH_GroupOnGeom_i:
   public virtual POA_SMESH::SMESH_GroupOnGeom,
   public SMESH_GroupBase_i
 {