File indexing completed on 2025-01-18 10:03:00
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 #ifndef _BinTools_OStream_HeaderFile
0015 #define _BinTools_OStream_HeaderFile
0016
0017 #include <BinTools.hxx>
0018 #include <BinTools_ObjectType.hxx>
0019 #include <TopAbs_ShapeEnum.hxx>
0020 #include <TopAbs_Orientation.hxx>
0021 #include <gp_Pnt.hxx>
0022 #include <Poly_Triangle.hxx>
0023 #include <gp_Vec3f.hxx>
0024
0025
0026
0027 class BinTools_OStream
0028 {
0029 public:
0030
0031
0032 Standard_EXPORT BinTools_OStream (Standard_OStream& theStream);
0033
0034
0035 Standard_EXPORT const uint64_t& Position() { return myPosition; }
0036
0037 Standard_EXPORT void WriteReference (const uint64_t& thePosition);
0038
0039 Standard_EXPORT void WriteShape (const TopAbs_ShapeEnum& theType, const TopAbs_Orientation& theOrientation);
0040
0041
0042
0043 Standard_EXPORT BinTools_OStream& operator << (const BinTools_ObjectType& theType);
0044
0045 Standard_EXPORT BinTools_OStream& operator << (const Standard_Byte& theValue);
0046
0047 Standard_EXPORT BinTools_OStream& operator << (const Standard_Real& theValue);
0048
0049 Standard_EXPORT BinTools_OStream& operator << (const Standard_Boolean& theValue);
0050
0051 Standard_EXPORT BinTools_OStream& operator << (const Standard_Integer& theValue);
0052
0053 Standard_EXPORT BinTools_OStream& operator << (const Standard_ExtCharacter& theValue);
0054
0055 Standard_EXPORT BinTools_OStream& operator << (const gp_Pnt& theValue);
0056
0057 Standard_EXPORT BinTools_OStream& operator << (const gp_Dir& theValue);
0058
0059 Standard_EXPORT BinTools_OStream& operator << (const gp_Pnt2d& theValue);
0060
0061 Standard_EXPORT BinTools_OStream& operator << (const gp_Dir2d& theValue);
0062
0063 Standard_EXPORT BinTools_OStream& operator << (const gp_Trsf& theValue);
0064
0065 Standard_EXPORT BinTools_OStream& operator << (const Poly_Triangle& theValue);
0066
0067 Standard_EXPORT BinTools_OStream& operator << (const gp_Vec3f& theValue);
0068
0069
0070 Standard_EXPORT void PutBools (
0071 const Standard_Boolean theValue1, const Standard_Boolean theValue2, const Standard_Boolean theValue3);
0072
0073
0074 Standard_EXPORT void PutBools (
0075 const Standard_Boolean theValue1, const Standard_Boolean theValue2, const Standard_Boolean theValue3,
0076 const Standard_Boolean theValue4, const Standard_Boolean theValue5, const Standard_Boolean theValue6,
0077 const Standard_Boolean theValue7);
0078
0079 private:
0080 Standard_OStream* myStream;
0081 uint64_t myPosition;
0082 Standard_Real myRealBuf[12];
0083 Standard_Integer myIntBuf[3];
0084 float myFloatBuf[3];
0085 };
0086
0087 #endif