Monado OpenXR Runtime
oxr_api_action.c File Reference

Action related API entrypoint functions. More...

#include "oxr_objects.h"
#include "oxr_logger.h"
#include "oxr_handle.h"
#include "util/u_debug.h"
#include "util/u_trace_marker.h"
#include "oxr_api_funcs.h"
#include "oxr_api_verify.h"
#include "oxr_chain.h"
#include "oxr_subaction.h"
#include <stdio.h>
#include <inttypes.h>
#include "bindings/b_generated_bindings.h"
Include dependency graph for oxr_api_action.c:

Macros

#define EXT_NOT_SUPPORTED(EXT)
 
#define EXT_CHK_ENABLED(EXT)
 
#define COMPUTE_FAIL(X)
 

Typedefs

typedef bool(* path_verify_fn_t) (const struct oxr_verify_extension_status *, const char *, size_t)
 

Functions

XRAPI_ATTR XrResult XRAPI_CALL oxr_xrSyncActions (XrSession session, const XrActionsSyncInfo *syncInfo)
 OpenXR API function xrSyncActions. More...
 
XRAPI_ATTR XrResult XRAPI_CALL oxr_xrAttachSessionActionSets (XrSession session, const XrSessionActionSetsAttachInfo *bindInfo)
 OpenXR API function xrAttachSessionActionSets. More...
 
XRAPI_ATTR XrResult XRAPI_CALL oxr_xrSuggestInteractionProfileBindings (XrInstance instance, const XrInteractionProfileSuggestedBinding *suggestedBindings)
 OpenXR API function xrSuggestInteractionProfileBindings. More...
 
XRAPI_ATTR XrResult XRAPI_CALL oxr_xrGetCurrentInteractionProfile (XrSession session, XrPath topLevelUserPath, XrInteractionProfileState *interactionProfile)
 OpenXR API function xrGetCurrentInteractionProfile. More...
 
XRAPI_ATTR XrResult XRAPI_CALL oxr_xrGetInputSourceLocalizedName (XrSession session, const XrInputSourceLocalizedNameGetInfo *getInfo, uint32_t bufferCapacityInput, uint32_t *bufferCountOutput, char *buffer)
 OpenXR API function xrGetInputSourceLocalizedName. More...
 
XRAPI_ATTR XrResult XRAPI_CALL oxr_xrCreateActionSet (XrInstance instance, const XrActionSetCreateInfo *createInfo, XrActionSet *actionSet)
 OpenXR API function xrCreateActionSet. More...
 
XRAPI_ATTR XrResult XRAPI_CALL oxr_xrDestroyActionSet (XrActionSet actionSet)
 OpenXR API function xrDestroyActionSet. More...
 
XRAPI_ATTR XrResult XRAPI_CALL oxr_xrCreateAction (XrActionSet actionSet, const XrActionCreateInfo *createInfo, XrAction *action)
 OpenXR API function xrCreateAction. More...
 
XRAPI_ATTR XrResult XRAPI_CALL oxr_xrDestroyAction (XrAction action)
 OpenXR API function xrDestroyAction. More...
 
XRAPI_ATTR XrResult XRAPI_CALL oxr_xrGetActionStateBoolean (XrSession session, const XrActionStateGetInfo *getInfo, XrActionStateBoolean *data)
 OpenXR API function xrGetActionStateBoolean. More...
 
XRAPI_ATTR XrResult XRAPI_CALL oxr_xrGetActionStateFloat (XrSession session, const XrActionStateGetInfo *getInfo, XrActionStateFloat *data)
 OpenXR API function xrGetActionStateFloat. More...
 
XRAPI_ATTR XrResult XRAPI_CALL oxr_xrGetActionStateVector2f (XrSession session, const XrActionStateGetInfo *getInfo, XrActionStateVector2f *data)
 OpenXR API function xrGetActionStateVector2f. More...
 
XRAPI_ATTR XrResult XRAPI_CALL oxr_xrGetActionStatePose (XrSession session, const XrActionStateGetInfo *getInfo, XrActionStatePose *data)
 OpenXR API function xrGetActionStatePose. More...
 
XRAPI_ATTR XrResult XRAPI_CALL oxr_xrEnumerateBoundSourcesForAction (XrSession session, const XrBoundSourcesForActionEnumerateInfo *enumerateInfo, uint32_t sourceCapacityInput, uint32_t *sourceCountOutput, XrPath *sources)
 OpenXR API function xrEnumerateBoundSourcesForAction. More...
 
XRAPI_ATTR XrResult XRAPI_CALL oxr_xrApplyHapticFeedback (XrSession session, const XrHapticActionInfo *hapticActionInfo, const XrHapticBaseHeader *hapticEvent)
 OpenXR API function xrApplyHapticFeedback. More...
 
XRAPI_ATTR XrResult XRAPI_CALL oxr_xrStopHapticFeedback (XrSession session, const XrHapticActionInfo *hapticActionInfo)
 OpenXR API function xrStopHapticFeedback. More...
 

Detailed Description

Macro Definition Documentation

◆ COMPUTE_FAIL

#define COMPUTE_FAIL (   X)
Value:
if (topLevelUserPath == inst->path_cache.X) { \
fail = false; \
}

◆ EXT_CHK_ENABLED

#define EXT_CHK_ENABLED (   EXT)
Value:
do { \
if (!inst->extensions.EXT) { \
return oxr_error(&log, XR_ERROR_PATH_UNSUPPORTED, \
"(suggestedBindings->interactionProfile == \"%s\") used but XR_" #EXT \
" not enabled", \
ip_str); \
} \
} while (false)
XrResult oxr_error(struct oxr_logger *logger, XrResult result, const char *fmt,...)
Definition: oxr_logger.c:203

◆ EXT_NOT_SUPPORTED

#define EXT_NOT_SUPPORTED (   EXT)
Value:
do { \
return oxr_error(&log, XR_ERROR_PATH_UNSUPPORTED, \
"(suggestedBindings->interactionProfile == \"%s\") used but XR_" #EXT \
" not supported by runtime", \
ip_str); \
} while (false)