1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
3 // File: GeomAPI_DataMapOfShapeShape.h
4 // Created: 28 Oct 2014
5 // Author: Sergey Zaritchny
7 #ifndef GeomAPI_DataMapOfShapeShape_H_
8 #define GeomAPI_DataMapOfShapeShape_H_
11 #include <GeomAPI_Interface.h>
16 /**\class GeomAPI_DataMapOfShapeShape
18 * \brief DataMap of Shape - Shape defined by TopoDS_Shapes
20 class GeomAPI_DataMapOfShapeShape : public GeomAPI_Interface
23 /// Creation of plane by the point and normal
25 GeomAPI_DataMapOfShapeShape();
35 /// Adds \a theKey to me with \a theItem. Returns True if the Key was not already in the map
37 bool bind (std::shared_ptr<GeomAPI_Shape> theKey, std::shared_ptr<GeomAPI_Shape> theItem);
40 GEOMAPI_EXPORT void merge(const GeomAPI_DataMapOfShapeShape& theDataMap);
43 GEOMAPI_EXPORT void merge(const std::shared_ptr<GeomAPI_DataMapOfShapeShape> theDataMap);
45 /// Returns true if theKey is stored in the map.
47 bool isBound (std::shared_ptr<GeomAPI_Shape> theKey);
49 /// Returns the Item stored with the Key in the Map.
51 const std::shared_ptr<GeomAPI_Shape> find(std::shared_ptr<GeomAPI_Shape> theKey);
53 /// Removes the Key from the map. Returns true if the Key was in the Map
55 bool unBind(std::shared_ptr<GeomAPI_Shape> theKey);
59 ~GeomAPI_DataMapOfShapeShape();