Salome HOME
Fix to avoid dependence of mesh on itself (it leaded to cycle in 'SetRemovedFromStudy').
[modules/smesh.git] / src / SMESH_I / SMESH_Filter_i.hxx
index d874819a807e01cc112bcf1c1a96ff30e4b3e98b..3353d6e01ad8ee49a02d1dd8cbd0030efc5de262 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2012  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2013  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
@@ -18,6 +18,7 @@
 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
 
 //  SMESH SMESH_I : idl implementation based on 'SMESH' unit's calsses
 //  File   : SMESH_Filter_i.hxx
@@ -329,7 +330,6 @@ namespace SMESH
     Controls::Length2DPtr          myLength2DPtr;
   };
   
-  
   /*
     Class       : MultiConnection_i
     Description : Functor for calculating number of faces conneted to the edge
@@ -450,7 +450,7 @@ namespace SMESH
     OverConstrainedFace_i();
     FunctorType                     GetFunctorType();
   };
-  
+
   /*
     Class       : BelongToGeom_i
     Description : Predicate for selection on geometrical support
@@ -763,6 +763,25 @@ namespace SMESH
   private:
     Controls::ElemGeomTypePtr myElemGeomTypePtr;
   };
+
+  /*
+    Class       : ElemEntityType_i
+    Description : Functor for check element entity type
+  */
+  class SMESH_I_EXPORT ElemEntityType_i: public virtual POA_SMESH::ElemEntityType,
+                                         public virtual Predicate_i
+  {
+  public:
+    ElemEntityType_i();
+    FunctorType             GetFunctorType();
+
+    void                    SetElementType ( ElementType  theType );
+    void                    SetEntityType( EntityType theEntityType );
+    EntityType              GetEntityType() const;
+
+  private:
+    Controls::ElemEntityTypePtr myElemEntityTypePtr;
+  };
   
   /*
     Class       : CoplanarFaces_i
@@ -1095,6 +1114,7 @@ namespace SMESH
     LinearOrQuadratic_ptr     CreateLinearOrQuadratic();
     GroupColor_ptr            CreateGroupColor();
     ElemGeomType_ptr          CreateElemGeomType();
+    ElemEntityType_ptr        CreateElemEntityType();
     CoplanarFaces_ptr         CreateCoplanarFaces();
 
     LessThan_ptr              CreateLessThan();