Salome HOME
Merge branch 'Dev_0.6.1' of newgeom:newgeom into Dev_0.6.1
[modules/shaper.git] / src / GeomAPI / GeomAPI_DataMapOfShapeShape.h
index 119cfda0ee5ad624fa213fa878d35108cf1005a3..40c447baed4d31ff5d5c083391ca584a90b4d50e 100644 (file)
@@ -1,3 +1,5 @@
+// Copyright (C) 2014-20xx CEA/DEN, EDF R&D
+
 // File:        GeomAPI_DataMapOfShapeShape.h
 // Created:     28 Oct 2014
 // Author:      Sergey Zaritchny
@@ -5,7 +7,7 @@
 #ifndef GeomAPI_DataMapOfShapeShape_H_
 #define GeomAPI_DataMapOfShapeShape_H_
 
-#include <boost/shared_ptr.hpp>
+#include <memory>
 #include <GeomAPI_Interface.h>
 
 class GeomAPI_Pnt;
@@ -25,17 +27,23 @@ class GEOMAPI_EXPORT GeomAPI_DataMapOfShapeShape : public GeomAPI_Interface
   /// Clear 
   void clear();
 
+  /// Size of the map
+  int size();
+
   /// Adds the Key <K> to  the Map <me>  with  the  Item. Returns True  if the Key  was not already in the map
-  bool bind (const boost::shared_ptr<GeomAPI_Shape>& theKey, const boost::shared_ptr<GeomAPI_Shape>& theItem);
+  bool bind (std::shared_ptr<GeomAPI_Shape> theKey, std::shared_ptr<GeomAPI_Shape> theItem);
 
   /// Returns true if theKey is stored  in the map.
-  bool isBound (const boost::shared_ptr<GeomAPI_Shape>& theKey);
+  bool isBound (std::shared_ptr<GeomAPI_Shape> theKey);
 
   /// Returns  the Item stored  with the Key in the Map.
-  const boost::shared_ptr<GeomAPI_Shape> find(const boost::shared_ptr<GeomAPI_Shape>& theKey);  
+  const std::shared_ptr<GeomAPI_Shape> find(std::shared_ptr<GeomAPI_Shape> theKey);  
   
   /// Removes the Key from the  map. Returns true if the Key was in the Map
-  bool unBind(const boost::shared_ptr<GeomAPI_Shape>& theKey);
+  bool unBind(std::shared_ptr<GeomAPI_Shape> theKey);
+
+  /// Destructor
+  ~GeomAPI_DataMapOfShapeShape();
 };
 
 #endif