1
0

svc_filerawreader.h 1.0 KB

123456789101112131415161718192021222324252627282930
  1. #pragma once
  2. #include "foundation/dispatch.h"
  3. #include "nx/nxuri.h"
  4. #include "nx/nxfile.h"
  5. #include "foundation/error.h"
  6. #include "decode/ifc_raw_media_reader.h"
  7. #include "metadata/ifc_metadata.h"
  8. // {FF84B47B-5ED4-45E8-B822-0F8FE20F80A8}
  9. static const GUID filerawreader_service_type_guid =
  10. { 0xff84b47b, 0x5ed4, 0x45e8, { 0xb8, 0x22, 0xf, 0x8f, 0xe2, 0xf, 0x80, 0xa8 } };
  11. class NOVTABLE svc_filerawreader : public Wasabi2::Dispatchable
  12. {
  13. protected:
  14. svc_filerawreader() : Dispatchable(DISPATCHABLE_VERSION) {}
  15. ~svc_filerawreader() {}
  16. public:
  17. static GUID GetServiceType() { return filerawreader_service_type_guid; }
  18. int CreateRawMediaReader(ifc_raw_media_reader **reader, nx_uri_t filename, nx_file_t file, ifc_metadata *parent_metadata) { return FileRawReaderService_CreateRawMediaReader(reader, filename, file, parent_metadata); }
  19. enum
  20. {
  21. DISPATCHABLE_VERSION=0,
  22. };
  23. protected:
  24. virtual ns_error_t WASABICALL FileRawReaderService_CreateRawMediaReader(ifc_raw_media_reader **reader, nx_uri_t filename, nx_file_t file, ifc_metadata *parent_metadata)=0;
  25. };