Monado OpenXR Runtime
|
Holds swapchain related functions. More...
#include "util/u_debug.h"
#include "util/u_misc.h"
#include "oxr_chain.h"
#include "oxr_objects.h"
#include "oxr_logger.h"
#include "oxr_handle.h"
#include "oxr_swapchain_common.h"
#include "oxr_xret.h"
Functions | |
static enum xrt_swapchain_create_flags | convert_create_flags (XrSwapchainCreateFlags xr_flags) |
static enum xrt_swapchain_usage_bits | convert_usage_bits (XrSwapchainUsageFlags xr_usage) |
static XrResult | acquire_image (struct oxr_logger *log, struct oxr_swapchain *sc, const XrSwapchainImageAcquireInfo *acquireInfo, uint32_t *out_index) |
static XrResult | implicit_wait_image (struct oxr_logger *log, struct oxr_swapchain *sc, const XrSwapchainImageWaitInfo *waitInfo) |
static XrResult | implicit_release_image (struct oxr_logger *log, struct oxr_swapchain *sc, const XrSwapchainImageReleaseInfo *releaseInfo) |
static XrResult | destroy (struct oxr_logger *log, struct oxr_swapchain *sc) |
static XrResult | destroy_handle (struct oxr_logger *log, struct oxr_handle_base *hb) |
XrResult | oxr_swapchain_common_acquire (struct oxr_logger *log, struct oxr_swapchain *sc, uint32_t *out_index) |
The shared code of the acquire call used by all graphics APIs. More... | |
XrResult | oxr_swapchain_common_wait (struct oxr_logger *log, struct oxr_swapchain *sc, XrDuration timeout) |
The shared code of the wait call used by all graphics APIs. More... | |
XrResult | oxr_swapchain_common_release (struct oxr_logger *log, struct oxr_swapchain *sc) |
The shared code of the release call used by all graphics APIs. More... | |
XrResult | oxr_swapchain_common_create (struct oxr_logger *log, struct oxr_session *sess, const XrSwapchainCreateInfo *createInfo, struct oxr_swapchain **out_swapchain) |
Shared create function for swapchains, called by graphics API specific implementations list below. More... | |
Holds swapchain related functions.
XrResult oxr_swapchain_common_acquire | ( | struct oxr_logger * | log, |
struct oxr_swapchain * | sc, | ||
uint32_t * | out_index | ||
) |
The shared code of the acquire call used by all graphics APIs.
log | Logger set with the current OpenXR function call context. | |
sc | Swapchain. | |
[out] | out_index | Return of the acquired index. |
References xrt_swapchain::image_count, oxr_error(), and oxr_swapchain::swapchain.
XrResult oxr_swapchain_common_create | ( | struct oxr_logger * | log, |
struct oxr_session * | sess, | ||
const XrSwapchainCreateInfo * | createInfo, | ||
struct oxr_swapchain ** | out_swapchain | ||
) |
Shared create function for swapchains, called by graphics API specific implementations list below.
Does most init, but not xrt_swapchain allocation and other API specific things.
log | Logger set with the current OpenXR function call context. | |
sess | OpenXR session | |
createInfo | Creation info. | |
[out] | out_swapchain | Return of the allocated swapchain. |
References XRT_SUCCESS.
XrResult oxr_swapchain_common_release | ( | struct oxr_logger * | log, |
struct oxr_swapchain * | sc | ||
) |
The shared code of the release call used by all graphics APIs.
log | Logger set with the current OpenXR function call context. |
sc | Swapchain. |
References OXR_CHECK_XRET, oxr_error(), oxr_swapchain::sess, oxr_swapchain::swapchain, and xrt_swapchain::xrt_swapchain_release_image().
XrResult oxr_swapchain_common_wait | ( | struct oxr_logger * | log, |
struct oxr_swapchain * | sc, | ||
XrDuration | timeout | ||
) |
The shared code of the wait call used by all graphics APIs.
log | Logger set with the current OpenXR function call context. |
sc | Swapchain. |
timeout | Return of the acquired index. |