/* SPDX-FileCopyrightText: 2013 Martin Gräßlin SPDX-FileCopyrightText: 2023 David Redondo SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL */ #pragma once #include "logging.h" #include #include #include #include class ShmBuffer : public QtWayland::wl_buffer { public: ShmBuffer(::wl_buffer *buffer); ~ShmBuffer(); }; class Shm : public QWaylandClientExtensionTemplate, public QtWayland::wl_shm { public: static Shm *instance(); ~Shm(); std::unique_ptr createBuffer(const QImage &image); private: Shm(QObject *parent); };