vrclient: Move physical device wrapping to the unix side.

CW-Bug-Id: #22729
This commit is contained in:
Rémi Bernon 2023-10-02 20:49:03 +02:00
parent 37d0f313ba
commit f611285f5d
21 changed files with 305 additions and 317 deletions

View file

@ -144,6 +144,8 @@ SOURCES = \
vrclient_x64/cppIVRTrackedCamera_IVRTrackedCamera_006.cpp \ vrclient_x64/cppIVRTrackedCamera_IVRTrackedCamera_006.cpp \
vrclient_x64/json_converter.cpp \ vrclient_x64/json_converter.cpp \
vrclient_x64/jsoncpp.cpp \ vrclient_x64/jsoncpp.cpp \
vrclient_x64/unix_vrcompositor_manual.cpp \
vrclient_x64/unix_vrrendermodels_manual.cpp \ vrclient_x64/unix_vrrendermodels_manual.cpp \
vrclient_x64/unix_vrsystem_manual.cpp \
vrclient_x64/unixlib.cpp \ vrclient_x64/unixlib.cpp \
vrclient_x64/unixlib_generated.cpp \ vrclient_x64/unixlib_generated.cpp \

View file

@ -220,12 +220,12 @@ MANUAL_METHODS = {
"IVRClientCore_GetGenericInterface": lambda ver, abi: abi == 'w', "IVRClientCore_GetGenericInterface": lambda ver, abi: abi == 'w',
"IVRClientCore_Cleanup": lambda ver, abi: abi == 'w', "IVRClientCore_Cleanup": lambda ver, abi: abi == 'w',
"IVRSystem_GetDXGIOutputInfo": lambda ver, abi: abi == 'w', "IVRSystem_GetDXGIOutputInfo": lambda ver, abi: abi == 'w',
"IVRSystem_GetOutputDevice": lambda ver, abi: abi == 'w' and ver > 16, "IVRSystem_GetOutputDevice": lambda ver, abi: abi == 'u' and ver > 16,
"IVRCompositor_Submit": lambda ver, abi: abi == 'w' and ver > 8, "IVRCompositor_Submit": lambda ver, abi: abi == 'w' and ver > 8,
"IVRCompositor_SetSkyboxOverride": lambda ver, abi: abi == 'w' and ver > 8, "IVRCompositor_SetSkyboxOverride": lambda ver, abi: abi == 'w' and ver > 8,
"IVRCompositor_PostPresentHandoff": lambda ver, abi: abi == 'w', "IVRCompositor_PostPresentHandoff": lambda ver, abi: abi == 'w',
"IVRCompositor_WaitGetPoses": lambda ver, abi: abi == 'w' and ver > 15 and ver < 27, "IVRCompositor_WaitGetPoses": lambda ver, abi: abi == 'w' and ver > 15 and ver < 27,
"IVRCompositor_GetVulkanDeviceExtensionsRequired": lambda ver, abi: abi == 'w', "IVRCompositor_GetVulkanDeviceExtensionsRequired": lambda ver, abi: abi == 'u',
"IVRRenderModels_LoadTextureD3D11_Async": lambda ver, abi: abi == 'w', "IVRRenderModels_LoadTextureD3D11_Async": lambda ver, abi: abi == 'w',
"IVRRenderModels_FreeTextureD3D11": lambda ver, abi: abi == 'w', "IVRRenderModels_FreeTextureD3D11": lambda ver, abi: abi == 'w',
"IVRRenderModels_LoadIntoTextureD3D11_Async": lambda ver, abi: abi == 'w', "IVRRenderModels_LoadIntoTextureD3D11_Async": lambda ver, abi: abi == 'w',

View file

@ -313,11 +313,3 @@ NTSTATUS IVRCompositor_IVRCompositor_019_GetVulkanInstanceExtensionsRequired( vo
return 0; return 0;
} }
NTSTATUS IVRCompositor_IVRCompositor_019_GetVulkanDeviceExtensionsRequired( void *args )
{
struct IVRCompositor_IVRCompositor_019_GetVulkanDeviceExtensionsRequired_params *params = (struct IVRCompositor_IVRCompositor_019_GetVulkanDeviceExtensionsRequired_params *)args;
struct u_IVRCompositor_IVRCompositor_019 *iface = (struct u_IVRCompositor_IVRCompositor_019 *)params->linux_side;
params->_ret = (uint32_t)iface->GetVulkanDeviceExtensionsRequired( params->pPhysicalDevice, params->pchValue, params->unBufferSize );
return 0;
}

View file

@ -321,11 +321,3 @@ NTSTATUS IVRCompositor_IVRCompositor_020_GetVulkanInstanceExtensionsRequired( vo
return 0; return 0;
} }
NTSTATUS IVRCompositor_IVRCompositor_020_GetVulkanDeviceExtensionsRequired( void *args )
{
struct IVRCompositor_IVRCompositor_020_GetVulkanDeviceExtensionsRequired_params *params = (struct IVRCompositor_IVRCompositor_020_GetVulkanDeviceExtensionsRequired_params *)args;
struct u_IVRCompositor_IVRCompositor_020 *iface = (struct u_IVRCompositor_IVRCompositor_020 *)params->linux_side;
params->_ret = (uint32_t)iface->GetVulkanDeviceExtensionsRequired( params->pPhysicalDevice, params->pchValue, params->unBufferSize );
return 0;
}

View file

