diff options
author | Jef <jef@targetspot.com> | 2024-09-24 08:54:57 -0400 |
---|---|---|
committer | Jef <jef@targetspot.com> | 2024-09-24 08:54:57 -0400 |
commit | 20d28e80a5c861a9d5f449ea911ab75b4f37ad0d (patch) | |
tree | 12f17f78986871dd2cfb0a56e5e93b545c1ae0d0 /Src/Plugins/SDK/plLoadEx/SimpleHandler.cpp | |
parent | 537bcbc86291b32fc04ae4133ce4d7cac8ebe9a7 (diff) | |
download | winamp-20d28e80a5c861a9d5f449ea911ab75b4f37ad0d.tar.gz |
Initial community commit
Diffstat (limited to 'Src/Plugins/SDK/plLoadEx/SimpleHandler.cpp')
-rw-r--r-- | Src/Plugins/SDK/plLoadEx/SimpleHandler.cpp | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/Src/Plugins/SDK/plLoadEx/SimpleHandler.cpp b/Src/Plugins/SDK/plLoadEx/SimpleHandler.cpp new file mode 100644 index 00000000..d541f7f4 --- /dev/null +++ b/Src/Plugins/SDK/plLoadEx/SimpleHandler.cpp @@ -0,0 +1,45 @@ +#include "SimpleHandler.h" +#include "SimpleLoader.h" +const wchar_t *Cef_Handler::EnumerateExtensions(size_t n) +{ + if (n == 0) + return L"simple"; + else + return 0; +} + +const wchar_t *Cef_Handler::GetName() +{ + return L"Simple Playlist Loader"; +} + +int Cef_Handler::SupportedFilename(const wchar_t *filename) +{ + size_t filenameLength = wcslen(filename); + size_t extensionLength = wcslen(L".simple"); + if (filenameLength < extensionLength) return SVC_PLAYLISTHANDLER_FAILED; // too short + if (!wcsicmp(filename + filenameLength - extensionLength, L".simple")) + return SVC_PLAYLISTHANDLER_SUCCESS; + else + return SVC_PLAYLISTHANDLER_FAILED; +} + +ifc_playlistloader *Cef_Handler::CreateLoader(const wchar_t *filename) +{ + return new SimpleLoader(); +} + +void Cef_Handler::ReleaseLoader(ifc_playlistloader *loader) +{ + delete (SimpleLoader *)loader; +} + +// Define the dispatch table +#define CBCLASS Cef_Handler +START_DISPATCH; +CB(SVC_PLAYLISTHANDLER_ENUMEXTENSIONS, EnumerateExtensions) +CB(SVC_PLAYLISTHANDLER_SUPPORTFILENAME, SupportedFilename) +CB(SVC_PLAYLISTHANDLER_CREATELOADER, CreateLoader) +VCB(SVC_PLAYLISTHANDLER_RELEASELOADER, ReleaseLoader) +CB(SVC_PLAYLISTHANDLER_GETNAME, GetName) +END_DISPATCH;
\ No newline at end of file |