winamp/Src/Wasabi/api/service/svcs/svc_export.h

33 lines
678 B
C++

#ifndef _SVC_EXPORT_H
#define _SVC_EXPORT_H
#include <bfc/dispatch.h>
#include <api/service/services.h>
class svc_fileReader;
class svc_exporter /*: public Dispatchable*/ {
public:
static FOURCC getServiceType() { return WaSvc::EXPORTER; }
virtual int isMine(const char *exportid, const char *family)=0;
virtual svc_fileReader *open()=0;
virtual close(svc_fileReader *reader)=0;
};
class ExporterEnum : public SvcEnumT<svc_exporter> {
public:
ExporterEnum(const char *exportid, const char *family=NULL) :
id(exportid), fam(family) { }
virtual int testService(svc_exporter *svc) {
return svc->isMine(id, fam);
}
private:
String id, fam;
};
#endif