File indexing completed on 2026-09-16 09:16:23
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #ifndef _BinTools_CurveSet_HeaderFile
0017 #define _BinTools_CurveSet_HeaderFile
0018
0019 #include <Standard.hxx>
0020 #include <Standard_DefineAlloc.hxx>
0021 #include <Standard_Handle.hxx>
0022
0023 #include <Standard_Transient.hxx>
0024 #include <NCollection_IndexedMap.hxx>
0025 #include <Standard_Integer.hxx>
0026 #include <Standard_OStream.hxx>
0027 #include <Standard_IStream.hxx>
0028
0029 #include <Message_ProgressRange.hxx>
0030 #include <BinTools_OStream.hxx>
0031
0032 class Geom_Curve;
0033
0034
0035 class BinTools_CurveSet
0036 {
0037 public:
0038 DEFINE_STANDARD_ALLOC
0039
0040
0041 Standard_EXPORT BinTools_CurveSet();
0042
0043
0044 Standard_EXPORT void Clear();
0045
0046
0047
0048 Standard_EXPORT int Add(const occ::handle<Geom_Curve>& C);
0049
0050
0051 Standard_EXPORT occ::handle<Geom_Curve> Curve(const int I) const;
0052
0053
0054 Standard_EXPORT int Index(const occ::handle<Geom_Curve>& C) const;
0055
0056
0057
0058 Standard_EXPORT void Write(Standard_OStream& OS,
0059 const Message_ProgressRange& theRange = Message_ProgressRange()) const;
0060
0061
0062
0063 Standard_EXPORT void Read(Standard_IStream& IS,
0064 const Message_ProgressRange& theRange = Message_ProgressRange());
0065
0066
0067
0068 Standard_EXPORT static void WriteCurve(const occ::handle<Geom_Curve>& C, BinTools_OStream& OS);
0069
0070
0071
0072
0073 Standard_EXPORT static Standard_IStream& ReadCurve(Standard_IStream& IS,
0074 occ::handle<Geom_Curve>& C);
0075
0076 private:
0077 NCollection_IndexedMap<occ::handle<Standard_Transient>> myMap;
0078 };
0079
0080 #endif