@ -321,14 +321,6 @@ NTSTATUS IVRCompositor_IVRCompositor_021_GetVulkanInstanceExtensionsRequired( vo
return 0; return 0;
} }
NTSTATUS IVRCompositor_IVRCompositor_021_GetVulkanDeviceExtensionsRequired( void *args )
{
struct IVRCompositor_IVRCompositor_021_GetVulkanDeviceExtensionsRequired_params *params = (struct IVRCompositor_IVRCompositor_021_GetVulkanDeviceExtensionsRequired_params *)args;
struct u_IVRCompositor_IVRCompositor_021 *iface = (struct u_IVRCompositor_IVRCompositor_021 *)params->linux_side;
params->_ret = (uint32_t)iface->GetVulkanDeviceExtensionsRequired( params->pPhysicalDevice, params->pchValue, params->unBufferSize );
return 0;
}
NTSTATUS IVRCompositor_IVRCompositor_021_SetExplicitTimingMode( void *args ) NTSTATUS IVRCompositor_IVRCompositor_021_SetExplicitTimingMode( void *args )
{ {
struct IVRCompositor_IVRCompositor_021_SetExplicitTimingMode_params *params = (struct IVRCompositor_IVRCompositor_021_SetExplicitTimingMode_params *)args; struct IVRCompositor_IVRCompositor_021_SetExplicitTimingMode_params *params = (struct IVRCompositor_IVRCompositor_021_SetExplicitTimingMode_params *)args;

View file

@ -321,14 +321,6 @@ NTSTATUS IVRCompositor_IVRCompositor_022_GetVulkanInstanceExtensionsRequired( vo
return 0; return 0;
} }
NTSTATUS IVRCompositor_IVRCompositor_022_GetVulkanDeviceExtensionsRequired( void *args )
{
struct IVRCompositor_IVRCompositor_022_GetVulkanDeviceExtensionsRequired_params *params = (struct IVRCompositor_IVRCompositor_022_GetVulkanDeviceExtensionsRequired_params *)args;
struct u_IVRCompositor_IVRCompositor_022 *iface = (struct u_IVRCompositor_IVRCompositor_022 *)params->linux_side;
params->_ret = (uint32_t)iface->GetVulkanDeviceExtensionsRequired( params->pPhysicalDevice, params->pchValue, params->unBufferSize );
return 0;
}
NTSTATUS IVRCompositor_IVRCompositor_022_SetExplicitTimingMode( void *args ) NTSTATUS IVRCompositor_IVRCompositor_022_SetExplicitTimingMode( void *args )
{ {
struct IVRCompositor_IVRCompositor_022_SetExplicitTimingMode_params *params = (struct IVRCompositor_IVRCompositor_022_SetExplicitTimingMode_params *)args; struct IVRCompositor_IVRCompositor_022_SetExplicitTimingMode_params *params = (struct IVRCompositor_IVRCompositor_022_SetExplicitTimingMode_params *)args;

View file

@ -321,14 +321,6 @@ NTSTATUS IVRCompositor_IVRCompositor_024_GetVulkanInstanceExtensionsRequired( vo
return 0; return 0;
} }
NTSTATUS IVRCompositor_IVRCompositor_024_GetVulkanDeviceExtensionsRequired( void *args )
{
struct IVRCompositor_IVRCompositor_024_GetVulkanDeviceExtensionsRequired_params *params = (struct IVRCompositor_IVRCompositor_024_GetVulkanDeviceExtensionsRequired_params *)args;
struct u_IVRCompositor_IVRCompositor_024 *iface = (struct u_IVRCompositor_IVRCompositor_024 *)params->linux_side;
params->_ret = (uint32_t)iface->GetVulkanDeviceExtensionsRequired( params->pPhysicalDevice, params->pchValue, params->unBufferSize );
return 0;
}
NTSTATUS IVRCompositor_IVRCompositor_024_SetExplicitTimingMode( void *args ) NTSTATUS IVRCompositor_IVRCompositor_024_SetExplicitTimingMode( void *args )
{ {
struct IVRCompositor_IVRCompositor_024_SetExplicitTimingMode_params *params = (struct IVRCompositor_IVRCompositor_024_SetExplicitTimingMode_params *)args; struct IVRCompositor_IVRCompositor_024_SetExplicitTimingMode_params *params = (struct IVRCompositor_IVRCompositor_024_SetExplicitTimingMode_params *)args;

View file

@ -321,14 +321,6 @@ NTSTATUS IVRCompositor_IVRCompositor_026_GetVulkanInstanceExtensionsRequired( vo
return 0; return 0;
} }
NTSTATUS IVRCompositor_IVRCompositor_026_GetVulkanDeviceExtensionsRequired( void *args )
{
struct IVRCompositor_IVRCompositor_026_GetVulkanDeviceExtensionsRequired_params *params = (struct IVRCompositor_IVRCompositor_026_GetVulkanDeviceExtensionsRequired_params *)args;
struct u_IVRCompositor_IVRCompositor_026 *iface = (struct u_IVRCompositor_IVRCompositor_026 *)params->linux_side;
params->_ret = (uint32_t)iface->GetVulkanDeviceExtensionsRequired( params->pPhysicalDevice, params->pchValue, params->unBufferSize );
return 0;
}
NTSTATUS IVRCompositor_IVRCompositor_026_SetExplicitTimingMode( void *args ) NTSTATUS IVRCompositor_IVRCompositor_026_SetExplicitTimingMode( void *args )
{ {
struct IVRCompositor_IVRCompositor_026_SetExplicitTimingMode_params *params = (struct IVRCompositor_IVRCompositor_026_SetExplicitTimingMode_params *)args; struct IVRCompositor_IVRCompositor_026_SetExplicitTimingMode_params *params = (struct IVRCompositor_IVRCompositor_026_SetExplicitTimingMode_params *)args;

View file

@ -321,14 +321,6 @@ NTSTATUS IVRCompositor_IVRCompositor_027_GetVulkanInstanceExtensionsRequired( vo
return 0; return 0;
} }
NTSTATUS IVRCompositor_IVRCompositor_027_GetVulkanDeviceExtensionsRequired( void *args )
{
struct IVRCompositor_IVRCompositor_027_GetVulkanDeviceExtensionsRequired_params *params = (struct IVRCompositor_IVRCompositor_027_GetVulkanDeviceExtensionsRequired_params *)args;
struct u_IVRCompositor_IVRCompositor_027 *iface = (struct u_IVRCompositor_IVRCompositor_027 *)params->linux_side;
params->_ret = (uint32_t)iface->GetVulkanDeviceExtensionsRequired( params->pPhysicalDevice, params->pchValue, params->unBufferSize );
return 0;
}
NTSTATUS IVRCompositor_IVRCompositor_027_SetExplicitTimingMode( void *args ) NTSTATUS IVRCompositor_IVRCompositor_027_SetExplicitTimingMode( void *args )
{ {
struct IVRCompositor_IVRCompositor_027_SetExplicitTimingMode_params *params = (struct IVRCompositor_IVRCompositor_027_SetExplicitTimingMode_params *)args; struct IVRCompositor_IVRCompositor_027_SetExplicitTimingMode_params *params = (struct IVRCompositor_IVRCompositor_027_SetExplicitTimingMode_params *)args;

View file

@ -65,14 +65,6 @@ NTSTATUS IVRSystem_IVRSystem_017_GetDXGIOutputInfo( void *args )
return 0; return 0;
} }
NTSTATUS IVRSystem_IVRSystem_017_GetOutputDevice( void *args )
{
struct IVRSystem_IVRSystem_017_GetOutputDevice_params *params = (struct IVRSystem_IVRSystem_017_GetOutputDevice_params *)args;
struct u_IVRSystem_IVRSystem_017 *iface = (struct u_IVRSystem_IVRSystem_017 *)params->linux_side;
iface->GetOutputDevice( params->pnDevice, params->textureType, params->pInstance );
return 0;
}
NTSTATUS IVRSystem_IVRSystem_017_IsDisplayOnDesktop( void *args ) NTSTATUS IVRSystem_IVRSystem_017_IsDisplayOnDesktop( void *args )
{ {
struct IVRSystem_IVRSystem_017_IsDisplayOnDesktop_params *params = (struct IVRSystem_IVRSystem_017_IsDisplayOnDesktop_params *)args; struct IVRSystem_IVRSystem_017_IsDisplayOnDesktop_params *params = (struct IVRSystem_IVRSystem_017_IsDisplayOnDesktop_params *)args;

View file

@ -65,14 +65,6 @@ NTSTATUS IVRSystem_IVRSystem_019_GetDXGIOutputInfo( void *args )
return 0; return 0;
} }
NTSTATUS IVRSystem_IVRSystem_019_GetOutputDevice( void *args )
{
struct IVRSystem_IVRSystem_019_GetOutputDevice_params *params = (struct IVRSystem_IVRSystem_019_GetOutputDevice_params *)args;
struct u_IVRSystem_IVRSystem_019 *iface = (struct u_IVRSystem_IVRSystem_019 *)params->linux_side;
iface->GetOutputDevice( params->pnDevice, params->textureType, params->pInstance );
return 0;
}
NTSTATUS IVRSystem_IVRSystem_019_IsDisplayOnDesktop( void *args ) NTSTATUS IVRSystem_IVRSystem_019_IsDisplayOnDesktop( void *args )
{ {
struct IVRSystem_IVRSystem_019_IsDisplayOnDesktop_params *params = (struct IVRSystem_IVRSystem_019_IsDisplayOnDesktop_params *)args; struct IVRSystem_IVRSystem_019_IsDisplayOnDesktop_params *params = (struct IVRSystem_IVRSystem_019_IsDisplayOnDesktop_params *)args;

View file

@ -65,14 +65,6 @@ NTSTATUS IVRSystem_IVRSystem_020_GetDXGIOutputInfo( void *args )
return 0; return 0;
} }
NTSTATUS IVRSystem_IVRSystem_020_GetOutputDevice( void *args )
{
struct IVRSystem_IVRSystem_020_GetOutputDevice_params *params = (struct IVRSystem_IVRSystem_020_GetOutputDevice_params *)args;
struct u_IVRSystem_IVRSystem_020 *iface = (struct u_IVRSystem_IVRSystem_020 *)params->linux_side;
iface->GetOutputDevice( params->pnDevice, params->textureType, params->pInstance );
return 0;
}
NTSTATUS IVRSystem_IVRSystem_020_IsDisplayOnDesktop( void *args ) NTSTATUS IVRSystem_IVRSystem_020_IsDisplayOnDesktop( void *args )
{ {
struct IVRSystem_IVRSystem_020_IsDisplayOnDesktop_params *params = (struct IVRSystem_IVRSystem_020_IsDisplayOnDesktop_params *)args; struct IVRSystem_IVRSystem_020_IsDisplayOnDesktop_params *params = (struct IVRSystem_IVRSystem_020_IsDisplayOnDesktop_params *)args;

View file

@ -65,14 +65,6 @@ NTSTATUS IVRSystem_IVRSystem_021_GetDXGIOutputInfo( void *args )
return 0; return 0;
} }
NTSTATUS IVRSystem_IVRSystem_021_GetOutputDevice( void *args )
{
struct IVRSystem_IVRSystem_021_GetOutputDevice_params *params = (struct IVRSystem_IVRSystem_021_GetOutputDevice_params *)args;
struct u_IVRSystem_IVRSystem_021 *iface = (struct u_IVRSystem_IVRSystem_021 *)params->linux_side;
iface->GetOutputDevice( params->pnDevice, params->textureType, params->pInstance );
return 0;
}
NTSTATUS IVRSystem_IVRSystem_021_IsDisplayOnDesktop( void *args ) NTSTATUS IVRSystem_IVRSystem_021_IsDisplayOnDesktop( void *args )
{ {
struct IVRSystem_IVRSystem_021_IsDisplayOnDesktop_params *params = (struct IVRSystem_IVRSystem_021_IsDisplayOnDesktop_params *)args; struct IVRSystem_IVRSystem_021_IsDisplayOnDesktop_params *params = (struct IVRSystem_IVRSystem_021_IsDisplayOnDesktop_params *)args;

View file

@ -65,14 +65,6 @@ NTSTATUS IVRSystem_IVRSystem_022_GetDXGIOutputInfo( void *args )
return 0; return 0;
} }
NTSTATUS IVRSystem_IVRSystem_022_GetOutputDevice( void *args )
{
struct IVRSystem_IVRSystem_022_GetOutputDevice_params *params = (struct IVRSystem_IVRSystem_022_GetOutputDevice_params *)args;
struct u_IVRSystem_IVRSystem_022 *iface = (struct u_IVRSystem_IVRSystem_022 *)params->linux_side;
iface->GetOutputDevice( params->pnDevice, params->textureType, params->pInstance );
return 0;
}
NTSTATUS IVRSystem_IVRSystem_022_IsDisplayOnDesktop( void *args ) NTSTATUS IVRSystem_IVRSystem_022_IsDisplayOnDesktop( void *args )
{ {
struct IVRSystem_IVRSystem_022_IsDisplayOnDesktop_params *params = (struct IVRSystem_IVRSystem_022_IsDisplayOnDesktop_params *)args; struct IVRSystem_IVRSystem_022_IsDisplayOnDesktop_params *params = (struct IVRSystem_IVRSystem_022_IsDisplayOnDesktop_params *)args;

View file

@ -16,6 +16,12 @@
extern "C" { extern "C" {
#endif /* __cplusplus */ #endif /* __cplusplus */
extern VkDevice_T *(WINAPI *p_get_native_VkDevice)( VkDevice_T * );
extern VkInstance_T *(WINAPI *p_get_native_VkInstance)( VkInstance_T * );
extern VkPhysicalDevice_T *(WINAPI *p_get_native_VkPhysicalDevice)( VkPhysicalDevice_T * );
extern VkPhysicalDevice_T *(WINAPI *p_get_wrapped_VkPhysicalDevice)( VkInstance_T *, VkPhysicalDevice_T * );
extern VkQueue_T *(WINAPI *p_get_native_VkQueue)( VkQueue_T * );
#ifdef __cplusplus #ifdef __cplusplus
} /* extern "C" */ } /* extern "C" */
#endif /* __cplusplus */ #endif /* __cplusplus */

View file

@ -0,0 +1,64 @@
#include "unix_private.h"
NTSTATUS IVRCompositor_IVRCompositor_019_GetVulkanDeviceExtensionsRequired( void *args )
{
struct IVRCompositor_IVRCompositor_019_GetVulkanDeviceExtensionsRequired_params *params = (struct IVRCompositor_IVRCompositor_019_GetVulkanDeviceExtensionsRequired_params *)args;
struct u_IVRCompositor_IVRCompositor_019 *iface = (struct u_IVRCompositor_IVRCompositor_019 *)params->linux_side;
VkPhysicalDevice_T *host_device = p_get_native_VkPhysicalDevice( params->pPhysicalDevice );
params->_ret = (uint32_t)iface->GetVulkanDeviceExtensionsRequired( host_device, params->pchValue, params->unBufferSize );
return 0;
}
NTSTATUS IVRCompositor_IVRCompositor_020_GetVulkanDeviceExtensionsRequired( void *args )
{
struct IVRCompositor_IVRCompositor_020_GetVulkanDeviceExtensionsRequired_params *params = (struct IVRCompositor_IVRCompositor_020_GetVulkanDeviceExtensionsRequired_params *)args;
struct u_IVRCompositor_IVRCompositor_020 *iface = (struct u_IVRCompositor_IVRCompositor_020 *)params->linux_side;
VkPhysicalDevice_T *host_device = p_get_native_VkPhysicalDevice( params->pPhysicalDevice );
params->_ret = (uint32_t)iface->GetVulkanDeviceExtensionsRequired( host_device, params->pchValue, params->unBufferSize );
return 0;
}
NTSTATUS IVRCompositor_IVRCompositor_021_GetVulkanDeviceExtensionsRequired( void *args )
{
struct IVRCompositor_IVRCompositor_021_GetVulkanDeviceExtensionsRequired_params *params = (struct IVRCompositor_IVRCompositor_021_GetVulkanDeviceExtensionsRequired_params *)args;
struct u_IVRCompositor_IVRCompositor_021 *iface = (struct u_IVRCompositor_IVRCompositor_021 *)params->linux_side;
VkPhysicalDevice_T *host_device = p_get_native_VkPhysicalDevice( params->pPhysicalDevice );
params->_ret = (uint32_t)iface->GetVulkanDeviceExtensionsRequired( host_device, params->pchValue, params->unBufferSize );
return 0;
}
NTSTATUS IVRCompositor_IVRCompositor_022_GetVulkanDeviceExtensionsRequired( void *args )
{
struct IVRCompositor_IVRCompositor_022_GetVulkanDeviceExtensionsRequired_params *params = (struct IVRCompositor_IVRCompositor_022_GetVulkanDeviceExtensionsRequired_params *)args;
struct u_IVRCompositor_IVRCompositor_022 *iface = (struct u_IVRCompositor_IVRCompositor_022 *)params->linux_side;
VkPhysicalDevice_T *host_device = p_get_native_VkPhysicalDevice( params->pPhysicalDevice );
params->_ret = (uint32_t)iface->GetVulkanDeviceExtensionsRequired( host_device, params->pchValue, params->unBufferSize );
return 0;
}
NTSTATUS IVRCompositor_IVRCompositor_024_GetVulkanDeviceExtensionsRequired( void *args )
{
struct IVRCompositor_IVRCompositor_024_GetVulkanDeviceExtensionsRequired_params *params = (struct IVRCompositor_IVRCompositor_024_GetVulkanDeviceExtensionsRequired_params *)args;
struct u_IVRCompositor_IVRCompositor_024 *iface = (struct u_IVRCompositor_IVRCompositor_024 *)params->linux_side;
VkPhysicalDevice_T *host_device = p_get_native_VkPhysicalDevice( params->pPhysicalDevice );
params->_ret = (uint32_t)iface->GetVulkanDeviceExtensionsRequired( host_device, params->pchValue, params->unBufferSize );
return 0;
}
NTSTATUS IVRCompositor_IVRCompositor_026_GetVulkanDeviceExtensionsRequired( void *args )
{
struct IVRCompositor_IVRCompositor_026_GetVulkanDeviceExtensionsRequired_params *params = (struct IVRCompositor_IVRCompositor_026_GetVulkanDeviceExtensionsRequired_params *)args;
struct u_IVRCompositor_IVRCompositor_026 *iface = (struct u_IVRCompositor_IVRCompositor_026 *)params->linux_side;
VkPhysicalDevice_T *host_device = p_get_native_VkPhysicalDevice( params->pPhysicalDevice );
params->_ret = (uint32_t)iface->GetVulkanDeviceExtensionsRequired( host_device, params->pchValue, params->unBufferSize );
return 0;
}
NTSTATUS IVRCompositor_IVRCompositor_027_GetVulkanDeviceExtensionsRequired( void *args )
{
struct IVRCompositor_IVRCompositor_027_GetVulkanDeviceExtensionsRequired_params *params = (struct IVRCompositor_IVRCompositor_027_GetVulkanDeviceExtensionsRequired_params *)args;
struct u_IVRCompositor_IVRCompositor_027 *iface = (struct u_IVRCompositor_IVRCompositor_027 *)params->linux_side;
VkPhysicalDevice_T *host_device = p_get_native_VkPhysicalDevice( params->pPhysicalDevice );
params->_ret = (uint32_t)iface->GetVulkanDeviceExtensionsRequired( host_device, params->pchValue, params->unBufferSize );
return 0;
}

View file

@ -0,0 +1,80 @@
#include "unix_private.h"
WINE_DEFAULT_DEBUG_CHANNEL(vrclient);
static VkInstance_T *unwrap_instance( uint32_t type, VkInstance_T *instance )
{
if (type == TextureType_Vulkan) return p_get_native_VkInstance( instance );
return instance;
}
static uint64_t wrap_device( uint32_t type, VkInstance_T *instance, uint64_t device )
{
if (type == TextureType_Vulkan)
{
VkPhysicalDevice_T *phys_device = (VkPhysicalDevice_T *)( intptr_t)device;
return (uint64_t)(intptr_t)p_get_wrapped_VkPhysicalDevice( instance, phys_device );
}
return device;
}
NTSTATUS IVRSystem_IVRSystem_017_GetOutputDevice( void *args )
{
struct IVRSystem_IVRSystem_017_GetOutputDevice_params *params = (struct IVRSystem_IVRSystem_017_GetOutputDevice_params *)args;
struct u_IVRSystem_IVRSystem_017 *iface = (struct u_IVRSystem_IVRSystem_017 *)params->linux_side;
VkInstance_T *host_instance = unwrap_instance( params->textureType, params->pInstance );
uint64_t host_device;
iface->GetOutputDevice( &host_device, params->textureType, host_instance );
*params->pnDevice = wrap_device( params->textureType, params->pInstance, host_device );
return 0;
}
NTSTATUS IVRSystem_IVRSystem_019_GetOutputDevice( void *args )
{
struct IVRSystem_IVRSystem_019_GetOutputDevice_params *params = (struct IVRSystem_IVRSystem_019_GetOutputDevice_params *)args;
struct u_IVRSystem_IVRSystem_019 *iface = (struct u_IVRSystem_IVRSystem_019 *)params->linux_side;
VkInstance_T *host_instance = unwrap_instance( params->textureType, params->pInstance );
uint64_t host_device;
iface->GetOutputDevice( &host_device, params->textureType, host_instance );
*params->pnDevice = wrap_device( params->textureType, params->pInstance, host_device );
return 0;
}
NTSTATUS IVRSystem_IVRSystem_020_GetOutputDevice( void *args )
{
struct IVRSystem_IVRSystem_020_GetOutputDevice_params *params = (struct IVRSystem_IVRSystem_020_GetOutputDevice_params *)args;
struct u_IVRSystem_IVRSystem_020 *iface = (struct u_IVRSystem_IVRSystem_020 *)params->linux_side;
VkInstance_T *host_instance = unwrap_instance( params->textureType, params->pInstance );
uint64_t host_device;
iface->GetOutputDevice( &host_device, params->textureType, host_instance );
*params->pnDevice = wrap_device( params->textureType, params->pInstance, host_device );
return 0;
}
NTSTATUS IVRSystem_IVRSystem_021_GetOutputDevice( void *args )
{
struct IVRSystem_IVRSystem_021_GetOutputDevice_params *params = (struct IVRSystem_IVRSystem_021_GetOutputDevice_params *)args;
struct u_IVRSystem_IVRSystem_021 *iface = (struct u_IVRSystem_IVRSystem_021 *)params->linux_side;
VkInstance_T *host_instance = unwrap_instance( params->textureType, params->pInstance );
uint64_t host_device;
iface->GetOutputDevice( &host_device, params->textureType, host_instance );
*params->pnDevice = wrap_device( params->textureType, params->pInstance, host_device );
return 0;
}
NTSTATUS IVRSystem_IVRSystem_022_GetOutputDevice( void *args )
{
struct IVRSystem_IVRSystem_022_GetOutputDevice_params *params = (struct IVRSystem_IVRSystem_022_GetOutputDevice_params *)args;
struct u_IVRSystem_IVRSystem_022 *iface = (struct u_IVRSystem_IVRSystem_022 *)params->linux_side;
VkInstance_T *host_instance = unwrap_instance( params->textureType, params->pInstance );
uint64_t host_device;
iface->GetOutputDevice( &host_device, params->textureType, host_instance );
*params->pnDevice = wrap_device( params->textureType, params->pInstance, host_device );
return 0;
}

View file

@ -878,21 +878,6 @@ uint32_t __thiscall winIVRCompositor_IVRCompositor_019_SetSkyboxOverride( struct
return params._ret; return params._ret;
} }
uint32_t __thiscall winIVRCompositor_IVRCompositor_019_GetVulkanDeviceExtensionsRequired( struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice,
char *pchValue, uint32_t unBufferSize )
{
struct IVRCompositor_IVRCompositor_019_GetVulkanDeviceExtensionsRequired_params params =
{
.linux_side = _this->u_iface,
.pPhysicalDevice = get_native_VkPhysicalDevice( pPhysicalDevice ),
.pchValue = pchValue,
.unBufferSize = unBufferSize,
};
TRACE( "%p\n", _this );
VRCLIENT_CALL( IVRCompositor_IVRCompositor_019_GetVulkanDeviceExtensionsRequired, &params );
return params._ret;
}
uint32_t __thiscall winIVRCompositor_IVRCompositor_020_WaitGetPoses( struct w_steam_iface *_this, uint32_t __thiscall winIVRCompositor_IVRCompositor_020_WaitGetPoses( struct w_steam_iface *_this,
TrackedDevicePose_t *pRenderPoseArray, uint32_t unRenderPoseArrayCount, TrackedDevicePose_t *pRenderPoseArray, uint32_t unRenderPoseArrayCount,
TrackedDevicePose_t *pGamePoseArray, uint32_t unGamePoseArrayCount ) TrackedDevicePose_t *pGamePoseArray, uint32_t unGamePoseArrayCount )
@ -960,21 +945,6 @@ uint32_t __thiscall winIVRCompositor_IVRCompositor_020_SetSkyboxOverride( struct
return params._ret; return params._ret;
} }
uint32_t __thiscall winIVRCompositor_IVRCompositor_020_GetVulkanDeviceExtensionsRequired( struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice,
char *pchValue, uint32_t unBufferSize )
{
struct IVRCompositor_IVRCompositor_020_GetVulkanDeviceExtensionsRequired_params params =
{
.linux_side = _this->u_iface,
.pPhysicalDevice = get_native_VkPhysicalDevice( pPhysicalDevice ),
.pchValue = pchValue,
.unBufferSize = unBufferSize,
};
TRACE( "%p\n", _this );
VRCLIENT_CALL( IVRCompositor_IVRCompositor_020_GetVulkanDeviceExtensionsRequired, &params );
return params._ret;
}
uint32_t __thiscall winIVRCompositor_IVRCompositor_021_WaitGetPoses( struct w_steam_iface *_this, uint32_t __thiscall winIVRCompositor_IVRCompositor_021_WaitGetPoses( struct w_steam_iface *_this,
TrackedDevicePose_t *pRenderPoseArray, uint32_t unRenderPoseArrayCount, TrackedDevicePose_t *pRenderPoseArray, uint32_t unRenderPoseArrayCount,
TrackedDevicePose_t *pGamePoseArray, uint32_t unGamePoseArrayCount ) TrackedDevicePose_t *pGamePoseArray, uint32_t unGamePoseArrayCount )
@ -1074,21 +1044,6 @@ uint32_t __thiscall winIVRCompositor_IVRCompositor_021_SetSkyboxOverride( struct
return params._ret; return params._ret;
} }
uint32_t __thiscall winIVRCompositor_IVRCompositor_021_GetVulkanDeviceExtensionsRequired( struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice,
char *pchValue, uint32_t unBufferSize )
{
struct IVRCompositor_IVRCompositor_021_GetVulkanDeviceExtensionsRequired_params params =
{
.linux_side = _this->u_iface,
.pPhysicalDevice = get_native_VkPhysicalDevice( pPhysicalDevice ),
.pchValue = pchValue,
.unBufferSize = unBufferSize,
};
TRACE( "%p\n", _this );
VRCLIENT_CALL( IVRCompositor_IVRCompositor_021_GetVulkanDeviceExtensionsRequired, &params );
return params._ret;
}
uint32_t __thiscall winIVRCompositor_IVRCompositor_022_WaitGetPoses( struct w_steam_iface *_this, uint32_t __thiscall winIVRCompositor_IVRCompositor_022_WaitGetPoses( struct w_steam_iface *_this,
TrackedDevicePose_t *pRenderPoseArray, uint32_t unRenderPoseArrayCount, TrackedDevicePose_t *pRenderPoseArray, uint32_t unRenderPoseArrayCount,
TrackedDevicePose_t *pGamePoseArray, uint32_t unGamePoseArrayCount ) TrackedDevicePose_t *pGamePoseArray, uint32_t unGamePoseArrayCount )
@ -1188,21 +1143,6 @@ uint32_t __thiscall winIVRCompositor_IVRCompositor_022_SetSkyboxOverride( struct
return params._ret; return params._ret;
} }
uint32_t __thiscall winIVRCompositor_IVRCompositor_022_GetVulkanDeviceExtensionsRequired( struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice,
char *pchValue, uint32_t unBufferSize )
{
struct IVRCompositor_IVRCompositor_022_GetVulkanDeviceExtensionsRequired_params params =
{
.linux_side = _this->u_iface,
.pPhysicalDevice = get_native_VkPhysicalDevice( pPhysicalDevice ),
.pchValue = pchValue,
.unBufferSize = unBufferSize,
};
TRACE( "%p\n", _this );
VRCLIENT_CALL( IVRCompositor_IVRCompositor_022_GetVulkanDeviceExtensionsRequired, &params );
return params._ret;
}
uint32_t __thiscall winIVRCompositor_IVRCompositor_024_WaitGetPoses( struct w_steam_iface *_this, uint32_t __thiscall winIVRCompositor_IVRCompositor_024_WaitGetPoses( struct w_steam_iface *_this,
TrackedDevicePose_t *pRenderPoseArray, uint32_t unRenderPoseArrayCount, TrackedDevicePose_t *pRenderPoseArray, uint32_t unRenderPoseArrayCount,
TrackedDevicePose_t *pGamePoseArray, uint32_t unGamePoseArrayCount ) TrackedDevicePose_t *pGamePoseArray, uint32_t unGamePoseArrayCount )
@ -1302,21 +1242,6 @@ uint32_t __thiscall winIVRCompositor_IVRCompositor_024_SetSkyboxOverride( struct
return params._ret; return params._ret;
} }
uint32_t __thiscall winIVRCompositor_IVRCompositor_024_GetVulkanDeviceExtensionsRequired( struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice,
char *pchValue, uint32_t unBufferSize )
{
struct IVRCompositor_IVRCompositor_024_GetVulkanDeviceExtensionsRequired_params params =
{
.linux_side = _this->u_iface,
.pPhysicalDevice = get_native_VkPhysicalDevice( pPhysicalDevice ),
.pchValue = pchValue,
.unBufferSize = unBufferSize,
};
TRACE( "%p\n", _this );
VRCLIENT_CALL( IVRCompositor_IVRCompositor_024_GetVulkanDeviceExtensionsRequired, &params );
return params._ret;
}
uint32_t __thiscall winIVRCompositor_IVRCompositor_026_WaitGetPoses( struct w_steam_iface *_this, uint32_t __thiscall winIVRCompositor_IVRCompositor_026_WaitGetPoses( struct w_steam_iface *_this,
TrackedDevicePose_t *pRenderPoseArray, uint32_t unRenderPoseArrayCount, TrackedDevicePose_t *pRenderPoseArray, uint32_t unRenderPoseArrayCount,
TrackedDevicePose_t *pGamePoseArray, uint32_t unGamePoseArrayCount ) TrackedDevicePose_t *pGamePoseArray, uint32_t unGamePoseArrayCount )
@ -1416,21 +1341,6 @@ uint32_t __thiscall winIVRCompositor_IVRCompositor_026_SetSkyboxOverride( struct
return params._ret; return params._ret;
} }
uint32_t __thiscall winIVRCompositor_IVRCompositor_026_GetVulkanDeviceExtensionsRequired( struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice,
char *pchValue, uint32_t unBufferSize )
{
struct IVRCompositor_IVRCompositor_026_GetVulkanDeviceExtensionsRequired_params params =
{
.linux_side = _this->u_iface,
.pPhysicalDevice = get_native_VkPhysicalDevice( pPhysicalDevice ),
.pchValue = pchValue,
.unBufferSize = unBufferSize,
};
TRACE( "%p\n", _this );
VRCLIENT_CALL( IVRCompositor_IVRCompositor_026_GetVulkanDeviceExtensionsRequired, &params );
return params._ret;
}
uint32_t __thiscall winIVRCompositor_IVRCompositor_027_Submit( struct w_steam_iface *_this, uint32_t __thiscall winIVRCompositor_IVRCompositor_027_Submit( struct w_steam_iface *_this,
uint32_t eEye, const w_Texture_t *pTexture, uint32_t eEye, const w_Texture_t *pTexture,
const VRTextureBounds_t *pBounds, uint32_t nSubmitFlags ) const VRTextureBounds_t *pBounds, uint32_t nSubmitFlags )
@ -1494,18 +1404,3 @@ uint32_t __thiscall winIVRCompositor_IVRCompositor_027_SetSkyboxOverride( struct
set_skybox_override_done( pTextures, unTextureCount ); set_skybox_override_done( pTextures, unTextureCount );
return params._ret; return params._ret;
} }
uint32_t __thiscall winIVRCompositor_IVRCompositor_027_GetVulkanDeviceExtensionsRequired( struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice,
char *pchValue, uint32_t unBufferSize )
{
struct IVRCompositor_IVRCompositor_027_GetVulkanDeviceExtensionsRequired_params params =
{
.linux_side = _this->u_iface,
.pPhysicalDevice = get_native_VkPhysicalDevice( pPhysicalDevice ),
.pchValue = pchValue,
.unBufferSize = unBufferSize,
};
TRACE( "%p\n", _this );
VRCLIENT_CALL( IVRCompositor_IVRCompositor_027_GetVulkanDeviceExtensionsRequired, &params );
return params._ret;
}

