Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/opencascade/DEGLTF_Provider.hxx was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

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 _DEGLTF_Provider_HeaderFile
0015 #define _DEGLTF_Provider_HeaderFile
0016 
0017 #include <DEGLTF_ConfigurationNode.hxx>
0018 #include <DE_Provider.hxx>
0019 #include <RWGltf_CafReader.hxx>
0020 
0021 //! The class to transfer glTF files.
0022 //! Reads and Writes any glTF files into/from OCCT.
0023 //! Each operation needs configuration node.
0024 //!
0025 //! Providers grouped by Vendor name and Format type.
0026 //! The Vendor name is "OCC"
0027 //! The Format type is "GLTF"
0028 //! The import process is supported.
0029 //! The export process is supported.
0030 class DEGLTF_Provider : public DE_Provider
0031 {
0032 public:
0033   DEFINE_STANDARD_RTTIEXT(DEGLTF_Provider, DE_Provider)
0034 
0035 public:
0036   //! Default constructor
0037   //! Configure translation process with global configuration
0038   Standard_EXPORT DEGLTF_Provider();
0039 
0040   //! Configure translation process
0041   //! @param[in] theNode object to copy
0042   Standard_EXPORT DEGLTF_Provider(const Handle(DE_ConfigurationNode)& theNode);
0043 
0044 public:
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[in] theProgress progress indicator
0050   //! @return true if Read operation has ended correctly
0051   Standard_EXPORT virtual bool Read(
0052     const TCollection_AsciiString&  thePath,
0053     const Handle(TDocStd_Document)& theDocument,
0054     Handle(XSControl_WorkSession)&  theWS,
0055     const Message_ProgressRange&    theProgress = Message_ProgressRange()) Standard_OVERRIDE;
0056 
0057   //! Writes a CAD file, according internal configuration
0058   //! @param[in] thePath path to the export CAD file
0059   //! @param[out] theDocument document to export
0060   //! @param[in] theWS current work session
0061   //! @param[in] theProgress progress indicator
0062   //! @return true if Write operation has ended correctly
0063   Standard_EXPORT virtual bool Write(
0064     const TCollection_AsciiString&  thePath,
0065     const Handle(TDocStd_Document)& theDocument,
0066     Handle(XSControl_WorkSession)&  theWS,
0067     const Message_ProgressRange&    theProgress = Message_ProgressRange()) Standard_OVERRIDE;
0068 
0069   //! Reads a CAD file, according internal configuration
0070   //! @param[in] thePath path to the import CAD file
0071   //! @param[out] theDocument document to save result
0072   //! @param[in] theProgress progress indicator
0073   //! @return true if Read operation has ended correctly
0074   Standard_EXPORT virtual bool Read(
0075     const TCollection_AsciiString&  thePath,
0076     const Handle(TDocStd_Document)& theDocument,
0077     const Message_ProgressRange&    theProgress = Message_ProgressRange()) Standard_OVERRIDE;
0078 
0079   //! Writes a CAD file, according internal configuration
0080   //! @param[in] thePath path to the export CAD file
0081   //! @param[out] theDocument document to export
0082   //! @param[in] theProgress progress indicator
0083   //! @return true if Write operation has ended correctly
0084   Standard_EXPORT virtual bool Write(
0085     const TCollection_AsciiString&  thePath,
0086     const Handle(TDocStd_Document)& theDocument,
0087     const Message_ProgressRange&    theProgress = Message_ProgressRange()) Standard_OVERRIDE;
0088 
0089   //! Reads a CAD file, according internal configuration
0090   //! @param[in] thePath path to the import CAD file
0091   //! @param[out] theShape shape to save result
0092   //! @param[in] theWS current work session
0093   //! @param[in] theProgress progress indicator
0094   //! @return true if Read operation has ended correctly
0095   Standard_EXPORT virtual bool Read(
0096     const TCollection_AsciiString& thePath,
0097     TopoDS_Shape&                  theShape,
0098     Handle(XSControl_WorkSession)& theWS,
0099     const Message_ProgressRange&   theProgress = Message_ProgressRange()) Standard_OVERRIDE;
0100 
0101   //! Writes a CAD file, according internal configuration
0102   //! @param[in] thePath path to the export CAD file
0103   //! @param[out] theShape shape to export
0104   //! @param[in] theWS current work session
0105   //! @param[in] theProgress progress indicator
0106   //! @return true if Write operation has ended correctly
0107   Standard_EXPORT virtual bool Write(
0108     const TCollection_AsciiString& thePath,
0109     const TopoDS_Shape&            theShape,
0110     Handle(XSControl_WorkSession)& theWS,
0111     const Message_ProgressRange&   theProgress = Message_ProgressRange()) Standard_OVERRIDE;
0112 
0113   //! Reads a CAD file, according internal configuration
0114   //! @param[in] thePath path to the import CAD file
0115   //! @param[out] theShape shape to save result
0116   //! @param[in] theProgress progress indicator
0117   //! @return true if Read operation has ended correctly
0118   Standard_EXPORT virtual bool Read(
0119     const TCollection_AsciiString& thePath,
0120     TopoDS_Shape&                  theShape,
0121     const Message_ProgressRange&   theProgress = Message_ProgressRange()) Standard_OVERRIDE;
0122 
0123   //! Writes a CAD file, according internal configuration
0124   //! @param[in] thePath path to the export CAD file
0125   //! @param[out] theShape shape to export
0126   //! @param[in] theProgress progress indicator
0127   //! @return true if Write operation has ended correctly
0128   Standard_EXPORT virtual bool Write(
0129     const TCollection_AsciiString& thePath,
0130     const TopoDS_Shape&            theShape,
0131     const Message_ProgressRange&   theProgress = Message_ProgressRange()) Standard_OVERRIDE;
0132 
0133 public:
0134   //! Gets CAD format name of associated provider
0135   //! @return provider CAD format
0136   Standard_EXPORT virtual TCollection_AsciiString GetFormat() const Standard_OVERRIDE;
0137 
0138   //! Gets provider's vendor name of associated provider
0139   //! @return provider's vendor name
0140   Standard_EXPORT virtual TCollection_AsciiString GetVendor() const Standard_OVERRIDE;
0141 };
0142 
0143 #endif // _DEGLTF_Provider_HeaderFile