AlbumArt.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. #ifndef NULLSOFT_IN_MP3_ALBUMART_H
  2. #define NULLSOFT_IN_MP3_ALBUMART_H
  3. #include "../Agave/AlbumArt/svc_albumArtProvider.h"
  4. class MP4_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. #include <api/service/services.h>
  18. class AlbumArtFactory : public waServiceFactory
  19. {
  20. public:
  21. FOURCC GetServiceType();
  22. const char *GetServiceName();
  23. GUID GetGUID();
  24. void *GetInterface(int global_lock);
  25. int SupportNonLockingInterface();
  26. int ReleaseInterface(void *ifc);
  27. const char *GetTestString();
  28. int ServiceNotify(int msg, int param1, int param2);
  29. protected:
  30. RECVS_DISPATCH;
  31. };
  32. #endif