Monado OpenXR Runtime
xrt_gfx_d3d12.h
Go to the documentation of this file.
1// Copyright 2022, Collabora, Ltd.
2// SPDX-License-Identifier: BSL-1.0
3/*!
4 * @file
5 * @brief Header defining a D3D12 graphics interface
6 * @author Rylie Pavlik <rylie.pavlik@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#include "xrt/xrt_config_have.h"
15#include "xrt/xrt_windows.h"
16
17#if defined(XRT_HAVE_D3D12)
18#include "d3d12.h"
19#elif defined(XRT_DOXYGEN)
20struct ID3D12Device;
21struct ID3D12CommandQueue;
22#endif
23
24#ifdef __cplusplus
25extern "C" {
26#endif
27
28#if defined(XRT_OS_WINDOWS) || defined(XRT_DOXYGEN)
29
30/*!
31 * Create a D3D12 compositor client.
32 *
33 * @ingroup xrt_iface
34 * @public @memberof xrt_compositor_native
35 */
37xrt_gfx_d3d12_provider_create(struct xrt_compositor_native *xcn, ID3D12Device *device, ID3D12CommandQueue *queue);
38
39#endif // XRT_OS_WINDOWS || XRT_DOXYGEN
40
41#ifdef __cplusplus
42}
43#endif
struct xrt_compositor_d3d12 * xrt_gfx_d3d12_provider_create(struct xrt_compositor_native *xcn, ID3D12Device *device, ID3D12CommandQueue *queue)
Create a D3D12 compositor client.
Definition: comp_d3d12_glue.c:16
Base class for a D3D12 client compositor.
Definition: xrt_compositor.h:2134
Main compositor server interface.
Definition: xrt_compositor.h:2224
Header declaring XRT graphics interfaces.
Header defining an xrt display or controller device.
A minimal way to include Windows.h.