Geometrize  1.0
An application for geometrizing images into geometric primitives
downloader.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <functional>
4 #include <memory>
5 
6 #include <QByteArray>
7 #include <QNetworkReply>
8 #include <QObject>
9 
10 namespace geometrize
11 {
12 
13 namespace network
14 {
15 
19 class Downloader : public QObject
20 {
21  Q_OBJECT
22 public:
28  explicit Downloader(const QUrl& url, const std::function<void(Downloader*, QNetworkReply::NetworkError)>& onDownloaded);
29  virtual ~Downloader();
30  Downloader& operator=(const Downloader&) = delete;
31  Downloader(const Downloader&) = delete;
32 
37  QByteArray getDownloadedData() const;
38 
43  QUrl getUrl() const;
44 
45 signals:
51  void signal_downloaded(Downloader* downloader, QNetworkReply::NetworkError error);
52 
53 private:
54  class DownloaderImpl;
55  std::unique_ptr<DownloaderImpl> d;
56 };
57 
58 }
59 
60 }
geometrize::network::Downloader::d
std::unique_ptr< DownloaderImpl > d
Definition: downloader.h:54
geometrize::network::Downloader::DownloaderImpl::operator=
DownloaderImpl & operator=(const DownloaderImpl &)=delete
geometrize::network::Downloader::Downloader
Downloader(const Downloader &)=delete
geometrize::network::Downloader::DownloaderImpl::getDownloadedData
QByteArray getDownloadedData() const
Definition: downloader.cpp:34
geometrize::network::Downloader::signal_downloaded
void signal_downloaded(Downloader *downloader, QNetworkReply::NetworkError error)
signal_downloaded Dispatched after a download completes.
geometrize::network::Downloader::DownloaderImpl::m_downloadedData
QByteArray m_downloadedData
Definition: downloader.cpp:47
geometrize::network::Downloader::DownloaderImpl::~DownloaderImpl
~DownloaderImpl()=default
geometrize::network::Downloader::getDownloadedData
QByteArray getDownloadedData() const
getDownloadedData Gets the data the Downloader has downloaded.
Definition: downloader.cpp:59
geometrize::network::Downloader::operator=
Downloader & operator=(const Downloader &)=delete
geometrize::network::Downloader::DownloaderImpl::getUrl
QUrl getUrl() const
Definition: downloader.cpp:39
geometrize
Definition: commandlineparser.cpp:73
geometrize::network::Downloader::DownloaderImpl::q
Downloader * q
Definition: downloader.cpp:45
geometrize::network::Downloader::~Downloader
virtual ~Downloader()
Definition: downloader.cpp:55
geometrize::network::Downloader::Downloader
Downloader(const QUrl &url, const std::function< void(Downloader *, QNetworkReply::NetworkError)> &onDownloaded)
Downloader Creates a new Downloader.
Definition: downloader.cpp:51
geometrize::network::Downloader::DownloaderImpl::m_url
QUrl m_url
Definition: downloader.cpp:48
downloader.h
geometrize::network::Downloader::DownloaderImpl
Definition: downloader.cpp:13
geometrize::network::Downloader::DownloaderImpl::DownloaderImpl
DownloaderImpl(Downloader *pQ, const QUrl &url, const std::function< void(Downloader *, QNetworkReply::NetworkError)> &onDownloaded)
Definition: downloader.cpp:15
geometrize::network::Downloader::DownloaderImpl::m_webCtrl
QNetworkAccessManager m_webCtrl
Definition: downloader.cpp:46
geometrize::network::Downloader::getUrl
QUrl getUrl() const
getUrl Gets the URL the Downloader was made to download.
Definition: downloader.cpp:64
geometrize::network::Downloader
The Downloader class is a helper class for downloading files over the network.
Definition: downloader.h:20
geometrize::network::Downloader::DownloaderImpl::DownloaderImpl
DownloaderImpl(const DownloaderImpl &)=delete