Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef _GEOMAlgo_IndexedDataMapOfIntegerShape_HeaderFile
00024 #define _GEOMAlgo_IndexedDataMapOfIntegerShape_HeaderFile
00025
00026 #ifndef _TCollection_BasicMap_HeaderFile
00027 #include <TCollection_BasicMap.hxx>
00028 #endif
00029 #ifndef _Standard_Integer_HeaderFile
00030 #include <Standard_Integer.hxx>
00031 #endif
00032 #ifndef _Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_HeaderFile
00033 #include <Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx>
00034 #endif
00035 #ifndef _Standard_Boolean_HeaderFile
00036 #include <Standard_Boolean.hxx>
00037 #endif
00038 class Standard_DomainError;
00039 class Standard_OutOfRange;
00040 class Standard_NoSuchObject;
00041 class TopoDS_Shape;
00042 class TColStd_MapIntegerHasher;
00043 class GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape;
00044
00045
00046 #ifndef _Standard_HeaderFile
00047 #include <Standard.hxx>
00048 #endif
00049 #ifndef _Standard_Macro_HeaderFile
00050 #include <Standard_Macro.hxx>
00051 #endif
00052
00053
00054 class GEOMAlgo_IndexedDataMapOfIntegerShape : public TCollection_BasicMap {
00055
00056 public:
00057
00058 void* operator new(size_t,void* anAddress)
00059 {
00060 return anAddress;
00061 }
00062 void* operator new(size_t size)
00063 {
00064 return Standard::Allocate(size);
00065 }
00066 void operator delete(void *anAddress)
00067 {
00068 if (anAddress) Standard::Free((Standard_Address&)anAddress);
00069 }
00070
00071
00072
00073
00074 Standard_EXPORT GEOMAlgo_IndexedDataMapOfIntegerShape(const Standard_Integer NbBuckets = 1);
00075
00076
00077 Standard_EXPORT GEOMAlgo_IndexedDataMapOfIntegerShape& Assign(const GEOMAlgo_IndexedDataMapOfIntegerShape& Other) ;
00078 GEOMAlgo_IndexedDataMapOfIntegerShape& operator =(const GEOMAlgo_IndexedDataMapOfIntegerShape& Other)
00079 {
00080 return Assign(Other);
00081 }
00082
00083
00084
00085 Standard_EXPORT void ReSize(const Standard_Integer NbBuckets) ;
00086
00087
00088 Standard_EXPORT void Clear() ;
00089 ~GEOMAlgo_IndexedDataMapOfIntegerShape()
00090 {
00091 Clear();
00092 }
00093
00094
00095
00096 Standard_EXPORT Standard_Integer Add(const Standard_Integer& K,const TopoDS_Shape& I) ;
00097
00098
00099 Standard_EXPORT void Substitute(const Standard_Integer I,const Standard_Integer& K,const TopoDS_Shape& T) ;
00100
00101
00102 Standard_EXPORT void RemoveLast() ;
00103
00104
00105 Standard_EXPORT Standard_Boolean Contains(const Standard_Integer& K) const;
00106
00107
00108 Standard_EXPORT const Standard_Integer& FindKey(const Standard_Integer I) const;
00109
00110
00111 Standard_EXPORT const TopoDS_Shape& FindFromIndex(const Standard_Integer I) const;
00112 const TopoDS_Shape& operator ()(const Standard_Integer I) const
00113 {
00114 return FindFromIndex(I);
00115 }
00116
00117
00118
00119 Standard_EXPORT TopoDS_Shape& ChangeFromIndex(const Standard_Integer I) ;
00120 TopoDS_Shape& operator ()(const Standard_Integer I)
00121 {
00122 return ChangeFromIndex(I);
00123 }
00124
00125
00126
00127 Standard_EXPORT Standard_Integer FindIndex(const Standard_Integer& K) const;
00128
00129
00130 Standard_EXPORT const TopoDS_Shape& FindFromKey(const Standard_Integer& K) const;
00131
00132
00133 Standard_EXPORT TopoDS_Shape& ChangeFromKey(const Standard_Integer& K) ;
00134
00135
00136
00137
00138
00139 protected:
00140
00141
00142
00143
00144
00145
00146
00147
00148
00149 private:
00150
00151
00152
00153
00154
00155 Standard_EXPORT GEOMAlgo_IndexedDataMapOfIntegerShape(const GEOMAlgo_IndexedDataMapOfIntegerShape& Other);
00156
00157
00158
00159
00160
00161
00162 };
00163
00164
00165
00166
00167
00168
00169
00170
00171
00172 #endif