winamp/Src/replicant/file/svc_filerawreader.h
2024-09-24 14:54:57 +02:00

31 lines
1 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;
};