00001
00002
00003
00004
00005
00006
00007
00008 #ifndef _CONTENTDIRECTORY_H
00009 #define _CONTENTDIRECTORY_H
00010
00011 #include <upnp/upnp.h>
00012 #include "upnpservice.h"
00013 #include "../database/metadata.h"
00014
00021 class cContentDirectory : public cUpnpService, public cThread {
00022 public:
00029 cContentDirectory(
00030 UpnpDevice_Handle DeviceHandle,
00031 cMediaDatabase* MediaDatabase
00032 );
00033 virtual ~cContentDirectory();
00035 virtual int subscribe(Upnp_Subscription_Request* Request);
00037 virtual int execute(Upnp_Action_Request* Request);
00039 virtual void setError(Upnp_Action_Request* Request, int Error);
00040 private:
00041 cMediaDatabase* mMediaDatabase;
00042 void Action();
00043 int getSearchCapabilities(Upnp_Action_Request* Request);
00044 int getSortCapabilities(Upnp_Action_Request* Request);
00045 int getSystemUpdateID(Upnp_Action_Request* Request);
00046 int browse(Upnp_Action_Request* Request);
00047
00048
00049
00050
00051
00052
00053 };
00054
00055 #endif
00056