// This file is generated by WOK (CPPExt). // Please do not edit this file; modify original file instead. // The copyright and license terms as defined for the original file apply to // this header file considered to be the "object code" form of the original source. #ifndef _BinTools_ShapeSet_HeaderFile #define _BinTools_ShapeSet_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_Macro_HeaderFile #include #endif #ifndef _TopTools_IndexedMapOfShape_HeaderFile #include #endif #ifndef _BinTools_LocationSet_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif #ifndef _BRep_Builder_HeaderFile #include #endif #ifndef _BinTools_SurfaceSet_HeaderFile #include #endif #ifndef _BinTools_CurveSet_HeaderFile #include #endif #ifndef _BinTools_Curve2dSet_HeaderFile #include #endif #ifndef _TColStd_IndexedMapOfTransient_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _Standard_OStream_HeaderFile #include #endif #ifndef _Standard_IStream_HeaderFile #include #endif #ifndef _TopAbs_ShapeEnum_HeaderFile #include #endif class TopoDS_Shape; class BinTools_LocationSet; //! Writes topology in OStream in binary format
class BinTools_ShapeSet { public: void* operator new(size_t,void* anAddress) { return anAddress; } void* operator new(size_t size) { return Standard::Allocate(size); } void operator delete(void *anAddress) { if (anAddress) Standard::Free((Standard_Address&)anAddress); } //! Builds an empty ShapeSet.
//! Parameter is added for XML Persistence
Standard_EXPORT BinTools_ShapeSet(const Standard_Boolean isWithTriangles = Standard_False); Standard_EXPORT virtual void Delete() ; Standard_EXPORT virtual ~BinTools_ShapeSet(){Delete() ; } Standard_EXPORT void SetFormatNb(const Standard_Integer theFormatNb) ; //! two formats available for the moment:
//! First: does not write CurveOnSurface UV Points into the file
//! on reading calls Check() method.
//! Second: stores CurveOnSurface UV Points.
//! On reading format is recognized from Version string.
Standard_EXPORT Standard_Integer FormatNb() const; //! Clears the content of the set.
Standard_EXPORT virtual void Clear() ; //! Stores and its sub-shape. Returns the index of .
//! The method AddGeometry is called on each sub-shape.
Standard_EXPORT Standard_Integer Add(const TopoDS_Shape& S) ; //! Returns the sub-shape of index .
//!
Standard_EXPORT const TopoDS_Shape& Shape(const Standard_Integer I) const; //! Returns the index of .
Standard_EXPORT Standard_Integer Index(const TopoDS_Shape& S) const; Standard_EXPORT const BinTools_LocationSet& Locations() const; Standard_EXPORT BinTools_LocationSet& ChangeLocations() ; //!Returns number of shapes read from file.
Standard_EXPORT Standard_Integer NbShapes() const; //! Writes the content of me on the stream in binary
//! format that can be read back by Read.
//!
//! Writes the locations.
//!
//! Writes the geometry calling WriteGeometry.
//!
//! Dumps the shapes from last to first.
//! For each shape :
//! Write the type.
//! calls WriteGeometry(S).
//! Write the flags, the subshapes.
Standard_EXPORT virtual void Write(Standard_OStream& OS) const; //! Reads the content of me from the binary stream . me
//! is first cleared.
//!
//! Reads the locations.
//!
//! Reads the geometry calling ReadGeometry.
//!
//! Reads the shapes.
//! For each shape
//! Reads the type.
//! calls ReadGeometry(T,S).
//! Reads the flag, the subshapes.
Standard_EXPORT virtual void Read(Standard_IStream& IS) ; //! Writes on the shape . Writes the
//! orientation, the index of the TShape and the index
//! of the Location.
Standard_EXPORT virtual void Write(const TopoDS_Shape& S,Standard_OStream& OS) const; //! Writes the geometry of me on the stream in a
//! binary format that can be read back by Read.
Standard_EXPORT virtual void WriteGeometry(Standard_OStream& OS) const; //! Reads the geometry of me from the stream .
Standard_EXPORT virtual void ReadGeometry(Standard_IStream& IS) ; //! Reads from a shape and returns it in S.
//! is the number of tshapes in the set.
Standard_EXPORT virtual void Read(TopoDS_Shape& S,Standard_IStream& IS,const Standard_Integer NbShapes) const; //! Writes the geometry of on the stream in a
//! binary format that can be read back by Read.
Standard_EXPORT virtual void WriteGeometry(const TopoDS_Shape& S,Standard_OStream& OS) const; //! Reads the geometry of a shape of type from the
//! stream and returns it in .
Standard_EXPORT virtual void ReadGeometry(const TopAbs_ShapeEnum T,Standard_IStream& IS,TopoDS_Shape& S) ; //! Stores the goemetry of .
Standard_EXPORT virtual void AddGeometry(const TopoDS_Shape& S) ; //! Inserts the shape in the shape .
Standard_EXPORT virtual void AddShapes(TopoDS_Shape& S1,const TopoDS_Shape& S2) ; //! Reads the 3d polygons of me
//! from the stream .
Standard_EXPORT void ReadPolygon3D(Standard_IStream& IS) ; //! Writes the 3d polygons
//! on the stream in a format that can
//! be read back by Read.
Standard_EXPORT void WritePolygon3D(Standard_OStream& OS) const; //! Reads the triangulation of me
//! from the stream .
Standard_EXPORT void ReadTriangulation(Standard_IStream& IS) ; //! Writes the triangulation
//! on the stream in a format that can
//! be read back by Read.
Standard_EXPORT void WriteTriangulation(Standard_OStream& OS) const; //! Reads the polygons on triangulation of me
//! from the stream .
Standard_EXPORT void ReadPolygonOnTriangulation(Standard_IStream& IS) ; //! Writes the polygons on triangulation
//! on the stream in a format that can
//! be read back by Read.
Standard_EXPORT void WritePolygonOnTriangulation(Standard_OStream& OS) const; protected: private: TopTools_IndexedMapOfShape myShapes; BinTools_LocationSet myLocations; Standard_Integer myFormatNb; BRep_Builder myBuilder; BinTools_SurfaceSet mySurfaces; BinTools_CurveSet myCurves; BinTools_Curve2dSet myCurves2d; TColStd_IndexedMapOfTransient myPolygons2D; TColStd_IndexedMapOfTransient myPolygons3D; TColStd_IndexedMapOfTransient myTriangulations; TColStd_IndexedMapOfTransient myNodes; Standard_Boolean myWithTriangles; }; // other Inline functions and methods (like "C++: function call" methods) #endif