summaryrefslogtreecommitdiffstats
path: root/src/gui
diff options
context:
space:
mode:
authorJonas Karlsson <jonas.karlsson@qt.io>2020-12-28 13:38:39 +0100
committerJonas Karlsson <jonas.karlsson@qt.io>2020-12-29 09:59:09 +0100
commita0aafefd009f19b1d66180206507a2b3a3bbda75 (patch)
tree4e9ff5384080e84ad14393ec8cfaa9651849376c /src/gui
parent162a859045ec455321909af6aa03b99d9cbbda6e (diff)
Add QRhiTextureSubresourceUploadDescription QByteArray constructor
Change-Id: I1be4ef1a15c4049f19d0401d6a1a62b3117180a0 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/rhi/qrhi.cpp13
-rw-r--r--src/gui/rhi/qrhi_p.h3
2 files changed, 14 insertions, 2 deletions
diff --git a/src/gui/rhi/qrhi.cpp b/src/gui/rhi/qrhi.cpp
index b29e9bc8f5..786479fccd 100644
--- a/src/gui/rhi/qrhi.cpp
+++ b/src/gui/rhi/qrhi.cpp
@@ -1610,6 +1610,16 @@ QRhiTextureSubresourceUploadDescription::QRhiTextureSubresourceUploadDescription
}
/*!
+ Constructs a mip level description with the image data specified by \a data. This is suitable
+ for floating point and compressed formats as well.
+ */
+QRhiTextureSubresourceUploadDescription::QRhiTextureSubresourceUploadDescription(
+ const QByteArray &data)
+ : m_data(data)
+{
+}
+
+/*!
\class QRhiTextureUploadEntry
\internal
\inmodule QtGui
@@ -5002,7 +5012,8 @@ void QRhiResourceUpdateBatch::uploadTexture(QRhiTexture *tex, const QRhiTextureU
*/
void QRhiResourceUpdateBatch::uploadTexture(QRhiTexture *tex, const QImage &image)
{
- uploadTexture(tex, QRhiTextureUploadEntry(0, 0, image));
+ uploadTexture(tex,
+ QRhiTextureUploadEntry(0, 0, QRhiTextureSubresourceUploadDescription(image)));
}
/*!
diff --git a/src/gui/rhi/qrhi_p.h b/src/gui/rhi/qrhi_p.h
index fc3034c984..14ea81abec 100644
--- a/src/gui/rhi/qrhi_p.h
+++ b/src/gui/rhi/qrhi_p.h
@@ -505,8 +505,9 @@ class Q_GUI_EXPORT QRhiTextureSubresourceUploadDescription
{
public:
QRhiTextureSubresourceUploadDescription() = default;
- QRhiTextureSubresourceUploadDescription(const QImage &image);
+ explicit QRhiTextureSubresourceUploadDescription(const QImage &image);
QRhiTextureSubresourceUploadDescription(const void *data, int size);
+ explicit QRhiTextureSubresourceUploadDescription(const QByteArray &data);
QImage image() const { return m_image; }
void setImage(const QImage &image) { m_image = image; }