2018-01-18 17:24:05 +01:00
|
|
|
/* TODO these should be generated */
|
2018-11-20 18:10:12 +01:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
2022-06-10 11:24:47 +02:00
|
|
|
#include "windef.h"
|
|
|
|
|
2018-01-18 17:24:05 +01:00
|
|
|
typedef struct __winISteamClient winISteamClient;
|
|
|
|
typedef struct __winISteamUser winISteamUser;
|
|
|
|
typedef struct __winISteamGameServer winISteamGameServer;
|
|
|
|
typedef struct __winISteamFriends winISteamFriends;
|
|
|
|
typedef struct __winISteamUtils winISteamUtils;
|
|
|
|
typedef struct __winISteamMatchmaking winISteamMatchmaking;
|
|
|
|
typedef struct __winISteamMatchmakingServers winISteamMatchmakingServers;
|
|
|
|
typedef struct __winISteamUserStats winISteamUserStats;
|
|
|
|
typedef struct __winISteamGameServerStats winISteamGameServerStats;
|
|
|
|
typedef struct __winISteamApps winISteamApps;
|
|
|
|
typedef struct __winISteamNetworking winISteamNetworking;
|
|
|
|
typedef struct __winISteamRemoteStorage winISteamRemoteStorage;
|
|
|
|
typedef struct __winISteamRemoteScreenshots winISteamRemoteScreenshots;
|
|
|
|
typedef struct __winISteamScreenshots winISteamScreenshots;
|
|
|
|
typedef struct __winISteamHTTP winISteamHTTP;
|
|
|
|
typedef struct __winISteamUnifiedMessages winISteamUnifiedMessages;
|
|
|
|
typedef struct __winISteamController winISteamController;
|
|
|
|
typedef struct __winISteamUGC winISteamUGC;
|
|
|
|
typedef struct __winISteamAppList winISteamAppList;
|
|
|
|
typedef struct __winISteamMusic winISteamMusic;
|
|
|
|
typedef struct __winISteamMusicRemote winISteamMusicRemote;
|
|
|
|
typedef struct __winISteamHTMLSurface winISteamHTMLSurface;
|
|
|
|
typedef struct __winISteamInventory winISteamInventory;
|
|
|
|
typedef struct __winISteamVideo winISteamVideo;
|
|
|
|
typedef struct __winISteamMasterServerUpdater winISteamMasterServerUpdater;
|
|
|
|
typedef struct __winISteamContentServer winISteamContentServer;
|
|
|
|
typedef struct __winISteamParentalSettings winISteamParentalSettings;
|
2019-02-25 16:44:23 +01:00
|
|
|
typedef struct __winISteamGameSearch winISteamGameSearch;
|
|
|
|
typedef struct __winISteamInput winISteamInput;
|
|
|
|
typedef struct __winISteamParties winISteamParties;
|
2019-08-16 15:39:30 +02:00
|
|
|
typedef struct __winISteamRemotePlay winISteamRemotePlay;
|
2021-12-20 16:48:44 +01:00
|
|
|
typedef struct __winISteamNetworkingFakeUDPPort winISteamNetworkingFakeUDPPort;
|
2018-01-18 17:24:05 +01:00
|
|
|
typedef struct __winX winX;
|
|
|
|
|
2022-06-10 11:24:47 +02:00
|
|
|
struct SteamInputActionEvent_t;
|
|
|
|
typedef void (*CDECL win_SteamInputActionEventCallbackPointer)(SteamInputActionEvent_t *);
|
|
|
|
void lin_SteamInputActionEventCallbackPointer(SteamInputActionEvent_t *dat);
|
|
|
|
|
2018-01-18 17:24:05 +01:00
|
|
|
void *create_win_interface(const char *name, void *linux_side);
|
2019-06-17 20:05:41 +02:00
|
|
|
unsigned int steamclient_unix_path_to_dos_path(bool api_result, const char *src, char *dst, uint32 dst_bytes, int is_url);
|
|
|
|
bool steamclient_dos_path_to_unix_path(const char *src, char *dst, int is_url);
|
2018-11-20 18:10:12 +01:00
|
|
|
const char **steamclient_dos_to_unix_stringlist(const char **src);
|
|
|
|
void steamclient_free_stringlist(const char **out);
|
|
|
|
const char *steamclient_isteamcontroller_getglyph(int origin, const char *lin_path);
|
2021-10-08 18:09:30 +02:00
|
|
|
const char *steamclient_isteaminput_getglyph(int origin, const char *lin_path);
|
2021-10-08 19:58:43 +02:00
|
|
|
const char *steamclient_isteaminput_getglyph_xbox(int origin, const char *lin_path);
|
2022-06-13 21:02:14 +02:00
|
|
|
const char *steamclient_isteaminput_getglyph_png(int origin, int size, int flags, const char *lin_path);
|
2022-06-10 11:23:18 +02:00
|
|
|
const char *steamclient_isteaminput_getglyph_svg(int origin, int flags, const char *lin_path);
|
2019-06-17 17:50:11 +02:00
|
|
|
uint32 manual_convert_nNativeKeyCode(uint32 win_vk);
|
2019-02-07 21:50:38 +01:00
|
|
|
void *create_LinuxISteamMatchmakingServerListResponse(void *win, const char *version);
|
|
|
|
void *create_LinuxISteamMatchmakingPingResponse(void *win, const char *version);
|
|
|
|
void *create_LinuxISteamMatchmakingPlayersResponse(void *win, const char *version);
|
|
|
|
void *create_LinuxISteamMatchmakingRulesResponse(void *win, const char *version);
|
2022-06-15 00:54:51 +02:00
|
|
|
void *manual_convert_SteamAPIWarningMessageHook_t(void *win_func);
|
2019-05-17 21:48:34 +02:00
|
|
|
void *manual_convert_FSteamNetworkingSocketsDebugOutput(void *win_func);
|
2019-08-15 21:50:30 +02:00
|
|
|
void *manual_convert_SteamAPI_CheckCallbackRegistered_t(void *win_func);
|
2018-10-30 20:09:49 +01:00
|
|
|
|
2018-11-20 18:10:12 +01:00
|
|
|
extern char g_tmppath[PATH_MAX];
|
|
|
|
|
2018-10-30 20:09:49 +01:00
|
|
|
typedef uint64 SteamAPICall_t; //for ancient SDKs
|
2018-10-30 17:30:28 +01:00
|
|
|
bool do_cb_wrap(HSteamPipe pipe, void *linux_side, bool (*cpp_func)(void *, SteamAPICall_t, void *, int, int, bool *), SteamAPICall_t call, void *callback, int callback_len, int cb_expected, bool *failed);
|
2018-01-18 17:38:13 +01:00
|
|
|
|
2021-11-03 16:00:12 +01:00
|
|
|
void *alloc_mem_for_iface(size_t size, const char *iface_version);
|
2022-06-24 05:02:39 +02:00
|
|
|
void *alloc_vtable(void *vtable, unsigned int method_count, const char *iface_version);
|
2021-11-03 16:00:12 +01:00
|
|
|
|
2022-05-23 22:29:28 +02:00
|
|
|
enum callback_type
|
|
|
|
{
|
|
|
|
SOCKET_DEBUG_OUTPUT = 1,
|
2022-06-15 00:54:51 +02:00
|
|
|
STEAM_API_WARNING_HOOK,
|
2022-05-23 22:29:28 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
struct callback_data
|
|
|
|
{
|
|
|
|
enum callback_type type;
|
|
|
|
void *func;
|
|
|
|
int complete;
|
|
|
|
union
|
|
|
|
{
|
|
|
|
struct
|
|
|
|
{
|
|
|
|
unsigned int type;
|
|
|
|
const char *msg;
|
|
|
|
}
|
|
|
|
sockets_debug_output;
|
2022-06-15 00:54:51 +02:00
|
|
|
struct
|
|
|
|
{
|
|
|
|
int severity;
|
|
|
|
const char *msg;
|
|
|
|
}
|
|
|
|
steam_api_warning_hook;
|
2022-05-23 22:29:28 +02:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
void execute_callback(struct callback_data *cb_data);
|
|
|
|
|
2018-11-20 18:10:12 +01:00
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
2018-01-18 17:38:13 +01:00
|
|
|
#define TRACE WINE_TRACE
|
|
|
|
#define ERR WINE_ERR
|
|
|
|
#define WARN WINE_WARN
|
2019-12-11 20:59:25 +01:00
|
|
|
#define FIXME WINE_FIXME
|