X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=idl%2FSMESH_Group.idl;h=4704e05a07285cab33fc5bf1742ccf150fad5eeb;hb=5f3fa85183d3982049a324bc7c24e996d2104eec;hp=9842df2f6f682ebace0a6870c513cfb17b73232e;hpb=c3bf92bd87b770fd81631a3853f7f5bb1ac6a4e8;p=modules%2Fsmesh.git diff --git a/idl/SMESH_Group.idl b/idl/SMESH_Group.idl index 9842df2f6..4704e05a0 100644 --- a/idl/SMESH_Group.idl +++ b/idl/SMESH_Group.idl @@ -14,7 +14,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 // // // @@ -22,20 +22,24 @@ // Author : Sergey ANIKIN, OCC // $Header$ + #ifndef _SMESH_GROUP_IDL_ #define _SMESH_GROUP_IDL_ #include "SALOME_Exception.idl" #include "SALOME_GenericObj.idl" +#include "SALOMEDS_Attributes.idl" #include "SMESH_Mesh.idl" module SMESH { + interface Predicate; + /*! - * SMESH_Group: interface of group object + * SMESH_Group: base interface of group object */ - interface SMESH_Group : SALOME::GenericObj + interface SMESH_GroupBase : SALOME::GenericObj, SMESH_IDSource { /*! * Sets group name @@ -62,21 +66,11 @@ module SMESH */ boolean IsEmpty(); - /*! - * Clears the group's contents - */ - void Clear(); - /*! * returns true if the group contains an element with ID == */ boolean Contains( in long elem_id ); - /*! - * Adds elements to the group - */ - long Add( in long_array elem_ids ); - /*! * Returns ID of an element at position */ @@ -88,15 +82,52 @@ module SMESH long_array GetListOfID(); /*! - * Removes elements from the group + * Returns the mesh object this group belongs to */ - long Remove( in long_array elem_ids ); + SMESH_Mesh GetMesh(); /*! - * Returns the mesh object this group belongs to + * Sets group color */ - SMESH_Mesh GetMesh(); + void SetColor(in SALOMEDS::Color theColor); + + /*! + * Returns group color + */ + SALOMEDS::Color GetColor(); }; + + /*! + * SMESH_Group: interface of group object + */ + interface SMESH_Group : SMESH_GroupBase + { + /*! + * Clears the group's contents + */ + void Clear(); + + /*! + * Adds elements to the group + */ + long Add( in long_array elem_ids ); + long AddByPredicate( in Predicate thePredicate ); + + /*! + * Removes elements from the group + */ + long Remove( in long_array elem_ids ); + long RemoveByPredicate( in Predicate thePredicate ); + + }; + /*! + * SMESH_Group: interface of group object linked to geometry + */ + interface SMESH_GroupOnGeom : SMESH_GroupBase + { + GEOM::GEOM_Object GetShape(); + }; + };