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 a 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
16 extern "C" {
17 #endif
18 
19 
20 typedef struct _XDisplay Display; // NOLINT
21 typedef void *GLXFBConfig;
22 typedef void *GLXDrawable;
23 typedef void *GLXContext;
24 struct time_state;
25 
26 /*!
27  * Create an OpenGL compositor client using xlib.
28  *
29  * @ingroup xrt_iface
30  * @public @memberof xrt_compositor_native
31  */
32 struct 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:1938
Main compositor server interface.
Definition: xrt_compositor.h:2196
Header declaring XRT graphics interfaces.
Header defining an xrt display or controller device.