123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700 |
- // Copyright (c) 2017-2022, The Khronos Group Inc.
- // Copyright (c) 2017-2019 Valve Corporation
- // Copyright (c) 2017-2019 LunarG, Inc.
- // SPDX-License-Identifier: Apache-2.0 OR MIT
- // *********** THIS FILE IS GENERATED - DO NOT EDIT ***********
- // See loader_source_generator.py for modifications
- // ************************************************************
- // Copyright (c) 2017-2022, The Khronos Group Inc.
- // Copyright (c) 2017-2019 Valve Corporation
- // Copyright (c) 2017-2019 LunarG, Inc.
- //
- // SPDX-License-Identifier: Apache-2.0
- //
- // Licensed under the Apache License, Version 2.0 (the "License");
- // you may not use this file except in compliance with the License.
- // You may obtain a copy of the License at
- //
- // http://www.apache.org/licenses/LICENSE-2.0
- //
- // Unless required by applicable law or agreed to in writing, software
- // distributed under the License is distributed on an "AS IS" BASIS,
- // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- // See the License for the specific language governing permissions and
- // limitations under the License.
- //
- // Author: Mark Young <[email protected]>
- //
- #include "xr_generated_loader.hpp"
- #include "api_layer_interface.hpp"
- #include "exception_handling.hpp"
- #include "hex_and_handles.h"
- #include "loader_instance.hpp"
- #include "loader_logger.hpp"
- #include "loader_platform.hpp"
- #include "runtime_interface.hpp"
- #include "xr_generated_dispatch_table.h"
- #include "xr_dependencies.h"
- #include <openxr/openxr.h>
- #include <openxr/openxr_platform.h>
- #include <cstring>
- #include <memory>
- #include <new>
- #include <string>
- #include <unordered_map>
- // Automatically generated instance trampolines and terminators
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrGetInstanceProperties(
- XrInstance instance,
- XrInstanceProperties* instanceProperties) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrGetInstanceProperties");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->GetInstanceProperties(instance, instanceProperties);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrPollEvent(
- XrInstance instance,
- XrEventDataBuffer* eventData) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrPollEvent");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->PollEvent(instance, eventData);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrResultToString(
- XrInstance instance,
- XrResult value,
- char buffer[XR_MAX_RESULT_STRING_SIZE]) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrResultToString");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->ResultToString(instance, value, buffer);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrStructureTypeToString(
- XrInstance instance,
- XrStructureType value,
- char buffer[XR_MAX_STRUCTURE_NAME_SIZE]) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrStructureTypeToString");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->StructureTypeToString(instance, value, buffer);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrGetSystem(
- XrInstance instance,
- const XrSystemGetInfo* getInfo,
- XrSystemId* systemId) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrGetSystem");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->GetSystem(instance, getInfo, systemId);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrGetSystemProperties(
- XrInstance instance,
- XrSystemId systemId,
- XrSystemProperties* properties) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrGetSystemProperties");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->GetSystemProperties(instance, systemId, properties);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrEnumerateEnvironmentBlendModes(
- XrInstance instance,
- XrSystemId systemId,
- XrViewConfigurationType viewConfigurationType,
- uint32_t environmentBlendModeCapacityInput,
- uint32_t* environmentBlendModeCountOutput,
- XrEnvironmentBlendMode* environmentBlendModes) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrEnumerateEnvironmentBlendModes");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->EnumerateEnvironmentBlendModes(instance, systemId, viewConfigurationType, environmentBlendModeCapacityInput, environmentBlendModeCountOutput, environmentBlendModes);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrCreateSession(
- XrInstance instance,
- const XrSessionCreateInfo* createInfo,
- XrSession* session) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrCreateSession");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->CreateSession(instance, createInfo, session);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrDestroySession(
- XrSession session) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrDestroySession");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->DestroySession(session);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrEnumerateReferenceSpaces(
- XrSession session,
- uint32_t spaceCapacityInput,
- uint32_t* spaceCountOutput,
- XrReferenceSpaceType* spaces) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrEnumerateReferenceSpaces");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->EnumerateReferenceSpaces(session, spaceCapacityInput, spaceCountOutput, spaces);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrCreateReferenceSpace(
- XrSession session,
- const XrReferenceSpaceCreateInfo* createInfo,
- XrSpace* space) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrCreateReferenceSpace");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->CreateReferenceSpace(session, createInfo, space);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrGetReferenceSpaceBoundsRect(
- XrSession session,
- XrReferenceSpaceType referenceSpaceType,
- XrExtent2Df* bounds) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrGetReferenceSpaceBoundsRect");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->GetReferenceSpaceBoundsRect(session, referenceSpaceType, bounds);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrCreateActionSpace(
- XrSession session,
- const XrActionSpaceCreateInfo* createInfo,
- XrSpace* space) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrCreateActionSpace");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->CreateActionSpace(session, createInfo, space);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrLocateSpace(
- XrSpace space,
- XrSpace baseSpace,
- XrTime time,
- XrSpaceLocation* location) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrLocateSpace");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->LocateSpace(space, baseSpace, time, location);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrDestroySpace(
- XrSpace space) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrDestroySpace");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->DestroySpace(space);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrEnumerateViewConfigurations(
- XrInstance instance,
- XrSystemId systemId,
- uint32_t viewConfigurationTypeCapacityInput,
- uint32_t* viewConfigurationTypeCountOutput,
- XrViewConfigurationType* viewConfigurationTypes) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrEnumerateViewConfigurations");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->EnumerateViewConfigurations(instance, systemId, viewConfigurationTypeCapacityInput, viewConfigurationTypeCountOutput, viewConfigurationTypes);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrGetViewConfigurationProperties(
- XrInstance instance,
- XrSystemId systemId,
- XrViewConfigurationType viewConfigurationType,
- XrViewConfigurationProperties* configurationProperties) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrGetViewConfigurationProperties");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->GetViewConfigurationProperties(instance, systemId, viewConfigurationType, configurationProperties);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrEnumerateViewConfigurationViews(
- XrInstance instance,
- XrSystemId systemId,
- XrViewConfigurationType viewConfigurationType,
- uint32_t viewCapacityInput,
- uint32_t* viewCountOutput,
- XrViewConfigurationView* views) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrEnumerateViewConfigurationViews");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->EnumerateViewConfigurationViews(instance, systemId, viewConfigurationType, viewCapacityInput, viewCountOutput, views);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrEnumerateSwapchainFormats(
- XrSession session,
- uint32_t formatCapacityInput,
- uint32_t* formatCountOutput,
- int64_t* formats) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrEnumerateSwapchainFormats");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->EnumerateSwapchainFormats(session, formatCapacityInput, formatCountOutput, formats);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrCreateSwapchain(
- XrSession session,
- const XrSwapchainCreateInfo* createInfo,
- XrSwapchain* swapchain) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrCreateSwapchain");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->CreateSwapchain(session, createInfo, swapchain);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrDestroySwapchain(
- XrSwapchain swapchain) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrDestroySwapchain");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->DestroySwapchain(swapchain);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrEnumerateSwapchainImages(
- XrSwapchain swapchain,
- uint32_t imageCapacityInput,
- uint32_t* imageCountOutput,
- XrSwapchainImageBaseHeader* images) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrEnumerateSwapchainImages");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->EnumerateSwapchainImages(swapchain, imageCapacityInput, imageCountOutput, images);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrAcquireSwapchainImage(
- XrSwapchain swapchain,
- const XrSwapchainImageAcquireInfo* acquireInfo,
- uint32_t* index) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrAcquireSwapchainImage");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->AcquireSwapchainImage(swapchain, acquireInfo, index);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrWaitSwapchainImage(
- XrSwapchain swapchain,
- const XrSwapchainImageWaitInfo* waitInfo) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrWaitSwapchainImage");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->WaitSwapchainImage(swapchain, waitInfo);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrReleaseSwapchainImage(
- XrSwapchain swapchain,
- const XrSwapchainImageReleaseInfo* releaseInfo) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrReleaseSwapchainImage");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->ReleaseSwapchainImage(swapchain, releaseInfo);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrBeginSession(
- XrSession session,
- const XrSessionBeginInfo* beginInfo) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrBeginSession");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->BeginSession(session, beginInfo);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrEndSession(
- XrSession session) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrEndSession");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->EndSession(session);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrRequestExitSession(
- XrSession session) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrRequestExitSession");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->RequestExitSession(session);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrWaitFrame(
- XrSession session,
- const XrFrameWaitInfo* frameWaitInfo,
- XrFrameState* frameState) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrWaitFrame");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->WaitFrame(session, frameWaitInfo, frameState);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrBeginFrame(
- XrSession session,
- const XrFrameBeginInfo* frameBeginInfo) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrBeginFrame");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->BeginFrame(session, frameBeginInfo);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrEndFrame(
- XrSession session,
- const XrFrameEndInfo* frameEndInfo) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrEndFrame");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->EndFrame(session, frameEndInfo);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrLocateViews(
- XrSession session,
- const XrViewLocateInfo* viewLocateInfo,
- XrViewState* viewState,
- uint32_t viewCapacityInput,
- uint32_t* viewCountOutput,
- XrView* views) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrLocateViews");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->LocateViews(session, viewLocateInfo, viewState, viewCapacityInput, viewCountOutput, views);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrStringToPath(
- XrInstance instance,
- const char* pathString,
- XrPath* path) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrStringToPath");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->StringToPath(instance, pathString, path);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrPathToString(
- XrInstance instance,
- XrPath path,
- uint32_t bufferCapacityInput,
- uint32_t* bufferCountOutput,
- char* buffer) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrPathToString");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->PathToString(instance, path, bufferCapacityInput, bufferCountOutput, buffer);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrCreateActionSet(
- XrInstance instance,
- const XrActionSetCreateInfo* createInfo,
- XrActionSet* actionSet) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrCreateActionSet");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->CreateActionSet(instance, createInfo, actionSet);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrDestroyActionSet(
- XrActionSet actionSet) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrDestroyActionSet");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->DestroyActionSet(actionSet);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrCreateAction(
- XrActionSet actionSet,
- const XrActionCreateInfo* createInfo,
- XrAction* action) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrCreateAction");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->CreateAction(actionSet, createInfo, action);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrDestroyAction(
- XrAction action) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrDestroyAction");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->DestroyAction(action);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrSuggestInteractionProfileBindings(
- XrInstance instance,
- const XrInteractionProfileSuggestedBinding* suggestedBindings) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrSuggestInteractionProfileBindings");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->SuggestInteractionProfileBindings(instance, suggestedBindings);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrAttachSessionActionSets(
- XrSession session,
- const XrSessionActionSetsAttachInfo* attachInfo) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrAttachSessionActionSets");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->AttachSessionActionSets(session, attachInfo);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrGetCurrentInteractionProfile(
- XrSession session,
- XrPath topLevelUserPath,
- XrInteractionProfileState* interactionProfile) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrGetCurrentInteractionProfile");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->GetCurrentInteractionProfile(session, topLevelUserPath, interactionProfile);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrGetActionStateBoolean(
- XrSession session,
- const XrActionStateGetInfo* getInfo,
- XrActionStateBoolean* state) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrGetActionStateBoolean");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->GetActionStateBoolean(session, getInfo, state);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrGetActionStateFloat(
- XrSession session,
- const XrActionStateGetInfo* getInfo,
- XrActionStateFloat* state) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrGetActionStateFloat");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->GetActionStateFloat(session, getInfo, state);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrGetActionStateVector2f(
- XrSession session,
- const XrActionStateGetInfo* getInfo,
- XrActionStateVector2f* state) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrGetActionStateVector2f");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->GetActionStateVector2f(session, getInfo, state);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrGetActionStatePose(
- XrSession session,
- const XrActionStateGetInfo* getInfo,
- XrActionStatePose* state) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrGetActionStatePose");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->GetActionStatePose(session, getInfo, state);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrSyncActions(
- XrSession session,
- const XrActionsSyncInfo* syncInfo) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrSyncActions");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->SyncActions(session, syncInfo);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrEnumerateBoundSourcesForAction(
- XrSession session,
- const XrBoundSourcesForActionEnumerateInfo* enumerateInfo,
- uint32_t sourceCapacityInput,
- uint32_t* sourceCountOutput,
- XrPath* sources) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrEnumerateBoundSourcesForAction");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->EnumerateBoundSourcesForAction(session, enumerateInfo, sourceCapacityInput, sourceCountOutput, sources);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrGetInputSourceLocalizedName(
- XrSession session,
- const XrInputSourceLocalizedNameGetInfo* getInfo,
- uint32_t bufferCapacityInput,
- uint32_t* bufferCountOutput,
- char* buffer) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrGetInputSourceLocalizedName");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->GetInputSourceLocalizedName(session, getInfo, bufferCapacityInput, bufferCountOutput, buffer);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrApplyHapticFeedback(
- XrSession session,
- const XrHapticActionInfo* hapticActionInfo,
- const XrHapticBaseHeader* hapticFeedback) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrApplyHapticFeedback");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->ApplyHapticFeedback(session, hapticActionInfo, hapticFeedback);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
- extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrStopHapticFeedback(
- XrSession session,
- const XrHapticActionInfo* hapticActionInfo) XRLOADER_ABI_TRY {
- LoaderInstance* loader_instance;
- XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrStopHapticFeedback");
- if (XR_SUCCEEDED(result)) {
- result = loader_instance->DispatchTable()->StopHapticFeedback(session, hapticActionInfo);
- }
- return result;
- }
- XRLOADER_ABI_CATCH_FALLBACK
|