00001 00002 // Program Name: upnpcdstv.h 00003 // 00004 // Purpose - uPnp Content Directory Extention for Recorded TV 00005 // 00006 // Created By : David Blain Created On : Jan. 24, 2005 00007 // Modified By : Modified On: 00008 // 00010 00011 #ifndef UPnpCDSTV_H_ 00012 #define UPnpCDSTV_H_ 00013 00014 #include "mainserver.h" 00015 #include "upnpcds.h" 00016 00018 // 00020 00021 class UPnpCDSTv : public UPnpCDSExtension 00022 { 00023 private: 00024 00025 static UPnpCDSRootInfo g_RootNodes[]; 00026 static int g_nRootCount; 00027 00028 QStringMap m_mapBackendIp; 00029 QStringMap m_mapBackendPort; 00030 00031 protected: 00032 00033 virtual bool IsBrowseRequestForUs( UPnpCDSRequest *pRequest ); 00034 virtual bool IsSearchRequestForUs( UPnpCDSRequest *pRequest ); 00035 00036 virtual UPnpCDSRootInfo *GetRootInfo (int nIdx); 00037 virtual int GetRootCount ( ); 00038 virtual QString GetTableName ( QString sColumn ); 00039 virtual QString GetItemListSQL( QString sColumn = "" ); 00040 00041 virtual void BuildItemQuery( MSqlQuery &query, 00042 const QStringMap &mapParams ); 00043 00044 virtual void AddItem( const QString &sObjectId, 00045 UPnpCDSExtensionResults *pResults, 00046 bool bAddRef, 00047 MSqlQuery &query ); 00048 00049 public: 00050 00051 UPnpCDSTv( ) : UPnpCDSExtension( "Recordings", "RecTv", 00052 "object.item.videoItem" ) 00053 { 00054 } 00055 00056 virtual ~UPnpCDSTv() {} 00057 }; 00058 00059 #endif
1.5.5