AlbumArt.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. #ifndef NULLSOFT_IN_FLAC_ALBUMART_H
  2. #define NULLSOFT_IN_FLAC_ALBUMART_H
  3. #include "../Agave/AlbumArt/svc_albumArtProvider.h"
  4. class FLAC_AlbumArtProvider : public svc_albumArtProvider
  5. {
  6. public:
  7. bool IsMine(const wchar_t *filename);
  8. int ProviderType();
  9. // implementation note: use WASABI_API_MEMMGR to alloc bits and mimetype, so that the recipient can free through that
  10. int GetAlbumArtData(const wchar_t *filename, const wchar_t *type, void **bits, size_t *len, wchar_t **mimeType);
  11. int SetAlbumArtData(const wchar_t *filename, const wchar_t *type, void *bits, size_t len, const wchar_t *mimeType);
  12. int DeleteAlbumArt(const wchar_t *filename, const wchar_t *type);
  13. protected:
  14. RECVS_DISPATCH;
  15. };
  16. #include <api/service/waservicefactory.h>
  17. class AlbumArtFactory : public waServiceFactory
  18. {
  19. public:
  20. FOURCC GetServiceType();
  21. const char *GetServiceName();
  22. GUID GetGUID();
  23. void *GetInterface(int global_lock);
  24. int SupportNonLockingInterface();
  25. int ReleaseInterface(void *ifc);
  26. const char *GetTestString();
  27. int ServiceNotify(int msg, int param1, int param2);
  28. protected:
  29. RECVS_DISPATCH;
  30. };
  31. #endif