12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- #pragma once
- #include "device.h"
- #include "../xml/obj_xml.h"
- #include "XMLString.h"
- #include "../Components/wac_downloadManager/DownloadCallbackT.h"
- #include "WifiDevice.h"
- #include "../xml/ifc_xmlreadercallbackT.h"
- #include "main.h"
- #include "InfoDownloader.h" // for InfoXML
- class WifiXML : public ifc_xmlreadercallbackT<WifiXML>
- {
- public:
- WifiXML(obj_xml *parser);
- ~WifiXML();
-
- public:
- void xmlReaderOnStartElementCallback(const wchar_t *xmlpath, const wchar_t *xmltag, ifc_xmlreaderparams *params);
- void xmlReaderOnEndElementCallback(const wchar_t *xmlpath, const wchar_t *xmltag);
- DeviceXML info_xml;
- TemplateDevice::PlaylistsList playlists;
- TemplateDevice::TrackList tracks;
- private:
- obj_xml *parser;
- TemplateDevice *device;
- XMLString artist;
- XMLString album;
- XMLString composer;
- XMLString duration;
- XMLString track;
- XMLString year;
- XMLString size;
- XMLString title;
- XMLString mime_type;
- XMLString modified;
- WifiTrack *wifi_track;
- WifiPlaylist *wifi_playlist;
- };
- class SongListDownloader : public DownloadCallbackT<SongListDownloader>
- {
- public:
- SongListDownloader(const char *root_url, WifiDevice *wifi_device);
- ~SongListDownloader();
- 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:
- obj_xml *parser;
- WifiXML *wifi;
- TemplateDevice *device;
- WifiDevice *wifi_device;
- const char *root_url;
- };
|