Krita Source Code Documentation
Loading...
Searching...
No Matches
KisOpenGLContextSwitchLock.h
Go to the documentation of this file.
1
/*
2
* SPDX-FileCopyrightText: 2025 Dmitry Kazakov <dimula73@gmail.com>
3
*
4
* SPDX-License-Identifier: GPL-2.0-or-later
5
*/
6
7
#ifndef KISOPENGLCONTEXTSWITCHLOCK_H
8
#define KISOPENGLCONTEXTSWITCHLOCK_H
9
10
#include <kritaui_export.h>
11
#include <
KisAdaptedLock.h
>
12
13
class
QOpenGLWidget;
14
class
QOpenGLContext;
15
class
QSurface;
16
17
class
KRITAUI_EXPORT
KisOpenGLContextSwitchLockAdapter
18
{
19
public
:
20
KisOpenGLContextSwitchLockAdapter
(QOpenGLWidget *targetWidget);
21
22
void
lock();
23
void
unlock();
24
25
private
:
26
QOpenGLWidget *m_targetWidget {
nullptr
};
27
QOpenGLContext *m_oldContext {
nullptr
};
28
QSurface *m_oldSurface {
nullptr
};
29
};
30
31
class
KRITAUI_EXPORT
KisOpenGLContextSwitchLockAdapterSkipOnQt5
:
public
KisOpenGLContextSwitchLockAdapter
32
{
33
public
:
34
using
KisOpenGLContextSwitchLockAdapter::KisOpenGLContextSwitchLockAdapter
;
35
36
void
lock();
37
void
unlock();
38
};
39
40
KIS_DECLARE_ADAPTED_LOCK
(KisOpenGLContextSwitchLock,
KisOpenGLContextSwitchLockAdapter
)
41
KIS_DECLARE_ADAPTED_LOCK
(KisOpenGLContextSwitchLockSkipOnQt5,
KisOpenGLContextSwitchLockAdapterSkipOnQt5
)
42
43
#endif
// KISOPENGLCONTEXTSWITCHLOCK_H
KisAdaptedLock.h
KIS_DECLARE_ADAPTED_LOCK
#define KIS_DECLARE_ADAPTED_LOCK(Name, Adapter)
Definition
KisAdaptedLock.h:85
KisOpenGLContextSwitchLockAdapterSkipOnQt5
Definition
KisOpenGLContextSwitchLock.h:32
KisOpenGLContextSwitchLockAdapter
Definition
KisOpenGLContextSwitchLock.h:18
KisOpenGLContextSwitchLockAdapter::KisOpenGLContextSwitchLockAdapter
KisOpenGLContextSwitchLockAdapter(QOpenGLWidget *targetWidget)
Definition
KisOpenGLContextSwitchLock.cpp:34
libs
ui
opengl
KisOpenGLContextSwitchLock.h
Generated at
2025-11-04 02:30:02+01:00
from
Krita
branch
master
, commit
c9dde2e79561a8aea4a7e8d9ac99c98a7bac9e52