View file

@ -2,23 +2,6 @@
WINE_DEFAULT_DEBUG_CHANNEL(vrclient); WINE_DEFAULT_DEBUG_CHANNEL(vrclient);
static VkInstance_T *unwrap_instance( uint32_t type, VkInstance_T *instance )
{
if (type == TextureType_Vulkan) return get_native_VkInstance( instance );
return instance;
}
static uint64_t wrap_device( uint32_t type, VkInstance_T *instance, uint64_t device )
{
if (type == TextureType_Vulkan)
{
VkPhysicalDevice_T *phys_device = (VkPhysicalDevice_T *)( intptr_t)device;
return (uint64_t)( intptr_t)get_wrapped_VkPhysicalDevice( instance, phys_device );
}
return device;
}
void __thiscall winIVRSystem_IVRSystem_003_GetDXGIOutputInfo( struct w_steam_iface *_this, int32_t *pnAdapterIndex, void __thiscall winIVRSystem_IVRSystem_003_GetDXGIOutputInfo( struct w_steam_iface *_this, int32_t *pnAdapterIndex,
int32_t *pnAdapterOutputIndex ) int32_t *pnAdapterOutputIndex )
{ {
@ -99,111 +82,26 @@ void __thiscall winIVRSystem_IVRSystem_017_GetDXGIOutputInfo( struct w_steam_ifa
*pnAdapterIndex = 0; *pnAdapterIndex = 0;
} }
void __thiscall winIVRSystem_IVRSystem_017_GetOutputDevice( struct w_steam_iface *_this, uint64_t *pnDevice,
uint32_t textureType, VkInstance_T *pInstance )
{
struct IVRSystem_IVRSystem_017_GetOutputDevice_params params =
{
.linux_side = _this->u_iface,
.pnDevice = pnDevice,
.textureType = textureType,
.pInstance = unwrap_instance( textureType, pInstance ),
};
TRACE( "%p\n", _this );
VRCLIENT_CALL( IVRSystem_IVRSystem_017_GetOutputDevice, &params );
*pnDevice = wrap_device( textureType, pInstance, *pnDevice );
}
void __thiscall winIVRSystem_IVRSystem_019_GetDXGIOutputInfo( struct w_steam_iface *_this, int32_t *pnAdapterIndex ) void __thiscall winIVRSystem_IVRSystem_019_GetDXGIOutputInfo( struct w_steam_iface *_this, int32_t *pnAdapterIndex )
{ {
FIXME( "%p\n", _this ); FIXME( "%p\n", _this );
*pnAdapterIndex = 0; *pnAdapterIndex = 0;
} }
void __thiscall winIVRSystem_IVRSystem_019_GetOutputDevice( struct w_steam_iface *_this, uint64_t *pnDevice,
uint32_t textureType, VkInstance_T *pInstance )
{
struct IVRSystem_IVRSystem_019_GetOutputDevice_params params =
{
.linux_side = _this->u_iface,
.pnDevice = pnDevice,
.textureType = textureType,
.pInstance = unwrap_instance( textureType, pInstance ),
};
TRACE( "%p\n", _this );
VRCLIENT_CALL( IVRSystem_IVRSystem_019_GetOutputDevice, &params );
*pnDevice = wrap_device( textureType, pInstance, *pnDevice );
}
void __thiscall winIVRSystem_IVRSystem_020_GetDXGIOutputInfo( struct w_steam_iface *_this, int32_t *pnAdapterIndex ) void __thiscall winIVRSystem_IVRSystem_020_GetDXGIOutputInfo( struct w_steam_iface *_this, int32_t *pnAdapterIndex )
{ {
FIXME( "%p\n", _this ); FIXME( "%p\n", _this );
*pnAdapterIndex = 0; *pnAdapterIndex = 0;
} }
void __thiscall winIVRSystem_IVRSystem_020_GetOutputDevice( struct w_steam_iface *_this, uint64_t *pnDevice,
uint32_t textureType, VkInstance_T *pInstance )
{
struct IVRSystem_IVRSystem_020_GetOutputDevice_params params =
{
.linux_side = _this->u_iface,
.pnDevice = pnDevice,
.textureType = textureType,
.pInstance = unwrap_instance( textureType, pInstance ),
};
TRACE( "%p\n", _this );
VRCLIENT_CALL( IVRSystem_IVRSystem_020_GetOutputDevice, &params );
*pnDevice = wrap_device( textureType, pInstance, *pnDevice );
}
void __thiscall winIVRSystem_IVRSystem_021_GetDXGIOutputInfo( struct w_steam_iface *_this, int32_t *pnAdapterIndex ) void __thiscall winIVRSystem_IVRSystem_021_GetDXGIOutputInfo( struct w_steam_iface *_this, int32_t *pnAdapterIndex )
{ {
FIXME( "%p\n", _this ); FIXME( "%p\n", _this );
*pnAdapterIndex = 0; *pnAdapterIndex = 0;
} }
void __thiscall winIVRSystem_IVRSystem_021_GetOutputDevice( struct w_steam_iface *_this, uint64_t *pnDevice,
uint32_t textureType, VkInstance_T *pInstance )
{
struct IVRSystem_IVRSystem_021_GetOutputDevice_params params =
{
.linux_side = _this->u_iface,
.pnDevice = pnDevice,
.textureType = textureType,
.pInstance = unwrap_instance( textureType, pInstance ),
};
TRACE( "%p\n", _this );
VRCLIENT_CALL( IVRSystem_IVRSystem_021_GetOutputDevice, &params );
*pnDevice = wrap_device( textureType, pInstance, *pnDevice );
}
void __thiscall winIVRSystem_IVRSystem_022_GetDXGIOutputInfo( struct w_steam_iface *_this, int32_t *pnAdapterIndex ) void __thiscall winIVRSystem_IVRSystem_022_GetDXGIOutputInfo( struct w_steam_iface *_this, int32_t *pnAdapterIndex )
{ {
FIXME( "%p\n", _this ); FIXME( "%p\n", _this );
*pnAdapterIndex = 0; *pnAdapterIndex = 0;
} }
void __thiscall winIVRSystem_IVRSystem_022_GetOutputDevice( struct w_steam_iface *_this, uint64_t *pnDevice,
uint32_t textureType, VkInstance_T *pInstance )
{
struct IVRSystem_IVRSystem_022_GetOutputDevice_params params =
{
.linux_side = _this->u_iface,
.pnDevice = pnDevice,
.textureType = textureType,
.pInstance = unwrap_instance( textureType, pInstance ),
};
TRACE( "%p\n", _this );
VRCLIENT_CALL( IVRSystem_IVRSystem_022_GetOutputDevice, &params );
*pnDevice = wrap_device( textureType, pInstance, *pnDevice );
}

View file

@ -6485,7 +6485,19 @@ uint32_t __thiscall winIVRCompositor_IVRCompositor_019_GetVulkanInstanceExtensio
return params._ret; return params._ret;
} }
extern uint32_t __thiscall winIVRCompositor_IVRCompositor_019_GetVulkanDeviceExtensionsRequired(struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice, char *pchValue, uint32_t unBufferSize); uint32_t __thiscall winIVRCompositor_IVRCompositor_019_GetVulkanDeviceExtensionsRequired(struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice, char *pchValue, uint32_t unBufferSize)
{
struct IVRCompositor_IVRCompositor_019_GetVulkanDeviceExtensionsRequired_params params =
{
.linux_side = _this->u_iface,
.pPhysicalDevice = pPhysicalDevice,
.pchValue = pchValue,
.unBufferSize = unBufferSize,
};
TRACE("%p\n", _this);
VRCLIENT_CALL( IVRCompositor_IVRCompositor_019_GetVulkanDeviceExtensionsRequired, &params );
return params._ret;
}
extern vtable_ptr winIVRCompositor_IVRCompositor_019_vtable; extern vtable_ptr winIVRCompositor_IVRCompositor_019_vtable;
@ -7081,7 +7093,19 @@ uint32_t __thiscall winIVRCompositor_IVRCompositor_020_GetVulkanInstanceExtensio
return params._ret; return params._ret;
} }
extern uint32_t __thiscall winIVRCompositor_IVRCompositor_020_GetVulkanDeviceExtensionsRequired(struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice, char *pchValue, uint32_t unBufferSize); uint32_t __thiscall winIVRCompositor_IVRCompositor_020_GetVulkanDeviceExtensionsRequired(struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice, char *pchValue, uint32_t unBufferSize)
{
struct IVRCompositor_IVRCompositor_020_GetVulkanDeviceExtensionsRequired_params params =
{
.linux_side = _this->u_iface,
.pPhysicalDevice = pPhysicalDevice,
.pchValue = pchValue,
.unBufferSize = unBufferSize,
};
TRACE("%p\n", _this);
VRCLIENT_CALL( IVRCompositor_IVRCompositor_020_GetVulkanDeviceExtensionsRequired, &params );
return params._ret;
}
extern vtable_ptr winIVRCompositor_IVRCompositor_020_vtable; extern vtable_ptr winIVRCompositor_IVRCompositor_020_vtable;
@ -7681,7 +7705,19 @@ uint32_t __thiscall winIVRCompositor_IVRCompositor_021_GetVulkanInstanceExtensio
return params._ret; return params._ret;
} }
extern uint32_t __thiscall winIVRCompositor_IVRCompositor_021_GetVulkanDeviceExtensionsRequired(struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice, char *pchValue, uint32_t unBufferSize); uint32_t __thiscall winIVRCompositor_IVRCompositor_021_GetVulkanDeviceExtensionsRequired(struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice, char *pchValue, uint32_t unBufferSize)
{
struct IVRCompositor_IVRCompositor_021_GetVulkanDeviceExtensionsRequired_params params =
{
.linux_side = _this->u_iface,
.pPhysicalDevice = pPhysicalDevice,
.pchValue = pchValue,
.unBufferSize = unBufferSize,
};
TRACE("%p\n", _this);
VRCLIENT_CALL( IVRCompositor_IVRCompositor_021_GetVulkanDeviceExtensionsRequired, &params );
return params._ret;
}
void __thiscall winIVRCompositor_IVRCompositor_021_SetExplicitTimingMode(struct w_steam_iface *_this, bool bExplicitTimingMode) void __thiscall winIVRCompositor_IVRCompositor_021_SetExplicitTimingMode(struct w_steam_iface *_this, bool bExplicitTimingMode)
{ {
@ -8310,7 +8346,19 @@ uint32_t __thiscall winIVRCompositor_IVRCompositor_022_GetVulkanInstanceExtensio
return params._ret; return params._ret;
} }
extern uint32_t __thiscall winIVRCompositor_IVRCompositor_022_GetVulkanDeviceExtensionsRequired(struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice, char *pchValue, uint32_t unBufferSize); uint32_t __thiscall winIVRCompositor_IVRCompositor_022_GetVulkanDeviceExtensionsRequired(struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice, char *pchValue, uint32_t unBufferSize)
{
struct IVRCompositor_IVRCompositor_022_GetVulkanDeviceExtensionsRequired_params params =
{
.linux_side = _this->u_iface,
.pPhysicalDevice = pPhysicalDevice,
.pchValue = pchValue,
.unBufferSize = unBufferSize,
};
TRACE("%p\n", _this);
VRCLIENT_CALL( IVRCompositor_IVRCompositor_022_GetVulkanDeviceExtensionsRequired, &params );
return params._ret;
}
void __thiscall winIVRCompositor_IVRCompositor_022_SetExplicitTimingMode(struct w_steam_iface *_this, uint32_t eTimingMode) void __thiscall winIVRCompositor_IVRCompositor_022_SetExplicitTimingMode(struct w_steam_iface *_this, uint32_t eTimingMode)
{ {
@ -8980,7 +9028,19 @@ uint32_t __thiscall winIVRCompositor_IVRCompositor_024_GetVulkanInstanceExtensio
return params._ret; return params._ret;
} }
extern uint32_t __thiscall winIVRCompositor_IVRCompositor_024_GetVulkanDeviceExtensionsRequired(struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice, char *pchValue, uint32_t unBufferSize); uint32_t __thiscall winIVRCompositor_IVRCompositor_024_GetVulkanDeviceExtensionsRequired(struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice, char *pchValue, uint32_t unBufferSize)
{
struct IVRCompositor_IVRCompositor_024_GetVulkanDeviceExtensionsRequired_params params =
{
.linux_side = _this->u_iface,
.pPhysicalDevice = pPhysicalDevice,
.pchValue = pchValue,
.unBufferSize = unBufferSize,
};
TRACE("%p\n", _this);
VRCLIENT_CALL( IVRCompositor_IVRCompositor_024_GetVulkanDeviceExtensionsRequired, &params );
return params._ret;
}
void __thiscall winIVRCompositor_IVRCompositor_024_SetExplicitTimingMode(struct w_steam_iface *_this, uint32_t eTimingMode) void __thiscall winIVRCompositor_IVRCompositor_024_SetExplicitTimingMode(struct w_steam_iface *_this, uint32_t eTimingMode)
{ {
@ -9684,7 +9744,19 @@ uint32_t __thiscall winIVRCompositor_IVRCompositor_026_GetVulkanInstanceExtensio
return params._ret; return params._ret;
} }
extern uint32_t __thiscall winIVRCompositor_IVRCompositor_026_GetVulkanDeviceExtensionsRequired(struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice, char *pchValue, uint32_t unBufferSize); uint32_t __thiscall winIVRCompositor_IVRCompositor_026_GetVulkanDeviceExtensionsRequired(struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice, char *pchValue, uint32_t unBufferSize)
{
struct IVRCompositor_IVRCompositor_026_GetVulkanDeviceExtensionsRequired_params params =
{
.linux_side = _this->u_iface,
.pPhysicalDevice = pPhysicalDevice,
.pchValue = pchValue,
.unBufferSize = unBufferSize,
};
TRACE("%p\n", _this);
VRCLIENT_CALL( IVRCompositor_IVRCompositor_026_GetVulkanDeviceExtensionsRequired, &params );
return params._ret;
}
void __thiscall winIVRCompositor_IVRCompositor_026_SetExplicitTimingMode(struct w_steam_iface *_this, uint32_t eTimingMode) void __thiscall winIVRCompositor_IVRCompositor_026_SetExplicitTimingMode(struct w_steam_iface *_this, uint32_t eTimingMode)
{ {
@ -10447,7 +10519,19 @@ uint32_t __thiscall winIVRCompositor_IVRCompositor_027_GetVulkanInstanceExtensio
return params._ret; return params._ret;
} }
extern uint32_t __thiscall winIVRCompositor_IVRCompositor_027_GetVulkanDeviceExtensionsRequired(struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice, char *pchValue, uint32_t unBufferSize); uint32_t __thiscall winIVRCompositor_IVRCompositor_027_GetVulkanDeviceExtensionsRequired(struct w_steam_iface *_this, VkPhysicalDevice_T *pPhysicalDevice, char *pchValue, uint32_t unBufferSize)
{
struct IVRCompositor_IVRCompositor_027_GetVulkanDeviceExtensionsRequired_params params =
{
.linux_side = _this->u_iface,
.pPhysicalDevice = pPhysicalDevice,
.pchValue = pchValue,
.unBufferSize = unBufferSize,
};
TRACE("%p\n", _this);
VRCLIENT_CALL( IVRCompositor_IVRCompositor_027_GetVulkanDeviceExtensionsRequired, &params );
return params._ret;
}
void __thiscall winIVRCompositor_IVRCompositor_027_SetExplicitTimingMode(struct w_steam_iface *_this, uint32_t eTimingMode) void __thiscall winIVRCompositor_IVRCompositor_027_SetExplicitTimingMode(struct w_steam_iface *_this, uint32_t eTimingMode)
{ {

View file

@ -7923,7 +7923,18 @@ int32_t __thiscall winIVRSystem_IVRSystem_017_GetD3D9AdapterIndex(struct w_steam
extern void __thiscall winIVRSystem_IVRSystem_017_GetDXGIOutputInfo(struct w_steam_iface *_this, int32_t *pnAdapterIndex); extern void __thiscall winIVRSystem_IVRSystem_017_GetDXGIOutputInfo(struct w_steam_iface *_this, int32_t *pnAdapterIndex);
extern void __thiscall winIVRSystem_IVRSystem_017_GetOutputDevice(struct w_steam_iface *_this, uint64_t *pnDevice, uint32_t textureType, VkInstance_T *pInstance); void __thiscall winIVRSystem_IVRSystem_017_GetOutputDevice(struct w_steam_iface *_this, uint64_t *pnDevice, uint32_t textureType, VkInstance_T *pInstance)
{
struct IVRSystem_IVRSystem_017_GetOutputDevice_params params =
{
.linux_side = _this->u_iface,
.pnDevice = pnDevice,
.textureType = textureType,
.pInstance = pInstance,
};
TRACE("%p\n", _this);
VRCLIENT_CALL( IVRSystem_IVRSystem_017_GetOutputDevice, &params );
}
bool __thiscall winIVRSystem_IVRSystem_017_IsDisplayOnDesktop(struct w_steam_iface *_this) bool __thiscall winIVRSystem_IVRSystem_017_IsDisplayOnDesktop(struct w_steam_iface *_this)
{ {
@ -8664,7 +8675,18 @@ int32_t __thiscall winIVRSystem_IVRSystem_019_GetD3D9AdapterIndex(struct w_steam
extern void __thiscall winIVRSystem_IVRSystem_019_GetDXGIOutputInfo(struct w_steam_iface *_this, int32_t *pnAdapterIndex); extern void __thiscall winIVRSystem_IVRSystem_019_GetDXGIOutputInfo(struct w_steam_iface *_this, int32_t *pnAdapterIndex);
extern void __thiscall winIVRSystem_IVRSystem_019_GetOutputDevice(struct w_steam_iface *_this, uint64_t *pnDevice, uint32_t textureType, VkInstance_T *pInstance); void __thiscall winIVRSystem_IVRSystem_019_GetOutputDevice(struct w_steam_iface *_this, uint64_t *pnDevice, uint32_t textureType, VkInstance_T *pInstance)
{
struct IVRSystem_IVRSystem_019_GetOutputDevice_params params =
{
.linux_side = _this->u_iface,
.pnDevice = pnDevice,
.textureType = textureType,
.pInstance = pInstance,
};
TRACE("%p\n", _this);
VRCLIENT_CALL( IVRSystem_IVRSystem_019_GetOutputDevice, &params );
}
bool __thiscall winIVRSystem_IVRSystem_019_IsDisplayOnDesktop(struct w_steam_iface *_this) bool __thiscall winIVRSystem_IVRSystem_019_IsDisplayOnDesktop(struct w_steam_iface *_this)
{ {
@ -9439,7 +9461,18 @@ int32_t __thiscall winIVRSystem_IVRSystem_020_GetD3D9AdapterIndex(struct w_steam
extern void __thiscall winIVRSystem_IVRSystem_020_GetDXGIOutputInfo(struct w_steam_iface *_this, int32_t *pnAdapterIndex); extern void __thiscall winIVRSystem_IVRSystem_020_GetDXGIOutputInfo(struct w_steam_iface *_this, int32_t *pnAdapterIndex);
extern void __thiscall winIVRSystem_IVRSystem_020_GetOutputDevice(struct w_steam_iface *_this, uint64_t *pnDevice, uint32_t textureType, VkInstance_T *pInstance); void __thiscall winIVRSystem_IVRSystem_020_GetOutputDevice(struct w_steam_iface *_this, uint64_t *pnDevice, uint32_t textureType, VkInstance_T *pInstance)
{
struct IVRSystem_IVRSystem_020_GetOutputDevice_params params =
{
.linux_side = _this->u_iface,
.pnDevice = pnDevice,
.textureType = textureType,
.pInstance = pInstance,
};
TRACE("%p\n", _this);
VRCLIENT_CALL( IVRSystem_IVRSystem_020_GetOutputDevice, &params );
}
bool __thiscall winIVRSystem_IVRSystem_020_IsDisplayOnDesktop(struct w_steam_iface *_this) bool __thiscall winIVRSystem_IVRSystem_020_IsDisplayOnDesktop(struct w_steam_iface *_this)
{ {
@ -10224,7 +10257,18 @@ int32_t __thiscall winIVRSystem_IVRSystem_021_GetD3D9AdapterIndex(struct w_steam
extern void __thiscall winIVRSystem_IVRSystem_021_GetDXGIOutputInfo(struct w_steam_iface *_this, int32_t *pnAdapterIndex); extern void __thiscall winIVRSystem_IVRSystem_021_GetDXGIOutputInfo(struct w_steam_iface *_this, int32_t *pnAdapterIndex);
extern void __thiscall winIVRSystem_IVRSystem_021_GetOutputDevice(struct w_steam_iface *_this, uint64_t *pnDevice, uint32_t textureType, VkInstance_T *pInstance); void __thiscall winIVRSystem_IVRSystem_021_GetOutputDevice(struct w_steam_iface *_this, uint64_t *pnDevice, uint32_t textureType, VkInstance_T *pInstance)
{
struct IVRSystem_IVRSystem_021_GetOutputDevice_params params =
{
.linux_side = _this->u_iface,
.pnDevice = pnDevice,
.textureType = textureType,
.pInstance = pInstance,
};
TRACE("%p\n", _this);
VRCLIENT_CALL( IVRSystem_IVRSystem_021_GetOutputDevice, &params );
}
bool __thiscall winIVRSystem_IVRSystem_021_IsDisplayOnDesktop(struct w_steam_iface *_this) bool __thiscall winIVRSystem_IVRSystem_021_IsDisplayOnDesktop(struct w_steam_iface *_this)
{ {
@ -10996,7 +11040,18 @@ int32_t __thiscall winIVRSystem_IVRSystem_022_GetD3D9AdapterIndex(struct w_steam
extern void __thiscall winIVRSystem_IVRSystem_022_GetDXGIOutputInfo(struct w_steam_iface *_this, int32_t *pnAdapterIndex); extern void __thiscall winIVRSystem_IVRSystem_022_GetDXGIOutputInfo(struct w_steam_iface *_this, int32_t *pnAdapterIndex);
extern void __thiscall winIVRSystem_IVRSystem_022_GetOutputDevice(struct w_steam_iface *_this, uint64_t *pnDevice, uint32_t textureType, VkInstance_T *pInstance); void __thiscall winIVRSystem_IVRSystem_022_GetOutputDevice(struct w_steam_iface *_this, uint64_t *pnDevice, uint32_t textureType, VkInstance_T *pInstance)
{
struct IVRSystem_IVRSystem_022_GetOutputDevice_params params =
{
.linux_side = _this->u_iface,
.pnDevice = pnDevice,
.textureType = textureType,
.pInstance = pInstance,
};
TRACE("%p\n", _this);
VRCLIENT_CALL( IVRSystem_IVRSystem_022_GetOutputDevice, &params );
}
bool __thiscall winIVRSystem_IVRSystem_022_IsDisplayOnDesktop(struct w_steam_iface *_this) bool __thiscall winIVRSystem_IVRSystem_022_IsDisplayOnDesktop(struct w_steam_iface *_this)
{ {