123456789101112131415161718192021222324 |
- #pragma once
- #include "../Components/wac_downloadManager/DownloadCallbackT.h"
- class SongDownloader : public DownloadCallbackT<SongDownloader>
- {
- public:
- SongDownloader(const wchar_t *filename, HANDLE done_event, void (*callback)(void *callbackContext, wchar_t *status), void *context);
- ~SongDownloader();
- void OnInit(DownloadToken token);
- void OnData(DownloadToken token, void *data, size_t datalen);
- void OnCancel(DownloadToken token);
- void OnError(DownloadToken token, int error);
- void OnFinish(DownloadToken token);
- private:
- void (*callback)(void *callbackContext, wchar_t *status);
- void *context;
- HANDLE hFile, done_event;
- uint64_t content_length;
- uint64_t bytes_downloaded;
- };
|