summaryrefslogtreecommitdiffstats
path: root/modules/openxr/extensions/openxr_extension_wrapper_extension.h
diff options
context:
space:
mode:
Diffstat (limited to 'modules/openxr/extensions/openxr_extension_wrapper_extension.h')
-rw-r--r--modules/openxr/extensions/openxr_extension_wrapper_extension.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/modules/openxr/extensions/openxr_extension_wrapper_extension.h b/modules/openxr/extensions/openxr_extension_wrapper_extension.h
index 5c5e64f927..edcbc0139b 100644
--- a/modules/openxr/extensions/openxr_extension_wrapper_extension.h
+++ b/modules/openxr/extensions/openxr_extension_wrapper_extension.h
@@ -39,7 +39,7 @@
#include "core/os/thread_safe.h"
#include "core/variant/native_ptr.h"
-class OpenXRExtensionWrapperExtension : public Object, OpenXRExtensionWrapper {
+class OpenXRExtensionWrapperExtension : public Object, public OpenXRExtensionWrapper, public OpenXRCompositionLayerProvider {
GDCLASS(OpenXRExtensionWrapperExtension, Object);
protected:
@@ -58,12 +58,20 @@ public:
virtual void *set_instance_create_info_and_get_next_pointer(void *p_next_pointer) override;
virtual void *set_session_create_and_get_next_pointer(void *p_next_pointer) override;
virtual void *set_swapchain_create_info_and_get_next_pointer(void *p_next_pointer) override;
+ virtual void *set_hand_joint_locations_and_get_next_pointer(int p_hand_index, void *p_next_pointer) override;
+ virtual XrCompositionLayerBaseHeader *get_composition_layer() override;
//TODO workaround as GDExtensionPtr<void> return type results in build error in godot-cpp
GDVIRTUAL1R(uint64_t, _set_system_properties_and_get_next_pointer, GDExtensionPtr<void>);
GDVIRTUAL1R(uint64_t, _set_instance_create_info_and_get_next_pointer, GDExtensionPtr<void>);
GDVIRTUAL1R(uint64_t, _set_session_create_and_get_next_pointer, GDExtensionPtr<void>);
GDVIRTUAL1R(uint64_t, _set_swapchain_create_info_and_get_next_pointer, GDExtensionPtr<void>);
+ GDVIRTUAL2R(uint64_t, _set_hand_joint_locations_and_get_next_pointer, int, GDExtensionPtr<void>);
+ GDVIRTUAL0R(uint64_t, _get_composition_layer);
+
+ virtual PackedStringArray get_suggested_tracker_names() override;
+
+ GDVIRTUAL0R(PackedStringArray, _get_suggested_tracker_names);
virtual void on_register_metadata() override;
virtual void on_before_instance_created() override;
@@ -110,6 +118,7 @@ public:
void register_extension_wrapper();
OpenXRExtensionWrapperExtension();
+ virtual ~OpenXRExtensionWrapperExtension() override;
};
#endif // OPENXR_EXTENSION_WRAPPER_EXTENSION_H