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