Monado OpenXR Runtime
xrt_gfx_xlib.h
Go to the documentation of this file.
1// Copyright 2019, Collabora, Ltd.
2// SPDX-License-Identifier: BSL-1.0
3/*!
4 * @file
5 * @brief Header defining an XRT graphics provider.
6 * @author Jakob Bornecrantz <jakob@collabora.com>
7 * @ingroup xrt_iface
8 */
9
10#pragma once
11
12#include "xrt/xrt_device.h"
13#include "xrt/xrt_compositor.h"
14
15#ifdef __cplusplus
16extern "C" {
17#endif
18
19
20typedef struct _XDisplay Display; // NOLINT
21typedef void *GLXFBConfig;
22typedef void *GLXDrawable;
23typedef void *GLXContext;
24struct time_state;
25
26/*!
27 * Create an OpenGL compositor client using xlib.
28 *
29 * @ingroup xrt_iface
30 * @public @memberof xrt_compositor_native
31 */
32struct xrt_compositor_gl *
34 Display *xDisplay,
35 uint32_t visualid,
36 GLXFBConfig glxFBConfig,
37 GLXDrawable glxDrawable,
38 GLXContext glxContext);
39
40
41#ifdef __cplusplus
42}
43#endif
struct xrt_compositor_gl * xrt_gfx_provider_create_gl_xlib(struct xrt_compositor_native *xcn, Display *xDisplay, uint32_t visualid, GLXFBConfig glxFBConfig, GLXDrawable glxDrawable, GLXContext glxContext)
Create an OpenGL compositor client using xlib.
Definition: comp_gl_xlib_glue.c:19
Time-keeping state structure.
Definition: u_time.cpp:30
Base class for an OpenGL (ES) client compositor.
Definition: xrt_compositor.h:1960
Main compositor server interface.
Definition: xrt_compositor.h:2224
Header declaring XRT graphics interfaces.
Header defining an xrt display or controller device.