From eb75ac2a0b3608dcda454bfe4ac600663a2034ea Mon Sep 17 00:00:00 2001 From: methodus Date: Sun, 30 Sep 2012 17:35:31 +0200 Subject: Working on plugin interface. Created initial structure and makefiles for primary profiler and provider plugins. They shall later handle DVB media streams for live TV and recordings. --- include/media/mediaManager.h | 3 ++- include/plugin.h | 54 ++++++++++++++++++++++---------------------- include/pluginManager.h | 3 ++- 3 files changed, 31 insertions(+), 29 deletions(-) (limited to 'include') diff --git a/include/media/mediaManager.h b/include/media/mediaManager.h index 18cf458..71f6d38 100644 --- a/include/media/mediaManager.h +++ b/include/media/mediaManager.h @@ -16,6 +16,7 @@ #include #include "../../include/plugin.h" #include "../../include/tools.h" +#include "../../include/pluginManager.h" namespace upnp { @@ -123,7 +124,7 @@ private: upnp::cPluginManager* pluginManager; typedef std::map ProviderMap; - typedef std::list> ProfilerList; + typedef std::list > ProfilerList; ProviderMap providers; ProfilerList profilers; diff --git a/include/plugin.h b/include/plugin.h index 6b4a94d..6896ebf 100644 --- a/include/plugin.h +++ b/include/plugin.h @@ -23,38 +23,38 @@ namespace property { namespace object { - static const char* KEY_OBJECTID = "@id"; - static const char* KEY_PARENTID = "@parentID"; - static const char* KEY_TITLE = "dc:title"; - static const char* KEY_CREATOR = "dc:creator"; - static const char* KEY_CLASS = "upnp:class"; - static const char* KEY_RESTRICTED = "@restricted"; - static const char* KEY_CHILD_COUNT = "@childCount"; - static const char* KEY_DESCRIPTION = "dc:description"; - static const char* KEY_LONG_DESCRIPTION = "upnp:longDescription"; - static const char* KEY_DATE = "dc:date"; - static const char* KEY_LANGUAGE = "dc:language"; - static const char* KEY_CHANNEL_NR = "upnp:channelNr"; - static const char* KEY_CHANNEL_NAME = "upnp:channelName"; - static const char* KEY_SCHEDULED_START = "upnp:scheduledStartTime"; - static const char* KEY_SCHEDULED_END = "upnp:scheduledEndTime"; - static const char* KEY_OBJECT_UPDATE_ID = "upnp:objectUpdateID"; - static const char* KEY_CONTAINER_UPDATE_ID= "upnp:containerUpdateID"; + static const char KEY_OBJECTID[] = "@id"; + static const char KEY_PARENTID[] = "@parentID"; + static const char KEY_TITLE[] = "dc:title"; + static const char KEY_CREATOR[] = "dc:creator"; + static const char KEY_CLASS[] = "upnp:class"; + static const char KEY_RESTRICTED[] = "@restricted"; + static const char KEY_CHILD_COUNT[] = "@childCount"; + static const char KEY_DESCRIPTION[] = "dc:description"; + static const char KEY_LONG_DESCRIPTION[] = "upnp:longDescription"; + static const char KEY_DATE[] = "dc:date"; + static const char KEY_LANGUAGE[] = "dc:language"; + static const char KEY_CHANNEL_NR[] = "upnp:channelNr"; + static const char KEY_CHANNEL_NAME[] = "upnp:channelName"; + static const char KEY_SCHEDULED_START[] = "upnp:scheduledStartTime"; + static const char KEY_SCHEDULED_END[] = "upnp:scheduledEndTime"; + static const char KEY_OBJECT_UPDATE_ID[] = "upnp:objectUpdateID"; + static const char KEY_CONTAINER_UPDATE_ID[]= "upnp:containerUpdateID"; } namespace resource { - static const char* KEY_RESOURCE = "res"; - static const char* KEY_PROTOCOL_INFO = "res@protocolInfo"; - static const char* KEY_SIZE = "res@size"; - static const char* KEY_DURATION = "res@duration"; - static const char* KEY_SAMPLE_FREQUENCY = "res@sampleFrequency"; - static const char* KEY_RESOLUTION = "res@resolution"; - static const char* KEY_BITRATE = "res@bitrate"; - static const char* KEY_BITS_PER_SAMPLE = "res@bitsPerSample"; - static const char* KEY_NR_AUDIO_CHANNELS = "res@nrAudioChannels"; - static const char* KEY_COLOR_DEPTH = "res@colorDepth"; + static const char KEY_RESOURCE[] = "res"; + static const char KEY_PROTOCOL_INFO[] = "res@protocolInfo"; + static const char KEY_SIZE[] = "res@size"; + static const char KEY_DURATION[] = "res@duration"; + static const char KEY_SAMPLE_FREQUENCY[] = "res@sampleFrequency"; + static const char KEY_RESOLUTION[] = "res@resolution"; + static const char KEY_BITRATE[] = "res@bitrate"; + static const char KEY_BITS_PER_SAMPLE[] = "res@bitsPerSample"; + static const char KEY_NR_AUDIO_CHANNELS[] = "res@nrAudioChannels"; + static const char KEY_COLOR_DEPTH[] = "res@colorDepth"; } diff --git a/include/pluginManager.h b/include/pluginManager.h index 5c38e34..a40308f 100644 --- a/include/pluginManager.h +++ b/include/pluginManager.h @@ -12,6 +12,7 @@ #include #include #include +#include namespace upnp { @@ -41,7 +42,7 @@ private: FunctionPtr profiler; }; - typedef std::list> DLLList; + typedef std::list< boost::shared_ptr > DLLList; DLLList dlls; cMediaManager* manager; -- cgit v1.2.3