// 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 _STEPControl_ActorWrite_HeaderFile #define _STEPControl_ActorWrite_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_DefineHandle_HeaderFile #include #endif #ifndef _Handle_STEPControl_ActorWrite_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif #ifndef _Standard_Real_HeaderFile #include #endif #ifndef _STEPConstruct_ContextTool_HeaderFile #include #endif #ifndef _Transfer_ActorOfFinderProcess_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _Handle_Transfer_Finder_HeaderFile #include #endif #ifndef _Handle_Transfer_Binder_HeaderFile #include #endif #ifndef _Handle_Transfer_FinderProcess_HeaderFile #include #endif #ifndef _Handle_StepShape_ShapeDefinitionRepresentation_HeaderFile #include #endif #ifndef _Handle_StepGeom_Axis2Placement3d_HeaderFile #include #endif #ifndef _Handle_TopTools_HSequenceOfShape_HeaderFile #include #endif #ifndef _STEPControl_StepModelType_HeaderFile #include #endif #ifndef _Handle_StepShape_NonManifoldSurfaceShapeRepresentation_HeaderFile #include #endif class Transfer_Finder; class Transfer_Binder; class Transfer_FinderProcess; class StepShape_ShapeDefinitionRepresentation; class StepGeom_Axis2Placement3d; class TopTools_HSequenceOfShape; class TopoDS_Shape; class StepShape_NonManifoldSurfaceShapeRepresentation; //! This class performs the transfer of a Shape from TopoDS
//! to AP203 or AP214 (CD2 or DIS)
class STEPControl_ActorWrite : public Transfer_ActorOfFinderProcess { public: Standard_EXPORT STEPControl_ActorWrite(); Standard_EXPORT virtual Standard_Boolean Recognize(const Handle(Transfer_Finder)& start) ; Standard_EXPORT virtual Handle_Transfer_Binder Transfer(const Handle(Transfer_Finder)& start,const Handle(Transfer_FinderProcess)& FP) ; Standard_EXPORT Handle_Transfer_Binder TransferSubShape(const Handle(Transfer_Finder)& start,const Handle(StepShape_ShapeDefinitionRepresentation)& SDR,Handle(StepGeom_Axis2Placement3d)& AX1,const Handle(Transfer_FinderProcess)& FP,const Handle(TopTools_HSequenceOfShape)& shapeGroup = NULL,const Standard_Boolean isManifold = Standard_True) ; Standard_EXPORT Handle_Transfer_Binder TransferShape(const Handle(Transfer_Finder)& start,const Handle(StepShape_ShapeDefinitionRepresentation)& SDR,const Handle(Transfer_FinderProcess)& FP,const Handle(TopTools_HSequenceOfShape)& shapeGroup = NULL,const Standard_Boolean isManifold = Standard_True) ; Standard_EXPORT Handle_Transfer_Binder TransferCompound(const Handle(Transfer_Finder)& start,const Handle(StepShape_ShapeDefinitionRepresentation)& SDR,const Handle(Transfer_FinderProcess)& FP) ; Standard_EXPORT void SetMode(const STEPControl_StepModelType M) ; Standard_EXPORT STEPControl_StepModelType Mode() const; Standard_EXPORT void SetGroupMode(const Standard_Integer mode) ; Standard_EXPORT Standard_Integer GroupMode() const; Standard_EXPORT void SetTolerance(const Standard_Real Tol) ; //! Customizable method to check whether shape S should
//! be written as assembly or not
//! Default implementation uses flag GroupMode and analyses
//! the shape itself
//! NOTE: this method can modify shape
Standard_EXPORT virtual Standard_Boolean IsAssembly(TopoDS_Shape& S) const; DEFINE_STANDARD_RTTI(STEPControl_ActorWrite) protected: private: //! Non-manifold shapes are stored in NMSSR group
//! (NON_MANIFOLD_SURFACE_SHAPE_REPRESENTATION).
//! Use this method to get the corresponding NMSSR (or
//! to create a new one if doesn't exist yet)
//! (ssv; 13.11.2010)
Standard_EXPORT Handle_StepShape_NonManifoldSurfaceShapeRepresentation getNMSSRForGroup(const Handle(TopTools_HSequenceOfShape)& shapeGroup,const Handle(Transfer_FinderProcess)& FP,Standard_Boolean& isNMSSRCreated) const; Standard_Integer mygroup; Standard_Real mytoler; STEPConstruct_ContextTool myContext; }; // other Inline functions and methods (like "C++: function call" methods) #endif