/* SPDX-FileCopyrightText: 2020 Aleix Pol Gonzalez SPDX-License-Identifier: LGPL-2.0-or-later */ #pragma once #include "kwin_export.h" #include "dmabufattributes.h" #include namespace KWin { class GLFramebuffer; class GLTexture; class KWIN_EXPORT DmaBufTexture { public: explicit DmaBufTexture(std::shared_ptr texture, const DmaBufAttributes &attributes); virtual ~DmaBufTexture(); DmaBufAttributes attributes() const; GLTexture *texture() const; GLFramebuffer *framebuffer() const; protected: std::shared_ptr m_texture; std::unique_ptr m_framebuffer; DmaBufAttributes m_attributes; }; }