31 lines
1.0 KiB
C
31 lines
1.0 KiB
C
|
#pragma once
|
||
|
#include "foundation/dispatch.h"
|
||
|
#include "nx/nxuri.h"
|
||
|
#include "nx/nxfile.h"
|
||
|
#include "foundation/error.h"
|
||
|
#include "decode/ifc_raw_media_reader.h"
|
||
|
#include "metadata/ifc_metadata.h"
|
||
|
|
||
|
// {FF84B47B-5ED4-45E8-B822-0F8FE20F80A8}
|
||
|
static const GUID filerawreader_service_type_guid =
|
||
|
{ 0xff84b47b, 0x5ed4, 0x45e8, { 0xb8, 0x22, 0xf, 0x8f, 0xe2, 0xf, 0x80, 0xa8 } };
|
||
|
|
||
|
class NOVTABLE svc_filerawreader : public Wasabi2::Dispatchable
|
||
|
{
|
||
|
protected:
|
||
|
svc_filerawreader() : Dispatchable(DISPATCHABLE_VERSION) {}
|
||
|
~svc_filerawreader() {}
|
||
|
|
||
|
public:
|
||
|
static GUID GetServiceType() { return filerawreader_service_type_guid; }
|
||
|
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); }
|
||
|
|
||
|
enum
|
||
|
{
|
||
|
DISPATCHABLE_VERSION=0,
|
||
|
};
|
||
|
protected:
|
||
|
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;
|
||
|
};
|
||
|
|