1 // Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
3 // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6 // This library is free software; you can redistribute it and/or
7 // modify it under the terms of the GNU Lesser General Public
8 // License as published by the Free Software Foundation; either
9 // version 2.1 of the License.
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 // Lesser General Public License for more details.
16 // You should have received a copy of the GNU Lesser General Public
17 // License along with this library; if not, write to the Free Software
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
22 #include <GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet.hxx>
24 #include <Basics_OCCTVersion.hxx>
26 #ifndef _Standard_TypeMismatch_HeaderFile
27 #include <Standard_TypeMismatch.hxx>
30 #ifndef _TopoDS_Shape_HeaderFile
31 #include <TopoDS_Shape.hxx>
33 #ifndef _GEOMAlgo_ShapeSet_HeaderFile
34 #include <GEOMAlgo_ShapeSet.hxx>
36 #ifndef _TopTools_ShapeMapHasher_HeaderFile
37 #include <TopTools_ShapeMapHasher.hxx>
39 #ifndef _GEOMAlgo_DataMapOfShapeShapeSet_HeaderFile
40 #include <GEOMAlgo_DataMapOfShapeShapeSet.hxx>
42 #ifndef _GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet_HeaderFile
43 #include <GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet.hxx>
46 #if OCC_VERSION_LARGE > 0x06040000 // Porting to OCCT6.5.1
48 IMPLEMENT_STANDARD_TYPE(GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet)
49 IMPLEMENT_STANDARD_SUPERTYPE_ARRAY()
50 STANDARD_TYPE(TCollection_MapNode),
51 STANDARD_TYPE(MMgt_TShared),
52 STANDARD_TYPE(Standard_Transient),
54 IMPLEMENT_STANDARD_SUPERTYPE_ARRAY_END()
55 IMPLEMENT_STANDARD_TYPE_END(GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet)
57 IMPLEMENT_DOWNCAST(GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet,Standard_Transient)
58 IMPLEMENT_STANDARD_RTTI(GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet)
62 Standard_EXPORT Handle_Standard_Type& GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet_Type_()
64 static Handle_Standard_Type aType1 = STANDARD_TYPE(TCollection_MapNode);
65 static Handle_Standard_Type aType2 = STANDARD_TYPE(MMgt_TShared);
66 static Handle_Standard_Type aType3 = STANDARD_TYPE(Standard_Transient);
68 static Handle_Standard_Transient _Ancestors[]= {aType1,aType2,aType3,NULL};
69 static Handle_Standard_Type _aType = new Standard_Type("GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet",
70 sizeof(GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet),
72 (Standard_Address)_Ancestors,
73 (Standard_Address)NULL);
79 // allow safe downcasting
81 const Handle(GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet) Handle(GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet)::DownCast(const Handle(Standard_Transient)& AnObject)
83 Handle(GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet) _anOtherObject;
85 if (!AnObject.IsNull()) {
86 if (AnObject->IsKind(STANDARD_TYPE(GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet))) {
87 _anOtherObject = Handle(GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet)((Handle(GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet)&)AnObject);
91 return _anOtherObject;
94 const Handle(Standard_Type)& GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet::DynamicType() const
96 return STANDARD_TYPE(GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet);
101 #define TheKey TopoDS_Shape
102 #define TheKey_hxx <TopoDS_Shape.hxx>
103 #define TheItem GEOMAlgo_ShapeSet
104 #define TheItem_hxx <GEOMAlgo_ShapeSet.hxx>
105 #define Hasher TopTools_ShapeMapHasher
106 #define Hasher_hxx <TopTools_ShapeMapHasher.hxx>
107 #define TCollection_DataMapNode GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet
108 #define TCollection_DataMapNode_hxx <GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet.hxx>
109 #define TCollection_DataMapIterator GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet
110 #define TCollection_DataMapIterator_hxx <GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet.hxx>
111 #define Handle_TCollection_DataMapNode Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet
112 #define TCollection_DataMapNode_Type_() GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet_Type_()
113 #define TCollection_DataMap GEOMAlgo_DataMapOfShapeShapeSet
114 #define TCollection_DataMap_hxx <GEOMAlgo_DataMapOfShapeShapeSet.hxx>
115 #include <TCollection_DataMapNode.gxx>