mirror of
https://github.com/WinampDesktop/winamp.git
synced 2024-09-24 15:54:12 +00:00
33 lines
1 KiB
C
33 lines
1 KiB
C
|
#ifndef NULLSOFT_GRACENOTE_GRACENOTEAPI_H
|
||
|
#define NULLSOFT_GRACENOTE_GRACENOTEAPI_H
|
||
|
|
||
|
#include "api_gracenote.h"
|
||
|
#include "../nu/AutoLock.h"
|
||
|
|
||
|
class GracenoteApi : public api_gracenote
|
||
|
{
|
||
|
public:
|
||
|
GracenoteApi();
|
||
|
~GracenoteApi();
|
||
|
ICDDBControl2 *GetCDDB();
|
||
|
ICDDBMusicIDManager3 *GetMusicID(); // TODO: might need to instantiate separate objects because each manager can only have 1 event handler
|
||
|
//ICddbPlaylist25Mgr *GetPlaylistManager();
|
||
|
//int GetPlaylistManagerWithMLDBManager(ICddbPlaylist25Mgr **playlistMg, ICddbMLDBManager **mldbMgr);
|
||
|
int GetPlaylistManager(ICddbPlaylist25Mgr **playlistMg, ICddbMLDBManager **mldbMgr);
|
||
|
ICddbMLDBManager *GetMLDBManager();
|
||
|
void Close();
|
||
|
|
||
|
/* Some utility functions */
|
||
|
HRESULT CreateFingerprint(ICDDBMusicIDManager *musicID, api_decodefile *decodeApi, ICddbFileInfo *info, const wchar_t *filename, long *killswitch);
|
||
|
private:
|
||
|
bool cddbInitialized, playlistInitialized;
|
||
|
|
||
|
ICDDBControl2 *pCDDBControl;
|
||
|
|
||
|
Nullsoft::Utility::LockGuard cddbGuard;
|
||
|
protected:
|
||
|
RECVS_DISPATCH;
|
||
|
};
|
||
|
|
||
|
extern GracenoteApi gracenoteApi;
|
||
|
#endif
|