1 // SMESH SMDS : implementaion of Salome mesh data structure
3 // Copyright (C) 2003 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
24 // File : SMDS_ListNodeOfListOfMeshElement_0.cxx
28 #include "SMDS_ListNodeOfListOfMeshElement.hxx"
30 #ifndef _Standard_TypeMismatch_HeaderFile
31 #include <Standard_TypeMismatch.hxx>
34 #ifndef _SMDS_MeshElement_HeaderFile
35 #include "SMDS_MeshElement.hxx"
37 #ifndef _SMDS_ListOfMeshElement_HeaderFile
38 #include "SMDS_ListOfMeshElement.hxx"
40 #ifndef _SMDS_ListIteratorOfListOfMeshElement_HeaderFile
41 #include "SMDS_ListIteratorOfListOfMeshElement.hxx"
43 SMDS_ListNodeOfListOfMeshElement::~SMDS_ListNodeOfListOfMeshElement() {}
47 Standard_EXPORT Handle_Standard_Type& SMDS_ListNodeOfListOfMeshElement_Type_()
50 static Handle_Standard_Type aType1 = STANDARD_TYPE(TCollection_MapNode);
51 if ( aType1.IsNull()) aType1 = STANDARD_TYPE(TCollection_MapNode);
52 static Handle_Standard_Type aType2 = STANDARD_TYPE(MMgt_TShared);
53 if ( aType2.IsNull()) aType2 = STANDARD_TYPE(MMgt_TShared);
54 static Handle_Standard_Type aType3 = STANDARD_TYPE(Standard_Transient);
55 if ( aType3.IsNull()) aType3 = STANDARD_TYPE(Standard_Transient);
58 static Handle_Standard_Transient _Ancestors[]= {aType1,aType2,aType3,NULL};
59 static Handle_Standard_Type _aType = new Standard_Type("SMDS_ListNodeOfListOfMeshElement",
60 sizeof(SMDS_ListNodeOfListOfMeshElement),
62 (Standard_Address)_Ancestors,
63 (Standard_Address)NULL);
70 // allow safe downcasting
72 const Handle(SMDS_ListNodeOfListOfMeshElement) Handle(SMDS_ListNodeOfListOfMeshElement)::DownCast(const Handle(Standard_Transient)& AnObject)
74 Handle(SMDS_ListNodeOfListOfMeshElement) _anOtherObject;
76 if (!AnObject.IsNull()) {
77 if (AnObject->IsKind(STANDARD_TYPE(SMDS_ListNodeOfListOfMeshElement))) {
78 _anOtherObject = Handle(SMDS_ListNodeOfListOfMeshElement)((Handle(SMDS_ListNodeOfListOfMeshElement)&)AnObject);
82 return _anOtherObject ;
84 const Handle(Standard_Type)& SMDS_ListNodeOfListOfMeshElement::DynamicType() const
86 return STANDARD_TYPE(SMDS_ListNodeOfListOfMeshElement) ;
88 Standard_Boolean SMDS_ListNodeOfListOfMeshElement::IsKind(const Handle(Standard_Type)& AType) const
90 return (STANDARD_TYPE(SMDS_ListNodeOfListOfMeshElement) == AType || TCollection_MapNode::IsKind(AType));
92 Handle_SMDS_ListNodeOfListOfMeshElement::~Handle_SMDS_ListNodeOfListOfMeshElement() {}
93 #define Item Handle_SMDS_MeshElement
94 #define Item_hxx <SMDS_MeshElement.hxx>
95 #define TCollection_ListNode SMDS_ListNodeOfListOfMeshElement
96 #define TCollection_ListNode_hxx <SMDS_ListNodeOfListOfMeshElement.hxx>
97 #define TCollection_ListIterator SMDS_ListIteratorOfListOfMeshElement
98 #define TCollection_ListIterator_hxx <SMDS_ListIteratorOfListOfMeshElement.hxx>
99 #define Handle_TCollection_ListNode Handle_SMDS_ListNodeOfListOfMeshElement
100 #define TCollection_ListNode_Type_() SMDS_ListNodeOfListOfMeshElement_Type_()
101 #define TCollection_List SMDS_ListOfMeshElement
102 #define TCollection_List_hxx <SMDS_ListOfMeshElement.hxx>
103 #include <TCollection_ListNode.gxx>