blob: d541f7f415b7837586ae8d00df0e658c513c411a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
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;
|