Salome HOME
PAL16202 (Propagation 1D on edges group)
authoreap <eap@opencascade.com>
Wed, 7 Nov 2007 09:36:09 +0000 (09:36 +0000)
committereap <eap@opencascade.com>
Wed, 7 Nov 2007 09:36:09 +0000 (09:36 +0000)
+  SMESHDS_SubMeshIteratorPtr GetSubMeshIterator() const;

src/SMESHDS/SMESHDS_SubMesh.cxx
src/SMESHDS/SMESHDS_SubMesh.hxx

index 262649e86c6d6bc459f9d5efe316b065bf13c6ac..7cc19700d64fc320431415a1b4a7a7097be241c9 100644 (file)
@@ -29,6 +29,7 @@
 #include "SMESHDS_SubMesh.hxx"
 
 #include "utilities.h"
+#include "SMDS_SetIterator.hxx"
 
 using namespace std;
 
@@ -297,3 +298,16 @@ bool SMESHDS_SubMesh::ContainsSubMesh( const SMESHDS_SubMesh* theSubMesh ) const
 {
   return mySubMeshes.find( theSubMesh ) != mySubMeshes.end();
 }
+
+//=======================================================================
+//function : GetSubMeshIterator
+//purpose  : 
+//=======================================================================
+
+SMESHDS_SubMeshIteratorPtr SMESHDS_SubMesh::GetSubMeshIterator() const
+{
+  typedef set<const SMESHDS_SubMesh*>::const_iterator TIterator;
+  return SMESHDS_SubMeshIteratorPtr
+    ( new SMDS_SetIterator< const SMESHDS_SubMesh*, TIterator >( mySubMeshes.begin(),
+                                                                 mySubMeshes.end()));
+}
index 5c65a5859eee5a2ab6dd35e302e1abbaeabc5125..8165ee429525dffa58778a2956e65f8a7d6b392b 100644 (file)
 #define SMESHDS_WNT_EXPORT
 #endif
 
+class SMESHDS_SubMesh;
+typedef SMDS_Iterator<const SMESHDS_SubMesh*> SMESHDS_SubMeshIterator;
+typedef boost::shared_ptr< SMESHDS_SubMeshIterator > SMESHDS_SubMeshIteratorPtr;
+
 class SMESHDS_WNT_EXPORT SMESHDS_SubMesh
 {
  public:
@@ -53,6 +57,7 @@ class SMESHDS_WNT_EXPORT SMESHDS_SubMesh
   bool RemoveSubMesh( const SMESHDS_SubMesh* theSubMesh );
   bool ContainsSubMesh( const SMESHDS_SubMesh* theSubMesh ) const;
   int  NbSubMeshes() const { return mySubMeshes.size(); }
+  SMESHDS_SubMeshIteratorPtr GetSubMeshIterator() const;
 
   // for both types
   int NbElements() const;