org.lwjgl.openxr.FBSwapchainUpdateState Maven / Gradle / Ivy
Show all versions of lwjgl-openxr Show documentation
/*
* Copyright LWJGL. All rights reserved.
* License terms: https://www.lwjgl.org/license
* MACHINE GENERATED FILE, DO NOT EDIT
*/
package org.lwjgl.openxr;
import org.lwjgl.system.*;
import static org.lwjgl.system.Checks.*;
import static org.lwjgl.system.JNI.*;
/**
* The XR_FB_swapchain_update_state extension.
*
* This extension enables the application to modify and query specific mutable state associated with a swapchain.
*
* In order to enable the functionality of this extension, the application must pass the name of the extension into {@link XR10#xrCreateInstance CreateInstance} via the {@link XrInstanceCreateInfo}{@code ::enabledExtensionNames} parameter as indicated in the extension section.
*/
public class FBSwapchainUpdateState {
/** The extension specification version. */
public static final int XR_FB_swapchain_update_state_SPEC_VERSION = 3;
/** The extension name. */
public static final String XR_FB_SWAPCHAIN_UPDATE_STATE_EXTENSION_NAME = "XR_FB_swapchain_update_state";
protected FBSwapchainUpdateState() {
throw new UnsupportedOperationException();
}
// --- [ xrUpdateSwapchainFB ] ---
/** Unsafe version of: {@link #xrUpdateSwapchainFB UpdateSwapchainFB} */
public static int nxrUpdateSwapchainFB(XrSwapchain swapchain, long state) {
long __functionAddress = swapchain.getCapabilities().xrUpdateSwapchainFB;
if (CHECKS) {
check(__functionAddress);
}
return callPPI(swapchain.address(), state, __functionAddress);
}
/**
* Updates state for the corresponding swapchain.
*
* C Specification
*
* The {@link #xrUpdateSwapchainFB UpdateSwapchainFB} function is defined as:
*
*
* XrResult xrUpdateSwapchainFB(
* XrSwapchain swapchain,
* const XrSwapchainStateBaseHeaderFB* state);
*
* Description
*
* {@link #xrUpdateSwapchainFB UpdateSwapchainFB} provides support for an application to update specific mutable state associated with an {@code XrSwapchain}.
*
* Valid Usage (Implicit)
*
*
* - The {@link FBSwapchainUpdateState XR_FB_swapchain_update_state} extension must be enabled prior to calling {@link #xrUpdateSwapchainFB UpdateSwapchainFB}
* - {@code swapchain} must be a valid {@code XrSwapchain} handle
* - {@code state} must be a pointer to a valid {@link XrSwapchainStateBaseHeaderFB}-based structure. See also: {@link XrSwapchainStateFoveationFB}, {@link XrSwapchainStateSamplerOpenGLESFB}, {@link XrSwapchainStateSamplerVulkanFB}
*
*
* Return Codes
*
*
* - On success, this command returns
*
* - {@link XR10#XR_SUCCESS SUCCESS}
* - {@link XR10#XR_SESSION_LOSS_PENDING SESSION_LOSS_PENDING}
*
* - On failure, this command returns
*
* - {@link XR10#XR_ERROR_FUNCTION_UNSUPPORTED ERROR_FUNCTION_UNSUPPORTED}
* - {@link XR10#XR_ERROR_VALIDATION_FAILURE ERROR_VALIDATION_FAILURE}
* - {@link XR10#XR_ERROR_RUNTIME_FAILURE ERROR_RUNTIME_FAILURE}
* - {@link XR10#XR_ERROR_HANDLE_INVALID ERROR_HANDLE_INVALID}
* - {@link XR10#XR_ERROR_INSTANCE_LOST ERROR_INSTANCE_LOST}
* - {@link XR10#XR_ERROR_SESSION_LOST ERROR_SESSION_LOST}
*
*
*
* See Also
*
* {@link XrSwapchainStateBaseHeaderFB}, {@link XR10#xrCreateSwapchain CreateSwapchain}
*
* @param swapchain the {@code XrSwapchain} to update state for.
* @param state a pointer to a {@code XrSwapchainState} structure based off of {@link XrSwapchainStateBaseHeaderFB}.
*/
@NativeType("XrResult")
public static int xrUpdateSwapchainFB(XrSwapchain swapchain, @NativeType("XrSwapchainStateBaseHeaderFB const *") XrSwapchainStateBaseHeaderFB state) {
return nxrUpdateSwapchainFB(swapchain, state.address());
}
// --- [ xrGetSwapchainStateFB ] ---
/** Unsafe version of: {@link #xrGetSwapchainStateFB GetSwapchainStateFB} */
public static int nxrGetSwapchainStateFB(XrSwapchain swapchain, long state) {
long __functionAddress = swapchain.getCapabilities().xrGetSwapchainStateFB;
if (CHECKS) {
check(__functionAddress);
}
return callPPI(swapchain.address(), state, __functionAddress);
}
/**
* Query state for the corresponding swapchain.
*
* C Specification
*
* The {@link #xrGetSwapchainStateFB GetSwapchainStateFB} function is defined as:
*
*
* XrResult xrGetSwapchainStateFB(
* XrSwapchain swapchain,
* XrSwapchainStateBaseHeaderFB* state);
*
* Description
*
* {@link #xrGetSwapchainStateFB GetSwapchainStateFB} provides support for an application to query specific mutable state associated with an {@code XrSwapchain}.
*
* Valid Usage (Implicit)
*
*
* - The {@link FBSwapchainUpdateState XR_FB_swapchain_update_state} extension must be enabled prior to calling {@link #xrGetSwapchainStateFB GetSwapchainStateFB}
* - {@code swapchain} must be a valid {@code XrSwapchain} handle
* - {@code state} must be a pointer to an {@link XrSwapchainStateBaseHeaderFB}-based structure. See also: {@link XrSwapchainStateFoveationFB}, {@link XrSwapchainStateSamplerOpenGLESFB}, {@link XrSwapchainStateSamplerVulkanFB}
*
*
* Return Codes
*
*
* - On success, this command returns
*
* - {@link XR10#XR_SUCCESS SUCCESS}
* - {@link XR10#XR_SESSION_LOSS_PENDING SESSION_LOSS_PENDING}
*
* - On failure, this command returns
*
* - {@link XR10#XR_ERROR_FUNCTION_UNSUPPORTED ERROR_FUNCTION_UNSUPPORTED}
* - {@link XR10#XR_ERROR_VALIDATION_FAILURE ERROR_VALIDATION_FAILURE}
* - {@link XR10#XR_ERROR_RUNTIME_FAILURE ERROR_RUNTIME_FAILURE}
* - {@link XR10#XR_ERROR_HANDLE_INVALID ERROR_HANDLE_INVALID}
* - {@link XR10#XR_ERROR_INSTANCE_LOST ERROR_INSTANCE_LOST}
* - {@link XR10#XR_ERROR_SESSION_LOST ERROR_SESSION_LOST}
*
*
*
* See Also
*
* {@link XrSwapchainStateBaseHeaderFB}, {@link XR10#xrCreateSwapchain CreateSwapchain}, {@link #xrUpdateSwapchainFB UpdateSwapchainFB}
*
* @param swapchain the {@code XrSwapchain} to update state for.
* @param state a pointer to a {@code XrSwapchainState} structure based off of {@link XrSwapchainStateBaseHeaderFB}.
*/
@NativeType("XrResult")
public static int xrGetSwapchainStateFB(XrSwapchain swapchain, @NativeType("XrSwapchainStateBaseHeaderFB *") XrSwapchainStateBaseHeaderFB state) {
return nxrGetSwapchainStateFB(swapchain, state.address());
}
}