Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'intern/ghost/GHOST_Types.h')
-rw-r--r--intern/ghost/GHOST_Types.h33
1 files changed, 20 insertions, 13 deletions
diff --git a/intern/ghost/GHOST_Types.h b/intern/ghost/GHOST_Types.h
index 94a3fd86b73..e46f712cb64 100644
--- a/intern/ghost/GHOST_Types.h
+++ b/intern/ghost/GHOST_Types.h
@@ -669,6 +669,14 @@ typedef struct {
void *exit_customdata;
} GHOST_XrSessionBeginInfo;
+/** Texture format for XR swapchain. */
+typedef enum GHOST_TXrSwapchainFormat {
+ GHOST_kXrSwapchainFormatRGBA8,
+ GHOST_kXrSwapchainFormatRGBA16,
+ GHOST_kXrSwapchainFormatRGBA16F,
+ GHOST_kXrSwapchainFormatRGB10_A2,
+} GHOST_TXrSwapchainFormat;
+
typedef struct GHOST_XrDrawViewInfo {
int ofsx, ofsy;
int width, height;
@@ -681,6 +689,7 @@ typedef struct GHOST_XrDrawViewInfo {
float angle_up, angle_down;
} fov;
+ GHOST_TXrSwapchainFormat swapchain_format;
/** Set if the buffer should be submitted with a SRGB transfer applied. */
char expects_srgb_buffer;
@@ -719,29 +728,27 @@ typedef struct GHOST_XrActionInfo {
const char **subaction_paths;
/** States for each subaction path. */
void *states;
+ /** Input thresholds/regions for each subaction path. */
+ float *float_thresholds;
+ int16_t *axis_flags;
GHOST_XrCustomdataFreeFn customdata_free_fn;
void *customdata; /* wmXrAction */
} GHOST_XrActionInfo;
-typedef struct GHOST_XrActionSpaceInfo {
- const char *action_name;
- uint32_t count_subaction_paths;
- const char **subaction_paths;
- /** Poses for each subaction path. */
- const GHOST_XrPose *poses;
-} GHOST_XrActionSpaceInfo;
-
typedef struct GHOST_XrActionBindingInfo {
- const char *action_name;
- uint32_t count_interaction_paths;
- /** Interaction path: User (sub-action) path + component path. */
- const char **interaction_paths;
+ const char *component_path;
+ float float_threshold;
+ int16_t axis_flag;
+ GHOST_XrPose pose;
} GHOST_XrActionBindingInfo;
typedef struct GHOST_XrActionProfileInfo {
+ const char *action_name;
const char *profile_path;
- uint32_t count_bindings;
+ uint32_t count_subaction_paths;
+ const char **subaction_paths;
+ /* Bindings for each subaction path. */
const GHOST_XrActionBindingInfo *bindings;
} GHOST_XrActionProfileInfo;