Salome HOME
- virtual SMDS_ElemIteratorPtr nodesIteratorToUNV() const;
[modules/smesh.git] / src / SMDS / SMDS_MeshElement.hxx
index 44d8556222f50144898a69844bc24a3d46896928..a8a3ad4224f038efcf96ad34d21b539b19eb4c58 100644 (file)
@@ -65,9 +65,12 @@ public:
   SMDS_ElemIteratorPtr edgesIterator() const;
   SMDS_ElemIteratorPtr facesIterator() const;
   virtual SMDS_ElemIteratorPtr elementsIterator(SMDSAbs_ElementType type) const;
-  virtual SMDS_ElemIteratorPtr nodesIteratorToUNV() const;
   virtual SMDS_ElemIteratorPtr interlacedNodesElemIterator() const;
 
+  virtual SMDS_NodeIteratorPtr nodeIterator() const;
+  virtual SMDS_NodeIteratorPtr interlacedNodesIterator() const;
+  virtual SMDS_NodeIteratorPtr nodesIteratorToUNV() const;
+
   // std-like iteration on nodes
   typedef SMDS_StdIterator< const SMDS_MeshNode*, SMDS_ElemIteratorPtr > iterator;
   iterator begin_nodes() const { return iterator( nodesIterator() ); }
@@ -198,7 +201,7 @@ protected:
 
 struct TIDCompare {
   bool operator () (const SMDS_MeshElement* e1, const SMDS_MeshElement* e2) const
-  { return e1->GetID() < e2->GetID(); }
+  { return e1->GetType() == e2->GetType() ? e1->GetID() < e2->GetID() : e1->GetType() < e2->GetType(); }
 };
 
 #endif