kodi
xbmc
windowing
wayland
WinSystemWaylandEGLContextGLES.h
1
/*
2
* Copyright (C) 2017-2018 Team Kodi
3
* This file is part of Kodi - https://kodi.tv
4
*
5
* SPDX-License-Identifier: GPL-2.0-or-later
6
* See LICENSES/README.md for more information.
7
*/
8
9
#pragma once
10
11
#include "WinSystemWaylandEGLContext.h"
12
#include "rendering/gles/RenderSystemGLES.h"
13
14
namespace
KODI
15
{
16
namespace
WINDOWING
17
{
18
namespace
WAYLAND
19
{
20
21
class
CVaapiProxy;
22
23
class
CWinSystemWaylandEGLContextGLES
:
public
CWinSystemWaylandEGLContext
,
public
CRenderSystemGLES
24
{
25
public
:
26
static
void
Register();
27
static
std::unique_ptr<CWinSystemBase> CreateWinSystem();
28
29
// Implementation of CWinSystemBase via CWinSystemWaylandEGLContext
30
CRenderSystemBase
*GetRenderSystem()
override
{
return
this
; }
31
bool
InitWindowSystem()
override
;
32
33
protected
:
34
bool
CreateContext()
override
;
35
void
SetContextSize(
CSizeInt
size)
override
;
36
void
SetVSyncImpl(
bool
enable)
override
;
37
void
PresentRenderImpl(
bool
rendered)
override
;
38
struct
delete_CVaapiProxy
39
{
40
void
operator()(
CVaapiProxy
*p)
const
;
41
};
42
std::unique_ptr<CVaapiProxy, delete_CVaapiProxy> m_vaapiProxy;
43
};
44
45
}
46
}
47
}
CRenderSystemGLES
Definition:
RenderSystemGLES.h:73
WINDOWING
CRenderSystemBase
Definition:
RenderSystem.h:27
KODI::WINDOWING::WAYLAND::CVaapiProxy
Definition:
OptionalsReg.cpp:95
KODI::WINDOWING::WAYLAND::CWinSystemWaylandEGLContextGLES::delete_CVaapiProxy
Definition:
WinSystemWaylandEGLContextGLES.h:38
KODI
Definition:
AudioDecoder.h:18
KODI::WINDOWING::WAYLAND::CWinSystemWaylandEGLContext
Definition:
WinSystemWaylandEGLContext.h:33
KODI::WINDOWING::WAYLAND::CWinSystemWaylandEGLContextGLES
Definition:
WinSystemWaylandEGLContextGLES.h:23
CSizeGen< int >
Generated by
1.8.13