QEverCloud  6.1.0
Unofficial Evernote Cloud API for Qt
Thumbnail.h
Go to the documentation of this file.
1 
9 #ifndef QEVERCLOUD_THUMBNAIL_H
10 #define QEVERCLOUD_THUMBNAIL_H
11 
12 #include "AsyncResult.h"
13 #include "Export.h"
14 
15 #include "generated/Types.h"
16 
17 #include <QByteArray>
18 #include <QNetworkAccessManager>
19 #include <QString>
20 
21 #include <utility>
22 
23 namespace qevercloud {
24 
26 class ThumbnailPrivate;
48 {
49 public:
55  enum class ImageType
56  {
57  PNG,
58  JPEG,
59  GIF,
60  BMP
61  };
62 
63  friend QEVERCLOUD_EXPORT QTextStream & operator<<(
64  QTextStream & strm, const ImageType imageType);
65 
66  friend QEVERCLOUD_EXPORT QDebug & operator<<(
67  QDebug & dbg, const ImageType imageType);
68 
76 
95  QString host, QString shardId, QString authenticationToken,
96  int size = 300, ImageType imageType = ImageType::PNG);
97 
98  virtual ~Thumbnail();
99 
104  Thumbnail & setHost(QString host);
105 
111  Thumbnail & setShardId(QString shardId);
112 
119  Thumbnail & setAuthenticationToken(QString authenticationToken);
120 
126  Thumbnail & setSize(int size);
127 
133 
148  QByteArray download(
149  Guid guid, const bool isPublic = false, const bool isResourceGuid = false,
150  const qint64 timeoutMsec = 30000);
151 
154  Guid guid, const bool isPublic = false, const bool isResourceGuid = false,
155  const qint64 timeoutMsec = 30000);
156 
169  std::pair<QNetworkRequest, QByteArray> createPostRequest(
170  qevercloud::Guid guid, bool isPublic = false, bool isResourceGuid = false);
171 
172 private:
173  ThumbnailPrivate * const d_ptr;
174  Q_DECLARE_PRIVATE(Thumbnail)
175 };
176 
177 } // namespace qevercloud
178 
179 #endif // QEVERCLOUD_THUMBNAIL_H
qevercloud::Thumbnail::~Thumbnail
virtual ~Thumbnail()
qevercloud::Thumbnail::download
QByteArray download(Guid guid, const bool isPublic=false, const bool isResourceGuid=false, const qint64 timeoutMsec=30000)
Downloads the thumbnail for a resource or a note.
Export.h
Types.h
qevercloud::Guid
QString Guid
Definition: Types.h:62
qevercloud::Thumbnail::operator<<
friend QEVERCLOUD_EXPORT QTextStream & operator<<(QTextStream &strm, const ImageType imageType)
qevercloud::Thumbnail::setShardId
Thumbnail & setShardId(QString shardId)
qevercloud
Definition: AsyncResult.h:21
qevercloud::Thumbnail
The class is for downloading thumbnails for notes and resources from Evernote servers.
Definition: Thumbnail.h:48
qevercloud::Thumbnail::ImageType
ImageType
Definition: Thumbnail.h:56
qevercloud::AsyncResult
Returned by asynchonous versions of functions.
Definition: AsyncResult.h:54
qevercloud::Thumbnail::setSize
Thumbnail & setSize(int size)
qevercloud::Thumbnail::Thumbnail
Thumbnail(QString host, QString shardId, QString authenticationToken, int size=300, ImageType imageType=ImageType::PNG)
Constructs Thumbnail.
qevercloud::Thumbnail::setHost
Thumbnail & setHost(QString host)
qevercloud::Thumbnail::setAuthenticationToken
Thumbnail & setAuthenticationToken(QString authenticationToken)
qevercloud::Thumbnail::Thumbnail
Thumbnail()
Default constructor.
qevercloud::Thumbnail::createPostRequest
std::pair< QNetworkRequest, QByteArray > createPostRequest(qevercloud::Guid guid, bool isPublic=false, bool isResourceGuid=false)
Prepares a POST request for a thumbnail download.
qevercloud::Thumbnail::downloadAsync
AsyncResult * downloadAsync(Guid guid, const bool isPublic=false, const bool isResourceGuid=false, const qint64 timeoutMsec=30000)
qevercloud::Thumbnail::operator<<
friend QEVERCLOUD_EXPORT QDebug & operator<<(QDebug &dbg, const ImageType imageType)
QEVERCLOUD_EXPORT
#define QEVERCLOUD_EXPORT
Definition: Export.h:19
qevercloud::Thumbnail::setImageType
Thumbnail & setImageType(ImageType imageType)
AsyncResult.h