File indexing completed on 2026-09-27 09:18:48
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _PCDM_Reader_HeaderFile
0018 #define _PCDM_Reader_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_Type.hxx>
0022
0023 #include <PCDM_ReaderStatus.hxx>
0024 #include <Standard_Transient.hxx>
0025 #include <Standard_IStream.hxx>
0026 #include <Storage_Data.hxx>
0027 #include <Message_ProgressRange.hxx>
0028
0029 class CDM_Document;
0030 class TCollection_ExtendedString;
0031 class CDM_Application;
0032 class PCDM_ReaderFilter;
0033
0034 class PCDM_Reader : public Standard_Transient
0035 {
0036
0037 public:
0038
0039 Standard_EXPORT virtual void Read(
0040 const TCollection_ExtendedString& aFileName,
0041 const occ::handle<CDM_Document>& aNewDocument,
0042 const occ::handle<CDM_Application>& anApplication,
0043 const occ::handle<PCDM_ReaderFilter>& theFilter = occ::handle<PCDM_ReaderFilter>(),
0044 const Message_ProgressRange& theProgress = Message_ProgressRange()) = 0;
0045
0046 Standard_EXPORT virtual void Read(
0047 Standard_IStream& theIStream,
0048 const occ::handle<Storage_Data>& theStorageData,
0049 const occ::handle<CDM_Document>& theDoc,
0050 const occ::handle<CDM_Application>& theApplication,
0051 const occ::handle<PCDM_ReaderFilter>& theFilter = occ::handle<PCDM_ReaderFilter>(),
0052 const Message_ProgressRange& theProgress = Message_ProgressRange()) = 0;
0053
0054 PCDM_ReaderStatus GetStatus() const;
0055
0056 DEFINE_STANDARD_RTTIEXT(PCDM_Reader, Standard_Transient)
0057
0058 protected:
0059 PCDM_ReaderStatus myReaderStatus;
0060 };
0061
0062 #include <PCDM_Reader.lxx>
0063
0064 #endif