teleport/client/tp-player/downloader.h

41 lines
948 B
C++
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

#ifndef DOWNLOADER_H
#define DOWNLOADER_H
#include <QFile>
#include <QNetworkAccessManager>
class Downloader : public QObject {
Q_OBJECT
public:
// 从url下载数据写入到filename文件中或放入data中。
Downloader();
~Downloader();
bool request(const QString& url, const QString& sid, const QString& filename);
bool request(const QString& url, const QString& sid, QByteArray* data);
void abort();
private:
bool _request(const QString& url, const QString& sid, const QString& filename, QByteArray* data);
private slots:
void _on_data_ready(); // 有数据可读了,读取并写入文件
void _on_finished(); // 下载结束了
private:
QFile m_file;
QByteArray* m_data;
bool m_result;
QNetworkReply* m_reply;
};
typedef struct DownloadParam {
QString url;
QString sid;
QString fname;
}DownloadParam;
#endif