File indexing completed on 2025-01-18 10:05:27
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _TopOpeBRepDS_TKI_HeaderFile
0018 #define _TopOpeBRepDS_TKI_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022 #include <Standard_Handle.hxx>
0023
0024 #include <Standard_Integer.hxx>
0025 #include <TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference.hxx>
0026 #include <TopOpeBRepDS_Kind.hxx>
0027 #include <TopOpeBRepDS_ListOfInterference.hxx>
0028 #include <TCollection_AsciiString.hxx>
0029 class TopOpeBRepDS_Interference;
0030
0031
0032
0033 class TopOpeBRepDS_TKI
0034 {
0035 public:
0036
0037 DEFINE_STANDARD_ALLOC
0038
0039
0040 Standard_EXPORT TopOpeBRepDS_TKI();
0041
0042 Standard_EXPORT void Clear();
0043
0044 Standard_EXPORT void FillOnGeometry (const TopOpeBRepDS_ListOfInterference& L);
0045
0046 Standard_EXPORT void FillOnSupport (const TopOpeBRepDS_ListOfInterference& L);
0047
0048 Standard_EXPORT Standard_Boolean IsBound (const TopOpeBRepDS_Kind K, const Standard_Integer G) const;
0049
0050 Standard_EXPORT const TopOpeBRepDS_ListOfInterference& Interferences (const TopOpeBRepDS_Kind K, const Standard_Integer G) const;
0051
0052 Standard_EXPORT TopOpeBRepDS_ListOfInterference& ChangeInterferences (const TopOpeBRepDS_Kind K, const Standard_Integer G);
0053
0054 Standard_EXPORT Standard_Boolean HasInterferences (const TopOpeBRepDS_Kind K, const Standard_Integer G) const;
0055
0056 Standard_EXPORT void Add (const TopOpeBRepDS_Kind K, const Standard_Integer G);
0057
0058 Standard_EXPORT void Add (const TopOpeBRepDS_Kind K, const Standard_Integer G, const Handle(TopOpeBRepDS_Interference)& HI);
0059
0060 Standard_EXPORT void DumpTKIIterator (const TCollection_AsciiString& s1 = "", const TCollection_AsciiString& s2 = "");
0061
0062 Standard_EXPORT void Init();
0063
0064 Standard_EXPORT Standard_Boolean More() const;
0065
0066 Standard_EXPORT void Next();
0067
0068 Standard_EXPORT const TopOpeBRepDS_ListOfInterference& Value (TopOpeBRepDS_Kind& K, Standard_Integer& G) const;
0069
0070 Standard_EXPORT TopOpeBRepDS_ListOfInterference& ChangeValue (TopOpeBRepDS_Kind& K, Standard_Integer& G);
0071
0072
0073
0074
0075 protected:
0076
0077
0078
0079
0080
0081 private:
0082
0083
0084 Standard_EXPORT void Reset();
0085
0086 Standard_EXPORT Standard_Boolean MoreTI() const;
0087
0088 Standard_EXPORT void NextTI();
0089
0090 Standard_EXPORT Standard_Boolean MoreITM() const;
0091
0092 Standard_EXPORT void FindITM();
0093
0094 Standard_EXPORT void NextITM();
0095
0096 Standard_EXPORT void Find();
0097
0098 Standard_EXPORT Standard_Integer KindToTableIndex (const TopOpeBRepDS_Kind K) const;
0099
0100 Standard_EXPORT TopOpeBRepDS_Kind TableIndexToKind (const Standard_Integer TI) const;
0101
0102 Standard_EXPORT Standard_Boolean IsValidTI (const Standard_Integer TI) const;
0103
0104 Standard_EXPORT Standard_Boolean IsValidK (const TopOpeBRepDS_Kind K) const;
0105
0106 Standard_EXPORT Standard_Boolean IsValidG (const Standard_Integer G) const;
0107
0108 Standard_EXPORT Standard_Boolean IsValidKG (const TopOpeBRepDS_Kind K, const Standard_Integer G) const;
0109
0110
0111 Standard_Integer mydelta;
0112 Handle(TopOpeBRepDS_HArray1OfDataMapOfIntegerListOfInterference) myT;
0113 Standard_Integer myTI;
0114 Standard_Integer myG;
0115 TopOpeBRepDS_DataMapIteratorOfDataMapOfIntegerListOfInterference myITM;
0116 TopOpeBRepDS_Kind myK;
0117 TopOpeBRepDS_ListOfInterference myEmptyLOI;
0118 TCollection_AsciiString myDummyAsciiString;
0119
0120
0121 };
0122
0123
0124
0125
0126
0127
0128
0129 #endif