#ifndef DOWNLOADMANAGER_H #define DOWNLOADMANAGER_H #include class DownloadManager : public QObject { Q_OBJECT public: DownloadManager(const QUrl& baseUrl); ~DownloadManager(); void get(QString& filename); private: // Object required for downloading. QNetworkAccessManager* qnam; QUrl baseUrl; QQueue dlQ; QNetworkRequest request; QNetworkReply* currentDownload; QFile outfile; QString filename; // Download-in-progress flag. bool dip; signals: void finished(); private slots: void startNextDownload(); void downloadReady(); void downloadProgress(qint64 bytesIn, qint64 bytesTotal); void downloadFinished(); }; #endif // DOWNLOADMANAGER_H