Warning, file /include/opencascade/TopTools_ShapeSet.hxx was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _TopTools_ShapeSet_HeaderFile
0018 #define _TopTools_ShapeSet_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022
0023 #include <TopTools_ShapeMapHasher.hxx>
0024 #include <NCollection_IndexedMap.hxx>
0025 #include <TopTools_LocationSet.hxx>
0026 #include <Standard_Integer.hxx>
0027 #include <Standard_OStream.hxx>
0028 #include <Standard_IStream.hxx>
0029 #include <TopAbs_ShapeEnum.hxx>
0030 #include <TopTools_FormatVersion.hxx>
0031
0032 class TopoDS_Shape;
0033 class TCollection_AsciiString;
0034
0035
0036
0037
0038
0039
0040 class TopTools_ShapeSet
0041 {
0042 public:
0043 DEFINE_STANDARD_ALLOC
0044
0045
0046 Standard_EXPORT TopTools_ShapeSet();
0047
0048 Standard_EXPORT virtual ~TopTools_ShapeSet();
0049
0050
0051 Standard_EXPORT void SetFormatNb(const int theFormatNb);
0052
0053
0054 Standard_EXPORT int FormatNb() const;
0055
0056
0057
0058 Standard_EXPORT virtual void Clear();
0059
0060
0061
0062 Standard_EXPORT int Add(const TopoDS_Shape& S);
0063
0064
0065 Standard_EXPORT const TopoDS_Shape& Shape(const int I) const;
0066
0067
0068 Standard_EXPORT int Index(const TopoDS_Shape& S) const;
0069
0070 Standard_EXPORT const TopTools_LocationSet& Locations() const;
0071
0072 Standard_EXPORT TopTools_LocationSet& ChangeLocations();
0073
0074
0075
0076 Standard_EXPORT Standard_OStream& DumpExtent(Standard_OStream& OS) const;
0077
0078
0079
0080 Standard_EXPORT void DumpExtent(TCollection_AsciiString& S) const;
0081
0082
0083
0084
0085
0086
0087
0088
0089
0090
0091
0092 Standard_EXPORT virtual void Dump(Standard_OStream& OS) const;
0093
0094
0095
0096
0097
0098
0099
0100
0101
0102
0103
0104
0105
0106 Standard_EXPORT virtual void Write(
0107 Standard_OStream& OS,
0108 const Message_ProgressRange& theProgress = Message_ProgressRange());
0109
0110
0111
0112
0113
0114
0115
0116
0117
0118
0119
0120
0121
0122 Standard_EXPORT virtual void Read(
0123 Standard_IStream& IS,
0124 const Message_ProgressRange& theProgress = Message_ProgressRange());
0125
0126
0127
0128
0129 Standard_EXPORT void Dump(const TopoDS_Shape& S, Standard_OStream& OS) const;
0130
0131
0132
0133
0134 Standard_EXPORT void Write(const TopoDS_Shape& S, Standard_OStream& OS) const;
0135
0136
0137 Standard_EXPORT void Read(TopoDS_Shape& S, Standard_IStream& IS) const;
0138
0139
0140 Standard_EXPORT virtual void AddGeometry(const TopoDS_Shape& S);
0141
0142
0143 Standard_EXPORT virtual void DumpGeometry(Standard_OStream& OS) const;
0144
0145
0146
0147 Standard_EXPORT virtual void WriteGeometry(
0148 Standard_OStream& OS,
0149 const Message_ProgressRange& theProgress = Message_ProgressRange());
0150
0151
0152 Standard_EXPORT virtual void ReadGeometry(
0153 Standard_IStream& IS,
0154 const Message_ProgressRange& theProgress = Message_ProgressRange());
0155
0156
0157 Standard_EXPORT virtual void DumpGeometry(const TopoDS_Shape& S, Standard_OStream& OS) const;
0158
0159
0160
0161 Standard_EXPORT virtual void WriteGeometry(const TopoDS_Shape& S, Standard_OStream& OS) const;
0162
0163
0164
0165 Standard_EXPORT virtual void ReadGeometry(const TopAbs_ShapeEnum T,
0166 Standard_IStream& IS,
0167 TopoDS_Shape& S);
0168
0169
0170
0171
0172 Standard_EXPORT virtual void AddShapes(TopoDS_Shape& S1, const TopoDS_Shape& S2);
0173
0174
0175
0176
0177
0178
0179 Standard_EXPORT virtual void Check(const TopAbs_ShapeEnum T, TopoDS_Shape& S);
0180
0181
0182 Standard_EXPORT int NbShapes() const;
0183
0184 public:
0185 static const char* const THE_ASCII_VERSIONS[TopTools_FormatVersion_VERSION_3 + 1];
0186
0187 private:
0188
0189
0190 Standard_EXPORT void Read(TopoDS_Shape& S, Standard_IStream& IS, const int NbShapes) const;
0191
0192 NCollection_IndexedMap<TopoDS_Shape, TopTools_ShapeMapHasher> myShapes;
0193 TopTools_LocationSet myLocations;
0194 int myFormatNb;
0195 };
0196
0197 #endif