XSPFHandler.h 1.1 KB

1234567891011121314151617181920212223
  1. #ifndef NULLSOFT_XSPF_XSPFHANDLER_H
  2. #define NULLSOFT_XSPF_XSPFHANDLER_H
  3. #include "../playlist/svc_playlisthandler.h"
  4. // the "Playlist Handler" is responsible for describing all the capabilities of the playlist format to Winamp
  5. // It is a singleton class (for each playlist type)
  6. // besides informational functions, it contains factory methods for creating playlist loaders and writers
  7. class XSPFHandler : public svc_playlisthandler
  8. {
  9. public:
  10. const wchar_t *EnumerateExtensions(size_t n); // returns 0 when it's done
  11. const char *EnumerateMIMETypes(size_t n); // returns 0 when it's done, returns char * to match HTTP specs
  12. const wchar_t *GetName(); // returns a name suitable for display to user of this playlist form (e.g. PLS Playlist)
  13. int SupportedFilename(const wchar_t *filename); // returns SUCCESS and FAILED, so be careful ...
  14. int SupportedMIMEType(const char *filename); // returns SUCCESS and FAILED, so be careful ...
  15. ifc_playlistloader *CreateLoader(const wchar_t *filename);
  16. void ReleaseLoader(ifc_playlistloader *loader);
  17. protected:
  18. RECVS_DISPATCH; // boiler-plate code for the dispatch-table
  19. };
  20. #endif