videodownloader/network/httpdownloadwithinforequst.h

38 lines
842 B
C
Raw Normal View History

2015-04-22 19:32:04 +02:00
#ifndef HTTPDOWNLOADWITHINFOREQUST_H
#define HTTPDOWNLOADWITHINFOREQUST_H
2015-09-08 17:05:59 +02:00
#include "./httpdownload.h"
2015-04-22 19:32:04 +02:00
#include <QBuffer>
#include <QList>
#include <QMap>
#include <memory>
namespace Network {
2017-05-01 03:22:50 +02:00
class HttpDownloadWithInfoRequst : public HttpDownload {
2015-04-22 19:32:04 +02:00
Q_OBJECT
public:
explicit HttpDownloadWithInfoRequst(const QUrl &url, QObject *parent = nullptr);
~HttpDownloadWithInfoRequst();
2015-10-14 23:08:57 +02:00
virtual Download *infoRequestDownload(bool &success, QString &reasonForFail) = 0;
2015-04-22 19:32:04 +02:00
void doInit();
void abortDownload();
protected:
virtual void evalVideoInformation(Download *, QBuffer *) = 0;
private slots:
void infoRequestChangedStatus(Download *download);
private:
std::unique_ptr<Download> m_infoDownload;
std::unique_ptr<QBuffer> m_infoBuffer;
};
2019-07-20 20:20:58 +02:00
} // namespace Network
2015-04-22 19:32:04 +02:00
#endif // HTTPDOWNLOADWITHINFOREQUST_H