Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:05:31

0001 // Copyright (c) 2022 OPEN CASCADE SAS
0002 //
0003 // This file is part of Open CASCADE Technology software library.
0004 //
0005 // This library is free software; you can redistribute it and/or modify it under
0006 // the terms of the GNU Lesser General Public License version 2.1 as published
0007 // by the Free Software Foundation, with special exception defined in the file
0008 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
0009 // distribution for complete text of the license and disclaimer of any warranty.
0010 //
0011 // Alternatively, this file may be used under the terms of Open CASCADE
0012 // commercial license or contractual agreement.
0013 
0014 #ifndef _Vrml_Provider_HeaderFile
0015 #define _Vrml_Provider_HeaderFile
0016 
0017 #include <DE_Provider.hxx>
0018 
0019 //! The class to transfer VRML files.
0020 //! Reads and Writes any VRML files into/from OCCT.
0021 //! Each operation needs configuration node.
0022 //!
0023 //! Providers grouped by Vendor name and Format type.
0024 //! The Vendor name is "OCC"
0025 //! The Format type is "VRML"
0026 //! The import process is supported.
0027 //! The export process is supported.
0028 class Vrml_Provider : public DE_Provider
0029 {
0030 public:
0031   DEFINE_STANDARD_RTTIEXT(Vrml_Provider, DE_Provider)
0032 
0033 public:
0034 
0035   //! Default constructor
0036   //! Configure translation process with global configuration
0037   Standard_EXPORT Vrml_Provider();
0038 
0039   //! Configure translation process
0040   //! @param[in] theNode object to copy
0041   Standard_EXPORT Vrml_Provider(const Handle(DE_ConfigurationNode)& theNode);
0042 
0043 public:
0044 
0045   //! Reads a CAD file, according internal configuration
0046   //! @param[in] thePath path to the import CAD file
0047   //! @param[out] theDocument document to save result
0048   //! @param[in] theWS current work session
0049   //! @param theProgress[in] progress indicator
0050   //! @return true if Read operation has ended correctly
0051   Standard_EXPORT virtual bool Read(const TCollection_AsciiString& thePath,
0052                                     const Handle(TDocStd_Document)& theDocument,
0053                                     Handle(XSControl_WorkSession)& theWS,
0054                                     const Message_ProgressRange& theProgress = Message_ProgressRange()) Standard_OVERRIDE;
0055 
0056   //! Writes a CAD file, according internal configuration
0057   //! @param[in] thePath path to the export CAD file
0058   //! @param[out] theDocument document to export
0059   //! @param[in] theWS current work session
0060   //! @param theProgress[in] progress indicator
0061   //! @return true if Write operation has ended correctly
0062   Standard_EXPORT virtual bool Write(const TCollection_AsciiString& thePath,
0063                                      const Handle(TDocStd_Document)& theDocument,
0064                                      Handle(XSControl_WorkSession)& theWS,
0065                                      const Message_ProgressRange& theProgress = Message_ProgressRange()) Standard_OVERRIDE;
0066 
0067   //! Reads a CAD file, according internal configuration
0068   //! @param[in] thePath path to the import CAD file
0069   //! @param[out] theDocument document to save result
0070   //! @param theProgress[in] progress indicator
0071   //! @return true if Read operation has ended correctly
0072   Standard_EXPORT virtual bool Read(const TCollection_AsciiString& thePath,
0073                                     const Handle(TDocStd_Document)& theDocument,
0074                                     const Message_ProgressRange& theProgress = Message_ProgressRange()) Standard_OVERRIDE;
0075 
0076   //! Writes a CAD file, according internal configuration
0077   //! @param[in] thePath path to the export CAD file
0078   //! @param[out] theDocument document to export
0079   //! @param theProgress[in] progress indicator
0080   //! @return true if Write operation has ended correctly
0081   Standard_EXPORT virtual bool Write(const TCollection_AsciiString& thePath,
0082                                      const Handle(TDocStd_Document)& theDocument,
0083                                      const Message_ProgressRange& theProgress = Message_ProgressRange()) Standard_OVERRIDE;
0084 
0085   //! Reads a CAD file, according internal configuration
0086   //! @param[in] thePath path to the import CAD file
0087   //! @param[out] theShape shape to save result
0088   //! @param[in] theWS current work session
0089   //! @param theProgress[in] progress indicator
0090   //! @return true if Read operation has ended correctly
0091   Standard_EXPORT virtual bool Read(const TCollection_AsciiString& thePath,
0092                                     TopoDS_Shape& theShape,
0093                                     Handle(XSControl_WorkSession)& theWS,
0094                                     const Message_ProgressRange& theProgress = Message_ProgressRange()) Standard_OVERRIDE;
0095 
0096   //! Writes a CAD file, according internal configuration
0097   //! @param[in] thePath path to the export CAD file
0098   //! @param[out] theShape shape to export
0099   //! @param[in] theWS current work session
0100   //! @param theProgress[in] progress indicator
0101   //! @return true if Write operation has ended correctly
0102   Standard_EXPORT virtual bool Write(const TCollection_AsciiString& thePath,
0103                                      const TopoDS_Shape& theShape,
0104                                      Handle(XSControl_WorkSession)& theWS,
0105                                      const Message_ProgressRange& theProgress = Message_ProgressRange()) Standard_OVERRIDE;
0106 
0107   //! Reads a CAD file, according internal configuration
0108   //! @param[in] thePath path to the import CAD file
0109   //! @param[out] theShape shape to save result
0110   //! @param theProgress[in] progress indicator
0111   //! @return true if Read operation has ended correctly
0112   Standard_EXPORT virtual bool Read(const TCollection_AsciiString& thePath,
0113                                     TopoDS_Shape& theShape,
0114                                     const Message_ProgressRange& theProgress = Message_ProgressRange()) Standard_OVERRIDE;
0115 
0116   //! Writes a CAD file, according internal configuration
0117   //! @param[in] thePath path to the export CAD file
0118   //! @param[out] theShape shape to export
0119   //! @param theProgress[in] progress indicator
0120   //! @return true if Write operation has ended correctly
0121   Standard_EXPORT virtual bool Write(const TCollection_AsciiString& thePath,
0122                                      const TopoDS_Shape& theShape,
0123                                      const Message_ProgressRange& theProgress = Message_ProgressRange()) Standard_OVERRIDE;
0124 
0125 public:
0126 
0127   //! Gets CAD format name of associated provider
0128   //! @return provider CAD format
0129   Standard_EXPORT virtual TCollection_AsciiString GetFormat() const Standard_OVERRIDE;
0130 
0131   //! Gets provider's vendor name of associated provider
0132   //! @return provider's vendor name
0133   Standard_EXPORT virtual TCollection_AsciiString GetVendor() const Standard_OVERRIDE;
0134 };
0135 
0136 #endif // _Vrml_Provider_HeaderFile