Salome HOME
IPAL9155, IPAL9156
[modules/smesh.git] / src / SMDS / SMDS_MeshElement.hxx
index d35e151bd4d249f5b2a69b3a7a4cebead2f893bd..b9f61351b37ceeff2b652c00243fe3f95be3e07c 100644 (file)
        
 #include "SMDSAbs_ElementType.hxx"
 #include "SMDS_MeshObject.hxx"
-#include "SMDS_Iterator.hxx"
+#include "SMDS_ElemIterator.hxx"
 #include "SMDS_MeshElementIDFactory.hxx"
 
 #include <vector>
-#include <ostream>
+#include <iostream>
 
-using namespace std;
 class SMDS_MeshNode;
 class SMDS_MeshEdge;
 class SMDS_MeshFace;   
@@ -47,10 +46,10 @@ class SMDS_MeshElement:public SMDS_MeshObject
 {
 
   public:
-       SMDS_Iterator<const SMDS_MeshElement *> * nodesIterator() const;
-       SMDS_Iterator<const SMDS_MeshElement *> * edgesIterator() const;
-       SMDS_Iterator<const SMDS_MeshElement *> * facesIterator() const;
-       virtual SMDS_Iterator<const SMDS_MeshElement *> *
+       SMDS_ElemIteratorPtr nodesIterator() const;
+       SMDS_ElemIteratorPtr edgesIterator() const;
+       SMDS_ElemIteratorPtr facesIterator() const;
+       virtual SMDS_ElemIteratorPtr
                elementsIterator(SMDSAbs_ElementType type) const;
 
        virtual int NbNodes() const;
@@ -60,12 +59,14 @@ class SMDS_MeshElement:public SMDS_MeshObject
 
        ///Return the type of the current element
        virtual SMDSAbs_ElementType GetType() const = 0;
-       friend ostream & operator <<(ostream & OS, const SMDS_MeshElement *);
+       virtual bool IsPoly() const { return false; };
+
+       friend std::ostream & operator <<(std::ostream & OS, const SMDS_MeshElement *);
        friend bool SMDS_MeshElementIDFactory::BindID(int ID,SMDS_MeshElement*elem);
 
   protected:
        SMDS_MeshElement(int ID=-1);
-       virtual void Print(ostream & OS) const;
+       virtual void Print(std::ostream & OS) const;
        
   private:
        int myID;