// 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 _STEPCAFControl_Writer_HeaderFile #define _STEPCAFControl_Writer_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_Macro_HeaderFile #include #endif #ifndef _STEPControl_Writer_HeaderFile #include #endif #ifndef _Handle_STEPCAFControl_DictionaryOfExternFile_HeaderFile #include #endif #ifndef _STEPCAFControl_DataMapOfLabelShape_HeaderFile #include #endif #ifndef _STEPCAFControl_DataMapOfLabelExternFile_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _MoniTool_DataMapOfShapeTransient_HeaderFile #include #endif #ifndef _Handle_XSControl_WorkSession_HeaderFile #include #endif #ifndef _IFSelect_ReturnStatus_HeaderFile #include #endif #ifndef _Standard_CString_HeaderFile #include #endif #ifndef _Handle_TDocStd_Document_HeaderFile #include #endif #ifndef _STEPControl_StepModelType_HeaderFile #include #endif #ifndef _Handle_STEPCAFControl_ExternFile_HeaderFile #include #endif class STEPCAFControl_DictionaryOfExternFile; class XSControl_WorkSession; class TDocStd_Document; class TDF_Label; class TCollection_AsciiString; class STEPCAFControl_ExternFile; class STEPControl_Writer; class TDF_LabelSequence; class TopoDS_Shape; //! Provides a tool to write DECAF document to the
//! STEP file. Besides transfer of shapes (including
//! assemblies) provided by STEPControl, supports also
//! colors and part names
class STEPCAFControl_Writer { 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); } //! Creates a writer with an empty
//! STEP model and sets ColorMode, LayerMode, NameMode and
//! PropsMode to Standard_True.
Standard_EXPORT STEPCAFControl_Writer(); //! Creates a reader tool and attaches it to an already existing Session
//! Clears the session if it was not yet set for STEP
//! Clears the internal data structures
Standard_EXPORT STEPCAFControl_Writer(const Handle(XSControl_WorkSession)& WS,const Standard_Boolean scratch = Standard_True); //! Clears the internal data structures and attaches to a new session
//! Clears the session if it was not yet set for STEP
Standard_EXPORT void Init(const Handle(XSControl_WorkSession)& WS,const Standard_Boolean scratch = Standard_True) ; //! Writes all the produced models into file
//! In case of multimodel with extern references,
//! filename will be a name of root file, all other files
//! have names of corresponding parts
//! Provided for use like single-file writer
Standard_EXPORT IFSelect_ReturnStatus Write(const Standard_CString filename) ; Standard_EXPORT Standard_Boolean Transfer(const Handle(TDocStd_Document)& doc,const STEPControl_StepModelType mode = STEPControl_AsIs,const Standard_CString multi = 0) ; //! Transfers a document (or single label) to a STEP model
//! The mode of translation of shape is AsIs
//! If multi is not null pointer, it switches to multifile
//! mode (with external refs), and string pointed by
//! gives prefix for names of extern files (can be empty string)
//! Returns True if translation is OK
Standard_EXPORT Standard_Boolean Transfer(const TDF_Label& L,const STEPControl_StepModelType mode = STEPControl_AsIs,const Standard_CString multi = 0) ; Standard_EXPORT Standard_Boolean Perform(const Handle(TDocStd_Document)& doc,const TCollection_AsciiString& filename) ; //! Transfers a document and writes it to a STEP file
//! Returns True if translation is OK
Standard_EXPORT Standard_Boolean Perform(const Handle(TDocStd_Document)& doc,const Standard_CString filename) ; //! Returns data on external files
//! Returns Null handle if no external files are read
Standard_EXPORT const Handle_STEPCAFControl_DictionaryOfExternFile& ExternFiles() const; //! Returns data on external file by its original label
//! Returns False if no external file with given name is read
Standard_EXPORT Standard_Boolean ExternFile(const TDF_Label& L,Handle(STEPCAFControl_ExternFile)& ef) const; //! Returns data on external file by its name
//! Returns False if no external file with given name is read
Standard_EXPORT Standard_Boolean ExternFile(const Standard_CString name,Handle(STEPCAFControl_ExternFile)& ef) const; //! Returns basic reader for root file
Standard_EXPORT STEPControl_Writer& ChangeWriter() ; //! Returns basic reader as const
Standard_EXPORT const STEPControl_Writer& Writer() const; //! Set ColorMode for indicate write Colors or not.
Standard_EXPORT void SetColorMode(const Standard_Boolean colormode) ; Standard_EXPORT Standard_Boolean GetColorMode() const; //! Set NameMode for indicate write Name or not.
Standard_EXPORT void SetNameMode(const Standard_Boolean namemode) ; Standard_EXPORT Standard_Boolean GetNameMode() const; //! Set LayerMode for indicate write Layers or not.
Standard_EXPORT void SetLayerMode(const Standard_Boolean layermode) ; Standard_EXPORT Standard_Boolean GetLayerMode() const; //! PropsMode for indicate write Validation properties or not.
Standard_EXPORT void SetPropsMode(const Standard_Boolean propsmode) ; Standard_EXPORT Standard_Boolean GetPropsMode() const; //! Set SHUO mode for indicate write SHUO or not.
Standard_EXPORT void SetSHUOMode(const Standard_Boolean shuomode) ; Standard_EXPORT Standard_Boolean GetSHUOMode() const; //! Set dimtolmode for indicate write D>s or not.
Standard_EXPORT void SetDimTolMode(const Standard_Boolean dimtolmode) ; Standard_EXPORT Standard_Boolean GetDimTolMode() const; //! Set dimtolmode for indicate write D>s or not.
Standard_EXPORT void SetMaterialMode(const Standard_Boolean matmode) ; Standard_EXPORT Standard_Boolean GetMaterialMode() const; protected: //! Transfers labels to a STEP model
//! Returns True if translation is OK
//! isExternFile setting from TransferExternFiles method
Standard_EXPORT Standard_Boolean Transfer(STEPControl_Writer& wr,const TDF_LabelSequence& labels,const STEPControl_StepModelType mode = STEPControl_AsIs,const Standard_CString multi = 0,const Standard_Boolean isExternFile = Standard_False) ; //! Parses assembly structure of label L, writes all the simple
//! shapes each to its own file named by name of its label plus
//! prefix
//! Returns shape representing that assembly structure
//! in the form of nested empty compounds (and a sequence of
//! labels which are newly written nodes of this assembly)
Standard_EXPORT TopoDS_Shape TransferExternFiles(const TDF_Label& L,const STEPControl_StepModelType mode,TDF_LabelSequence& Lseq,const Standard_CString prefix = "") ; //! Write external references to STEP
Standard_EXPORT Standard_Boolean WriteExternRefs(const Handle(XSControl_WorkSession)& WS,const TDF_LabelSequence& labels) const; //! Write colors assigned to specified labels, to STEP model
Standard_EXPORT Standard_Boolean WriteColors(const Handle(XSControl_WorkSession)& WS,const TDF_LabelSequence& labels) ; //! Write names assigned to specified labels, to STEP model
Standard_EXPORT Standard_Boolean WriteNames(const Handle(XSControl_WorkSession)& WS,const TDF_LabelSequence& labels) const; //! Write D>s assigned to specified labels, to STEP model
Standard_EXPORT Standard_Boolean WriteDGTs(const Handle(XSControl_WorkSession)& WS,const TDF_LabelSequence& labels) const; //! Write materials assigned to specified labels, to STEP model
Standard_EXPORT Standard_Boolean WriteMaterials(const Handle(XSControl_WorkSession)& WS,const TDF_LabelSequence& labels) const; //! Write validation properties assigned to specified labels,
//! to STEP model
Standard_EXPORT Standard_Boolean WriteValProps(const Handle(XSControl_WorkSession)& WS,const TDF_LabelSequence& labels,const Standard_CString multi) const; //! Write layers assigned to specified labels, to STEP model
Standard_EXPORT Standard_Boolean WriteLayers(const Handle(XSControl_WorkSession)& WS,const TDF_LabelSequence& labels) const; //! Write SHUO assigned to specified component, to STEP model
Standard_EXPORT Standard_Boolean WriteSHUOs(const Handle(XSControl_WorkSession)& WS,const TDF_LabelSequence& labels) ; private: STEPControl_Writer myWriter; Handle_STEPCAFControl_DictionaryOfExternFile myFiles; STEPCAFControl_DataMapOfLabelShape myLabels; STEPCAFControl_DataMapOfLabelExternFile myLabEF; Standard_Boolean myColorMode; Standard_Boolean myNameMode; Standard_Boolean myLayerMode; Standard_Boolean myPropsMode; Standard_Boolean mySHUOMode; MoniTool_DataMapOfShapeTransient myMapCompMDGPR; Standard_Boolean myDGTMode; Standard_Boolean myMatMode; }; // other Inline functions and methods (like "C++: function call" methods) #endif