1 /*
2 KWin - the KDE window manager
3 This file is part of the KDE project.
4
5 SPDX-FileCopyrightText: 2020 Aleix Pol Gonzalez <aleixpol@kde.org>
6
7 SPDX-License-Identifier: GPL-2.0-or-later
8 */
9
10 #include "kwineglimagetexture.h"
11
12 #include <QDebug>
13 #include <epoxy/egl.h>
14
15 namespace KWin
16 {
17
EGLImageTexture(EGLDisplay display,EGLImage image,int internalFormat,const QSize & size)18 EGLImageTexture::EGLImageTexture(EGLDisplay display, EGLImage image, int internalFormat, const QSize &size)
19 : GLTexture(internalFormat, size, 1, true)
20 , m_image(image)
21 , m_display(display)
22 {
23 if (m_image == EGL_NO_IMAGE_KHR) {
24 return;
25 }
26
27 bind();
28 glEGLImageTargetTexture2DOES(GL_TEXTURE_2D, m_image);
29 }
30
~EGLImageTexture()31 EGLImageTexture::~EGLImageTexture()
32 {
33 eglDestroyImageKHR(m_display, m_image);
34 }
35
36 } // namespace KWin
37