Salome HOME
NRI : First integration.
[modules/smesh.git] / src / SMDS / SMDS_HSequenceOfMesh.hxx
1 // File generated by CPPExt (Transient)
2 //
3 //                     Copyright (C) 1991,1995 by
4 //  
5 //                      MATRA DATAVISION, FRANCE
6 //  
7 // This software is furnished in accordance with the terms and conditions
8 // of the contract and with the inclusion of the above copyright notice.
9 // This software or any other copy thereof may not be provided or otherwise
10 // be made available to any other person. No title to an ownership of the
11 // software is hereby transferred.
12 //  
13 // At the termination of the contract, the software and all copies of this
14 // software must be deleted.
15 //
16 #ifndef _SMDS_HSequenceOfMesh_HeaderFile
17 #define _SMDS_HSequenceOfMesh_HeaderFile
18
19 #ifndef _Standard_HeaderFile
20 #include <Standard.hxx>
21 #endif
22 #ifndef _Handle_SMDS_HSequenceOfMesh_HeaderFile
23 #include "Handle_SMDS_HSequenceOfMesh.hxx"
24 #endif
25
26 #ifndef _SMDS_SequenceOfMesh_HeaderFile
27 #include "SMDS_SequenceOfMesh.hxx"
28 #endif
29 #ifndef _MMgt_TShared_HeaderFile
30 #include <MMgt_TShared.hxx>
31 #endif
32 #ifndef _Handle_SMDS_Mesh_HeaderFile
33 #include "Handle_SMDS_Mesh.hxx"
34 #endif
35 #ifndef _Standard_Boolean_HeaderFile
36 #include <Standard_Boolean.hxx>
37 #endif
38 #ifndef _Standard_Integer_HeaderFile
39 #include <Standard_Integer.hxx>
40 #endif
41 class Standard_NoSuchObject;
42 class Standard_OutOfRange;
43 class SMDS_Mesh;
44 class SMDS_SequenceOfMesh;
45
46
47 class SMDS_HSequenceOfMesh : public MMgt_TShared {
48
49 public:
50
51     inline void* operator new(size_t,void* anAddress) 
52       {
53         return anAddress;
54       }
55     inline void* operator new(size_t size) 
56       { 
57         return Standard::Allocate(size); 
58       }
59     inline void  operator delete(void *anAddress) 
60       { 
61         if (anAddress) Standard::Free((Standard_Address&)anAddress); 
62       }
63 //    inline void  operator delete(void *anAddress, size_t size) 
64 //      { 
65 //        if (anAddress) Standard::Free((Standard_Address&)anAddress,size); 
66 //      }
67  // Methods PUBLIC
68  // 
69 Standard_EXPORT inline SMDS_HSequenceOfMesh();
70 Standard_EXPORT inline   Standard_Boolean IsEmpty() const;
71 Standard_EXPORT inline   Standard_Integer Length() const;
72 Standard_EXPORT   void Clear() ;
73 Standard_EXPORT   void Append(const Handle(SMDS_Mesh)& anItem) ;
74 Standard_EXPORT   void Append(const Handle(SMDS_HSequenceOfMesh)& aSequence) ;
75 Standard_EXPORT   void Prepend(const Handle(SMDS_Mesh)& anItem) ;
76 Standard_EXPORT   void Prepend(const Handle(SMDS_HSequenceOfMesh)& aSequence) ;
77 Standard_EXPORT   void Reverse() ;
78 Standard_EXPORT   void InsertBefore(const Standard_Integer anIndex,const Handle(SMDS_Mesh)& anItem) ;
79 Standard_EXPORT   void InsertBefore(const Standard_Integer anIndex,const Handle(SMDS_HSequenceOfMesh)& aSequence) ;
80 Standard_EXPORT   void InsertAfter(const Standard_Integer anIndex,const Handle(SMDS_Mesh)& anItem) ;
81 Standard_EXPORT   void InsertAfter(const Standard_Integer anIndex,const Handle(SMDS_HSequenceOfMesh)& aSequence) ;
82 Standard_EXPORT   void Exchange(const Standard_Integer anIndex,const Standard_Integer anOtherIndex) ;
83 Standard_EXPORT   Handle_SMDS_HSequenceOfMesh Split(const Standard_Integer anIndex) ;
84 Standard_EXPORT   void SetValue(const Standard_Integer anIndex,const Handle(SMDS_Mesh)& anItem) ;
85 Standard_EXPORT  const Handle_SMDS_Mesh& Value(const Standard_Integer anIndex) const;
86 Standard_EXPORT   Handle_SMDS_Mesh& ChangeValue(const Standard_Integer anIndex) ;
87 Standard_EXPORT   void Remove(const Standard_Integer anIndex) ;
88 Standard_EXPORT   void Remove(const Standard_Integer fromIndex,const Standard_Integer toIndex) ;
89 Standard_EXPORT inline  const SMDS_SequenceOfMesh& Sequence() const;
90 Standard_EXPORT inline   SMDS_SequenceOfMesh& ChangeSequence() ;
91 Standard_EXPORT   Handle_SMDS_HSequenceOfMesh ShallowCopy() const;
92 Standard_EXPORT ~SMDS_HSequenceOfMesh();
93
94
95
96
97  // Type management
98  //
99  Standard_EXPORT friend Handle_Standard_Type& SMDS_HSequenceOfMesh_Type_();
100  Standard_EXPORT const Handle(Standard_Type)& DynamicType() const;
101  Standard_EXPORT Standard_Boolean              IsKind(const Handle(Standard_Type)&) const;
102
103 protected:
104
105  // Methods PROTECTED
106  // 
107
108
109  // Fields PROTECTED
110  //
111
112
113 private: 
114
115  // Methods PRIVATE
116  // 
117
118
119  // Fields PRIVATE
120  //
121 SMDS_SequenceOfMesh mySequence;
122
123
124 };
125
126 #define Item Handle_SMDS_Mesh
127 #define Item_hxx "SMDS_Mesh.hxx"
128 #define TheSequence SMDS_SequenceOfMesh
129 #define TheSequence_hxx "SMDS_SequenceOfMesh.hxx"
130 #define TCollection_HSequence SMDS_HSequenceOfMesh
131 #define TCollection_HSequence_hxx "SMDS_HSequenceOfMesh.hxx"
132 #define Handle_TCollection_HSequence Handle_SMDS_HSequenceOfMesh
133 #define TCollection_HSequence_Type_() SMDS_HSequenceOfMesh_Type_()
134
135 #include <TCollection_HSequence.lxx>
136
137 #undef Item
138 #undef Item_hxx
139 #undef TheSequence
140 #undef TheSequence_hxx
141 #undef TCollection_HSequence
142 #undef TCollection_HSequence_hxx
143 #undef Handle_TCollection_HSequence
144 #undef TCollection_HSequence_Type_
145
146
147 // other inline functions and methods (like "C++: function call" methods)
148 //
149 inline Handle_SMDS_HSequenceOfMesh ShallowCopy(const Handle_SMDS_HSequenceOfMesh& me) {
150  return me->ShallowCopy();
151 }
152
153
154
155 #endif