X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=idl%2FSMESH_Group.idl;h=8730c1a78be8b040c24a904e678b0000f3af0221;hp=399d701d9a40f61736ef49729932fabfd2c5b810;hb=f016bdf914220827ec8f9a7048bc78fc3fb8c299;hpb=5d68554076bbca0e1e95fb0db215a6c2b84b6c54 diff --git a/idl/SMESH_Group.idl b/idl/SMESH_Group.idl index 399d701d9..8730c1a78 100644 --- a/idl/SMESH_Group.idl +++ b/idl/SMESH_Group.idl @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2021 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -32,6 +32,7 @@ #include "SALOMEDS_Attributes.idl" #include "SMESH_Mesh.idl" +#include "SMESH_smIdType.idl" module SMESH { @@ -41,7 +42,7 @@ module SMESH /*! * SMESH_Group: base interface of group object */ - interface SMESH_GroupBase : SALOME::GenericObj, SMESH_IDSource + interface SMESH_GroupBase : SMESH_IDSource { /*! * Sets group name @@ -61,7 +62,7 @@ module SMESH /*! * Returns the number of elements in the group */ - long Size(); + smIdType Size(); /*! * Returns true if the group does not contain any elements @@ -71,29 +72,29 @@ module SMESH /*! * returns true if the group contains an element with ID == */ - boolean Contains( in long elem_id ); + boolean Contains( in smIdType elem_id ); /*! - * Returns ID of an element at position + * Returns ID of an element at position counted from 1 */ - long GetID( in long elem_index ); + smIdType GetID( in smIdType elem_index ); /*! * Returns a sequence of all element IDs in the group */ - long_array GetListOfID(); + smIdType_array GetListOfID(); /*! * Get the number of nodes of cells included to the group * For a nodal group returns the same value as Size() function */ - long GetNumberOfNodes(); + smIdType GetNumberOfNodes(); /*! * Get IDs of nodes of cells included to the group * For a nodal group returns result of GetListOfID() function */ - long_array GetNodeIDs(); + smIdType_array GetNodeIDs(); /*! * Return true if GetNumberOfNodes() won't take a long time for computation @@ -121,7 +122,13 @@ module SMESH * (corresponds to the "hue" parameter of the color - must be in range [0, 360]) */ long GetColorNumber(); - }; + + /*! + * Returns \c true if \c this group depends on the \a other via + * FT_BelongToMeshGroup predicate or vice versa + */ + boolean IsInDependency( in SMESH_GroupBase other ); + }; /*! * SMESH_Group: interface of a standalone group object @@ -136,24 +143,24 @@ module SMESH /*! * Adds elements or nodes with specified identifiers to the group */ - long Add( in long_array elem_ids ); + smIdType Add( in smIdType_array elem_ids ); /*! * Adds elements or nodes that match specified predicate to the group */ - long AddByPredicate( in Predicate thePredicate ); + smIdType AddByPredicate( in Predicate thePredicate ); /*! * Add all elements or nodes from the specified source to the group */ - long AddFrom( in SMESH_IDSource theSource ); + smIdType AddFrom( in SMESH_IDSource theSource ); /*! * Removes elements or nodes with specified identifiers from the group */ - long Remove( in long_array elem_ids ); + smIdType Remove( in smIdType_array elem_ids ); /*! * Removes elements or nodes that match specified predicate from the group */ - long RemoveByPredicate( in Predicate thePredicate ); + smIdType RemoveByPredicate( in Predicate thePredicate ); }; @@ -170,8 +177,11 @@ module SMESH */ interface SMESH_GroupOnFilter : SMESH_GroupBase { - void SetFilter( in Filter theFilter); + void SetFilter( in Filter theFilter) raises (SALOME::SALOME_Exception); Filter GetFilter(); + + //! @return True if group contents is computed + boolean IsUpToDate(); }; };