diff options
author | Warren Dukes <warren.dukes@gmail.com> | 2004-05-30 19:13:57 +0000 |
---|---|---|
committer | Warren Dukes <warren.dukes@gmail.com> | 2004-05-30 19:13:57 +0000 |
commit | 8e137ddf8184f6eb8e5655b9323e47b2a8f2eef9 (patch) | |
tree | 323f69cab6f7fefa24497a69b3afa1cd05590cd7 /src/input_plugin.h | |
parent | cfc78c7213c7eab60248fd625b63791fc2909d6f (diff) | |
download | mpd-8e137ddf8184f6eb8e5655b9323e47b2a8f2eef9.tar.gz mpd-8e137ddf8184f6eb8e5655b9323e47b2a8f2eef9.tar.xz mpd-8e137ddf8184f6eb8e5655b9323e47b2a8f2eef9.zip |
start to implement inputPlugin interface
git-svn-id: https://svn.musicpd.org/mpd/trunk@1242 09075e82-0dd4-0310-85a5-a0d7c8717e4f
Diffstat (limited to 'src/input_plugin.h')
-rw-r--r-- | src/input_plugin.h | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/src/input_plugin.h b/src/input_plugin.h deleted file mode 100644 index a84e54944..000000000 --- a/src/input_plugin.h +++ /dev/null @@ -1,61 +0,0 @@ -#ifndef INPUT_PLUGIN_H -#define INPUT_PLUGIN_H - -#include "inputStream.h" -#include "decode.h" -#include "outputBuffer.h" -#include "tag.h" - -#define INPUT_PLUGIN_STREAM_FILE 0x01 -#define INPUT_PLUGIN_STREAM_URL 0x02 - -#define INPUT_PLUGIN_NAME_LENGTH 64 - -typedef int (* InputPlugin_streamDecodeFunc) (OutputBuffer *, DecoderControl *, - InputStream *); - -typedef int (* InputPlugin_fileDecodeFunc) (OutputBuffer *, DecoderControl *); - -typedef MpdTag * (* InputPlugin_tagDupFunc) (char * utf8file); - -typedef struct _InputPlugin { - char name[INPUT_PLUGIN_NAME_LENGTH]; - InputPlugin_streamDecodeFunc streamDecodeFunc; - InputPlugin_fileDecodeFunc fileDecodeFunc; - InputPlugin_tagDupFunc tagDupFunc; - unsigned char streamTypes; - char ** suffixes; - char ** mimeTypes; -} InputPlugin; - -/* interface for adding and removing plugins */ - -InputPlugin * newInputPlugin(); - -void addSuffixToInputPlugin(InputPlugin * inPlugin, char * suffix); - -void addMimeTypeToInputPlugin(InputPlugin * inPlugin, char * suffix); - -void freeInputPlugin(InputPlugin * inputPlugin); - -/* interface for using plugins */ - -InputPlugin * getInputPluginFromSuffix(char * suffix); - -InputPlugin * getInputPluginFromMimeTypes(char * mimeType); - -InputPlugin * getInputPluginFromName(char * name); - -/* this is needed b/c shoutcast and such don't indicate the proper mime type - and don't have a suffix in the url! */ -InputPlugin * getDefaultInputPlugin(); - -/* this is where we "load" all the "plugins" ;-) */ -void initInputPlugins(); - -/* this is where we "unload" all the "plugins" */ -void finishInputPlugins(); - -void unloadInputPlugin(InputPlugin * inputPlugin); - -#endif |