Salome HOME
IMP 0021129: EDF 1541 GEOM: Problem with GetInPlace. A new GetInPlace implementation...
[modules/geom.git] / src / GEOMAlgo / GEOMAlgo_DataMapNodeOfDataMapOfShapeMapOfShape.hxx
1 // Copyright (C) 2007-2011  CEA/DEN, EDF R&D, OPEN CASCADE\r
2 //\r
3 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,\r
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS\r
5 //\r
6 // This library is free software; you can redistribute it and/or\r
7 // modify it under the terms of the GNU Lesser General Public\r
8 // License as published by the Free Software Foundation; either\r
9 // version 2.1 of the License.\r
10 //\r
11 // This library is distributed in the hope that it will be useful,\r
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of\r
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\r
14 // Lesser General Public License for more details.\r
15 //\r
16 // You should have received a copy of the GNU Lesser General Public\r
17 // License along with this library; if not, write to the Free Software\r
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA\r
19 //\r
20 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com\r
21 \r
22 #ifndef _GEOMAlgo_DataMapNodeOfDataMapOfShapeMapOfShape_HeaderFile\r
23 #define _GEOMAlgo_DataMapNodeOfDataMapOfShapeMapOfShape_HeaderFile\r
24 \r
25 #ifndef _Standard_HeaderFile\r
26 #include <Standard.hxx>\r
27 #endif\r
28 #ifndef _Standard_DefineHandle_HeaderFile\r
29 #include <Standard_DefineHandle.hxx>\r
30 #endif\r
31 #ifndef _Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeMapOfShape_HeaderFile\r
32 #include <Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeMapOfShape.hxx>\r
33 #endif\r
34 \r
35 #ifndef _TopoDS_Shape_HeaderFile\r
36 #include <TopoDS_Shape.hxx>\r
37 #endif\r
38 #ifndef _TopTools_MapOfShape_HeaderFile\r
39 #include <TopTools_MapOfShape.hxx>\r
40 #endif\r
41 #ifndef _TCollection_MapNode_HeaderFile\r
42 #include <TCollection_MapNode.hxx>\r
43 #endif\r
44 #ifndef _TCollection_MapNodePtr_HeaderFile\r
45 #include <TCollection_MapNodePtr.hxx>\r
46 #endif\r
47 class TopoDS_Shape;\r
48 class TopTools_MapOfShape;\r
49 class TopTools_ShapeMapHasher;\r
50 class GEOMAlgo_DataMapOfShapeMapOfShape;\r
51 class GEOMAlgo_DataMapIteratorOfDataMapOfShapeMapOfShape;\r
52 \r
53 \r
54 \r
55 class GEOMAlgo_DataMapNodeOfDataMapOfShapeMapOfShape : public TCollection_MapNode {\r
56 \r
57 public:\r
58 \r
59   \r
60       GEOMAlgo_DataMapNodeOfDataMapOfShapeMapOfShape(const TopoDS_Shape& K,const TopTools_MapOfShape& I,const TCollection_MapNodePtr& n);\r
61   \r
62         TopoDS_Shape& Key() const;\r
63   \r
64         TopTools_MapOfShape& Value() const;\r
65 \r
66 \r
67 \r
68 \r
69   DEFINE_STANDARD_RTTI(GEOMAlgo_DataMapNodeOfDataMapOfShapeMapOfShape)\r
70 \r
71 protected:\r
72 \r
73 \r
74 \r
75 \r
76 private: \r
77 \r
78 \r
79 TopoDS_Shape myKey;\r
80 TopTools_MapOfShape myValue;\r
81 \r
82 \r
83 };\r
84 \r
85 #define TheKey TopoDS_Shape\r
86 #define TheKey_hxx <TopoDS_Shape.hxx>\r
87 #define TheItem TopTools_MapOfShape\r
88 #define TheItem_hxx <TopTools_MapOfShape.hxx>\r
89 #define Hasher TopTools_ShapeMapHasher\r
90 #define Hasher_hxx <TopTools_ShapeMapHasher.hxx>\r
91 #define TCollection_DataMapNode GEOMAlgo_DataMapNodeOfDataMapOfShapeMapOfShape\r
92 #define TCollection_DataMapNode_hxx <GEOMAlgo_DataMapNodeOfDataMapOfShapeMapOfShape.hxx>\r
93 #define TCollection_DataMapIterator GEOMAlgo_DataMapIteratorOfDataMapOfShapeMapOfShape\r
94 #define TCollection_DataMapIterator_hxx <GEOMAlgo_DataMapIteratorOfDataMapOfShapeMapOfShape.hxx>\r
95 #define Handle_TCollection_DataMapNode Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeMapOfShape\r
96 #define TCollection_DataMapNode_Type_() GEOMAlgo_DataMapNodeOfDataMapOfShapeMapOfShape_Type_()\r
97 #define TCollection_DataMap GEOMAlgo_DataMapOfShapeMapOfShape\r
98 #define TCollection_DataMap_hxx <GEOMAlgo_DataMapOfShapeMapOfShape.hxx>\r
99 \r
100 #include <TCollection_DataMapNode.lxx>\r
101 \r
102 #undef TheKey\r
103 #undef TheKey_hxx\r
104 #undef TheItem\r
105 #undef TheItem_hxx\r
106 #undef Hasher\r
107 #undef Hasher_hxx\r
108 #undef TCollection_DataMapNode\r
109 #undef TCollection_DataMapNode_hxx\r
110 #undef TCollection_DataMapIterator\r
111 #undef TCollection_DataMapIterator_hxx\r
112 #undef Handle_TCollection_DataMapNode\r
113 #undef TCollection_DataMapNode_Type_\r
114 #undef TCollection_DataMap\r
115 #undef TCollection_DataMap_hxx\r
116 \r
117 \r
118 // other Inline functions and methods (like "C++: function call" methods)\r
119 \r
120 \r
121 #endif\r