aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs/qmlpuppetcommunication/container/imagecontainer.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs/qmlpuppetcommunication/container/imagecontainer.h')
-rw-r--r--src/libs/qmlpuppetcommunication/container/imagecontainer.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/src/libs/qmlpuppetcommunication/container/imagecontainer.h b/src/libs/qmlpuppetcommunication/container/imagecontainer.h
new file mode 100644
index 0000000000..c6c101ca8c
--- /dev/null
+++ b/src/libs/qmlpuppetcommunication/container/imagecontainer.h
@@ -0,0 +1,44 @@
+// Copyright (C) 2016 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0 WITH Qt-GPL-exception-1.0
+
+#pragma once
+
+#include <QMetaType>
+#include <QImage>
+
+namespace QmlDesigner {
+
+class ImageContainer
+{
+ friend QDataStream &operator>>(QDataStream &in, ImageContainer &container);
+ friend bool operator ==(const ImageContainer &first, const ImageContainer &second);
+ friend bool operator <(const ImageContainer &first, const ImageContainer &second);
+
+public:
+ ImageContainer();
+ ImageContainer(qint32 instanceId, const QImage &image, qint32 keyNumber);
+
+ qint32 instanceId() const;
+ QImage image() const;
+ qint32 keyNumber() const;
+
+ void setImage(const QImage &image);
+
+ static void removeSharedMemorys(const QVector<qint32> &keyNumberVector);
+
+private:
+ QImage m_image;
+ qint32 m_instanceId;
+ qint32 m_keyNumber;
+};
+
+QDataStream &operator<<(QDataStream &out, const ImageContainer &container);
+QDataStream &operator>>(QDataStream &in, ImageContainer &container);
+
+bool operator ==(const ImageContainer &first, const ImageContainer &second);
+bool operator <(const ImageContainer &first, const ImageContainer &second);
+QDebug operator <<(QDebug debug, const ImageContainer &container);
+
+} // namespace QmlDesigner
+
+Q_DECLARE_METATYPE(QmlDesigner::ImageContainer)