Proton/vrclient_x64/unix_private.h
Rémi Bernon 85151b7dfa vrclient: Introduce unix-side buffer cache with PE allocate pointers.
There are several steam API calls that currently pass unix pointers
for e.g. strings directly to the PE-side, this allows for caching such
return values and returning a PE-side pointer instead.
2025-04-24 18:03:44 +03:00

46 lines
1.4 KiB
C

#ifndef __VRCLIENT_UNIX_PRIVATE_H
#define __VRCLIENT_UNIX_PRIVATE_H
#include <stdarg.h>
#include <stddef.h>
#include <windef.h>
#include <winbase.h>
#include "unixlib.h"
#include "wine/debug.h"
#include "wine/list.h"
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
extern VkDevice_T *(*p_get_native_VkDevice)( VkDevice_T * );
extern VkInstance_T *(*p_get_native_VkInstance)( VkInstance_T * );
extern VkPhysicalDevice_T *(*p_get_native_VkPhysicalDevice)( VkPhysicalDevice_T * );
extern VkPhysicalDevice_T *(*p_get_wrapped_VkPhysicalDevice)( VkInstance_T *, VkPhysicalDevice_T * );
extern VkQueue_T *(*p_get_native_VkQueue)( VkQueue_T * );
extern char *json_convert_startup_info(const char *startup_info);
extern char *json_convert_paths(const char *input);
extern NTSTATUS vrclient_init( void *args );
extern NTSTATUS vrclient_init_registry( void *args );
extern NTSTATUS vrclient_unload( void *args );
extern NTSTATUS vrclient_HmdSystemFactory( void *args );
extern NTSTATUS vrclient_VRClientCoreFactory( void *args );
extern NTSTATUS vrclient_get_unix_buffer( void *args );
extern char *vrclient_dos_to_unix_path( const char *src );
extern void vrclient_free_path( char *path );
extern unsigned int vrclient_unix_path_to_dos_path( bool api_result, const char *src, char *dst, uint32_t dst_bytes );
#ifdef __cplusplus
} /* extern "C" */
#endif /* __cplusplus */
#include "unix_private_generated.h"
#endif /* __VRCLIENT_UNIX_PRIVATE_H */