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