KWin
Loading...
Searching...
No Matches
src
backends
x11
standalone
x11_standalone_omlsynccontrolvsyncmonitor.h
Go to the documentation of this file.
1
/*
2
SPDX-FileCopyrightText: 2020 Vlad Zahorodnii <vlad.zahorodnii@kde.org>
3
4
SPDX-License-Identifier: GPL-2.0-or-later
5
*/
6
7
#pragma once
8
9
#include "
utils/vsyncmonitor.h
"
10
11
#include <epoxy/glx.h>
12
#include <fixx11h.h>
13
14
#include <QThread>
15
#include <memory>
16
17
namespace
KWin
18
{
19
24
class
OMLSyncControlVsyncMonitorHelper
:
public
QObject
25
{
26
Q_OBJECT
27
28
public
:
29
explicit
OMLSyncControlVsyncMonitorHelper
();
30
~OMLSyncControlVsyncMonitorHelper
()
override
;
31
32
bool
isValid
()
const
;
33
34
public
Q_SLOTS:
35
void
poll
();
36
37
Q_SIGNALS:
38
void
errorOccurred
();
39
void
vblankOccurred
(std::chrono::nanoseconds timestamp);
40
41
private
:
42
Display
*m_display =
nullptr
;
43
::Window
m_dummyWindow = 0;
44
GLXContext m_localContext = 0;
45
GLXDrawable m_drawable = 0;
46
};
47
56
class
OMLSyncControlVsyncMonitor
:
public
VsyncMonitor
57
{
58
Q_OBJECT
59
60
public
:
61
static
std::unique_ptr<OMLSyncControlVsyncMonitor>
create
();
62
~OMLSyncControlVsyncMonitor
()
override
;
63
64
bool
isValid
()
const
;
65
66
public
Q_SLOTS:
67
void
arm
()
override
;
68
69
private
:
70
explicit
OMLSyncControlVsyncMonitor
();
71
72
QThread m_thread;
73
OMLSyncControlVsyncMonitorHelper
m_helper;
74
};
75
76
}
// namespace KWin
KWin::Display
Class holding the Wayland server display loop.
Definition
display.h:34
KWin::OMLSyncControlVsyncMonitorHelper
Definition
x11_standalone_omlsynccontrolvsyncmonitor.h:25
KWin::OMLSyncControlVsyncMonitorHelper::errorOccurred
void errorOccurred()
KWin::OMLSyncControlVsyncMonitorHelper::poll
void poll()
Definition
x11_standalone_omlsynccontrolvsyncmonitor.cpp:109
KWin::OMLSyncControlVsyncMonitorHelper::isValid
bool isValid() const
Definition
x11_standalone_omlsynccontrolvsyncmonitor.cpp:104
KWin::OMLSyncControlVsyncMonitorHelper::vblankOccurred
void vblankOccurred(std::chrono::nanoseconds timestamp)
KWin::OMLSyncControlVsyncMonitorHelper::OMLSyncControlVsyncMonitorHelper
OMLSyncControlVsyncMonitorHelper()
Definition
x11_standalone_omlsynccontrolvsyncmonitor.cpp:32
KWin::OMLSyncControlVsyncMonitorHelper::~OMLSyncControlVsyncMonitorHelper
~OMLSyncControlVsyncMonitorHelper() override
Definition
x11_standalone_omlsynccontrolvsyncmonitor.cpp:88
KWin::OMLSyncControlVsyncMonitor
Definition
x11_standalone_omlsynccontrolvsyncmonitor.h:57
KWin::OMLSyncControlVsyncMonitor::~OMLSyncControlVsyncMonitor
~OMLSyncControlVsyncMonitor() override
Definition
x11_standalone_omlsynccontrolvsyncmonitor.cpp:137
KWin::OMLSyncControlVsyncMonitor::arm
void arm() override
Definition
x11_standalone_omlsynccontrolvsyncmonitor.cpp:148
KWin::OMLSyncControlVsyncMonitor::create
static std::unique_ptr< OMLSyncControlVsyncMonitor > create()
Definition
x11_standalone_omlsynccontrolvsyncmonitor.cpp:16
KWin::OMLSyncControlVsyncMonitor::isValid
bool isValid() const
Definition
x11_standalone_omlsynccontrolvsyncmonitor.cpp:143
KWin::VsyncMonitor
Definition
vsyncmonitor.h:22
Window
Definition
copy.cpp:16
KWin
Definition
activation_test.cpp:20
vsyncmonitor.h
Generated on Sat Feb 17 2024 01:42:09 for KWin by
1.10.0