Salome HOME
GetElementType method added
[modules/smesh.git] / src / SMDS / SMDS_MeshNode.hxx
index f53630705b57fff437725290405a7d9307216d49..fec75242ed25207965628935ca18bcc208225170 100644 (file)
 
 #include "SMDS_MeshElement.hxx"
 #include "SMDS_Position.hxx"
-
-#include <set>
-using namespace std;
+#include <NCollection_List.hxx>
 
 class SMDS_MeshNode:public SMDS_MeshElement
 {
 
   public:
        SMDS_MeshNode(double x, double y, double z);
-       void Print(ostream & OS) const;
+       void Print(std::ostream & OS) const;
        double X() const;
        double Y() const;
        double Z() const;
@@ -46,23 +44,22 @@ class SMDS_MeshNode:public SMDS_MeshElement
        void RemoveInverseElement(const SMDS_MeshElement * parent);
        void ClearInverseElements();
        bool emptyInverseElements();
-       SMDS_Iterator<const SMDS_MeshElement*> * GetInverseElementIterator() const;     
-       void SetPosition(SMDS_Position * aPos);
-       SMDS_Position *GetPosition();
-       const SMDS_Position *GetPosition() const;
+       SMDS_ElemIteratorPtr GetInverseElementIterator() const; 
+       void SetPosition(const SMDS_PositionPtr& aPos);
+       const SMDS_PositionPtr& GetPosition() const;
        SMDSAbs_ElementType GetType() const;
        int NbNodes() const;
        void setXYZ(double x, double y, double z);
        friend bool operator<(const SMDS_MeshNode& e1, const SMDS_MeshNode& e2);
 
   protected:
-       SMDS_Iterator<const SMDS_MeshElement *> *
+       SMDS_ElemIteratorPtr
                elementsIterator(SMDSAbs_ElementType type) const;
 
   private:
        double myX, myY, myZ;
-       SMDS_Position *myPosition;
-       set<const SMDS_MeshElement*> myInverseElements;
+       SMDS_PositionPtr myPosition;
+       NCollection_List<const SMDS_MeshElement*> myInverseElements;
 };
 
 #endif