mirror of
https://github.com/ValveSoftware/Proton.git
synced 2024-12-28 15:45:50 +03:00
lsteamclient: support ISteamNetworkingMessages
(cherry picked from commit 30c21636c5
)
This commit is contained in:
parent
331395444f
commit
5db246cc03
@ -0,0 +1,42 @@
|
|||||||
|
#include "steam_defs.h"
|
||||||
|
#pragma push_macro("__cdecl")
|
||||||
|
#undef __cdecl
|
||||||
|
#include "steamworks_sdk_150/steam_api.h"
|
||||||
|
#include "steamworks_sdk_150/steamnetworkingtypes.h"
|
||||||
|
#include "steamworks_sdk_150/isteamnetworkingmessages.h"
|
||||||
|
#pragma pop_macro("__cdecl")
|
||||||
|
#include "steamclient_private.h"
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
#define SDKVER_150
|
||||||
|
#include "struct_converters.h"
|
||||||
|
#include "cppISteamNetworkingMessages_SteamNetworkingMessages002.h"
|
||||||
|
EResult cppISteamNetworkingMessages_SteamNetworkingMessages002_SendMessageToUser(void *linux_side, const SteamNetworkingIdentity * identityRemote, const void * pubData, uint32 cubData, int nSendFlags, int nRemoteChannel)
|
||||||
|
{
|
||||||
|
return ((ISteamNetworkingMessages*)linux_side)->SendMessageToUser((const SteamNetworkingIdentity *)identityRemote, (const void *)pubData, (uint32)cubData, (int)nSendFlags, (int)nRemoteChannel);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool cppISteamNetworkingMessages_SteamNetworkingMessages002_AcceptSessionWithUser(void *linux_side, const SteamNetworkingIdentity * identityRemote)
|
||||||
|
{
|
||||||
|
return ((ISteamNetworkingMessages*)linux_side)->AcceptSessionWithUser((const SteamNetworkingIdentity *)identityRemote);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool cppISteamNetworkingMessages_SteamNetworkingMessages002_CloseSessionWithUser(void *linux_side, const SteamNetworkingIdentity * identityRemote)
|
||||||
|
{
|
||||||
|
return ((ISteamNetworkingMessages*)linux_side)->CloseSessionWithUser((const SteamNetworkingIdentity *)identityRemote);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool cppISteamNetworkingMessages_SteamNetworkingMessages002_CloseChannelWithUser(void *linux_side, const SteamNetworkingIdentity * identityRemote, int nLocalChannel)
|
||||||
|
{
|
||||||
|
return ((ISteamNetworkingMessages*)linux_side)->CloseChannelWithUser((const SteamNetworkingIdentity *)identityRemote, (int)nLocalChannel);
|
||||||
|
}
|
||||||
|
|
||||||
|
ESteamNetworkingConnectionState cppISteamNetworkingMessages_SteamNetworkingMessages002_GetSessionConnectionInfo(void *linux_side, const SteamNetworkingIdentity * identityRemote, SteamNetConnectionInfo_t * pConnectionInfo, SteamNetworkingQuickConnectionStatus * pQuickStatus)
|
||||||
|
{
|
||||||
|
return ((ISteamNetworkingMessages*)linux_side)->GetSessionConnectionInfo((const SteamNetworkingIdentity *)identityRemote, (SteamNetConnectionInfo_t *)pConnectionInfo, (SteamNetworkingQuickConnectionStatus *)pQuickStatus);
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
@ -0,0 +1,6 @@
|
|||||||
|
extern EResult cppISteamNetworkingMessages_SteamNetworkingMessages002_SendMessageToUser(void *, const SteamNetworkingIdentity *, const void *, uint32, int, int);
|
||||||
|
extern int cppISteamNetworkingMessages_SteamNetworkingMessages002_ReceiveMessagesOnChannel(void *, int, winSteamNetworkingMessage_t_150 **, int);
|
||||||
|
extern bool cppISteamNetworkingMessages_SteamNetworkingMessages002_AcceptSessionWithUser(void *, const SteamNetworkingIdentity *);
|
||||||
|
extern bool cppISteamNetworkingMessages_SteamNetworkingMessages002_CloseSessionWithUser(void *, const SteamNetworkingIdentity *);
|
||||||
|
extern bool cppISteamNetworkingMessages_SteamNetworkingMessages002_CloseChannelWithUser(void *, const SteamNetworkingIdentity *, int);
|
||||||
|
extern ESteamNetworkingConnectionState cppISteamNetworkingMessages_SteamNetworkingMessages002_GetSessionConnectionInfo(void *, const SteamNetworkingIdentity *, SteamNetConnectionInfo_t *, SteamNetworkingQuickConnectionStatus *);
|
@ -142,6 +142,9 @@ files = [
|
|||||||
("isteamparentalsettings.h", [
|
("isteamparentalsettings.h", [
|
||||||
"ISteamParentalSettings"
|
"ISteamParentalSettings"
|
||||||
]),
|
]),
|
||||||
|
("isteamnetworkingmessages.h", [
|
||||||
|
"ISteamNetworkingMessages"
|
||||||
|
]),
|
||||||
("isteamnetworkingsockets.h", [
|
("isteamnetworkingsockets.h", [
|
||||||
"ISteamNetworkingSockets"
|
"ISteamNetworkingSockets"
|
||||||
]),
|
]),
|
||||||
@ -210,6 +213,9 @@ manually_handled_methods = {
|
|||||||
"cppISteamNetworkingUtils_SteamNetworkingUtils003": [
|
"cppISteamNetworkingUtils_SteamNetworkingUtils003": [
|
||||||
"AllocateMessage",
|
"AllocateMessage",
|
||||||
],
|
],
|
||||||
|
"cppISteamNetworkingMessages_SteamNetworkingMessages002": [
|
||||||
|
"ReceiveMessagesOnChannel"
|
||||||
|
],
|
||||||
}
|
}
|
||||||
|
|
||||||
# manual converters for simple types (function pointers)
|
# manual converters for simple types (function pointers)
|
||||||
@ -859,6 +865,9 @@ def handle_method(cfile, classname, winclassname, cppname, method, cpp, cpp_h, e
|
|||||||
|
|
||||||
def get_iface_version(classname):
|
def get_iface_version(classname):
|
||||||
# ISteamClient -> STEAMCLIENT_INTERFACE_VERSION
|
# ISteamClient -> STEAMCLIENT_INTERFACE_VERSION
|
||||||
|
if "SteamNetworkingMessages" in classname:
|
||||||
|
defname = "%s_VERSION" % classname[1:].upper()
|
||||||
|
else:
|
||||||
defname = "%s_INTERFACE_VERSION" % classname[1:].upper()
|
defname = "%s_INTERFACE_VERSION" % classname[1:].upper()
|
||||||
if defname in iface_versions.keys():
|
if defname in iface_versions.keys():
|
||||||
ver = iface_versions[defname]
|
ver = iface_versions[defname]
|
||||||
@ -1207,7 +1216,7 @@ for sdkver in sdk_versions:
|
|||||||
for f in os.listdir("steamworks_sdk_%s" % sdkver):
|
for f in os.listdir("steamworks_sdk_%s" % sdkver):
|
||||||
x = open("steamworks_sdk_%s/%s" % (sdkver, f), "r")
|
x = open("steamworks_sdk_%s/%s" % (sdkver, f), "r")
|
||||||
for l in x:
|
for l in x:
|
||||||
if "INTERFACE_VERSION" in l:
|
if "define STEAM" in l and "_VERSION" in l:
|
||||||
result = prog.match(l)
|
result = prog.match(l)
|
||||||
if result:
|
if result:
|
||||||
iface, version = result.group(1, 2)
|
iface, version = result.group(1, 2)
|
||||||
|
@ -98,7 +98,8 @@ typedef uint32_t EUserUGCList,
|
|||||||
ESteamIPv6ConnectivityState,
|
ESteamIPv6ConnectivityState,
|
||||||
ESteamIPv6ConnectivityProtocol,
|
ESteamIPv6ConnectivityProtocol,
|
||||||
EDurationControlOnlineState,
|
EDurationControlOnlineState,
|
||||||
ETextFilteringContext
|
ETextFilteringContext,
|
||||||
|
ESteamNetworkingConnectionState
|
||||||
;
|
;
|
||||||
|
|
||||||
/* XXX NO */
|
/* XXX NO */
|
||||||
|
@ -198,4 +198,14 @@ void cppISteamNetworkingSockets_SteamNetworkingSockets009_SendMessages(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int cppISteamNetworkingMessages_SteamNetworkingMessages002_ReceiveMessagesOnChannel(
|
||||||
|
void *linux_side, int nLocalChannel,
|
||||||
|
winSteamNetworkingMessage_t_150 ** ppOutMessages, int nMaxMessages)
|
||||||
|
{
|
||||||
|
SteamNetworkingMessage_t *lin_ppOutMessages[nMaxMessages];
|
||||||
|
int retval = ((ISteamNetworkingMessages*)linux_side)->ReceiveMessagesOnChannel(nLocalChannel, lin_ppOutMessages, nMaxMessages);
|
||||||
|
lin_to_win_struct_SteamNetworkingMessage_t_150(retval, lin_ppOutMessages, ppOutMessages, nMaxMessages);
|
||||||
|
return retval;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
#ifndef ISTEAMNETWORKINGMESSAGES
|
#ifndef ISTEAMNETWORKINGMESSAGES
|
||||||
#define ISTEAMNETWORKINGMESSAGES
|
#define ISTEAMNETWORKINGMESSAGES
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "steamnetworkingtypes.h"
|
#include "steamnetworkingtypes.h"
|
||||||
|
|
||||||
|
92
lsteamclient/winISteamNetworkingMessages.c
Normal file
92
lsteamclient/winISteamNetworkingMessages.c
Normal file
@ -0,0 +1,92 @@
|
|||||||
|
/* This file is auto-generated, do not edit. */
|
||||||
|
#include <stdarg.h>
|
||||||
|
|
||||||
|
#include "windef.h"
|
||||||
|
#include "winbase.h"
|
||||||
|
#include "wine/debug.h"
|
||||||
|
|
||||||
|
#include "cxx.h"
|
||||||
|
|
||||||
|
#include "steam_defs.h"
|
||||||
|
|
||||||
|
#include "steamclient_private.h"
|
||||||
|
|
||||||
|
#include "struct_converters.h"
|
||||||
|
|
||||||
|
WINE_DEFAULT_DEBUG_CHANNEL(steamclient);
|
||||||
|
|
||||||
|
#include "cppISteamNetworkingMessages_SteamNetworkingMessages002.h"
|
||||||
|
|
||||||
|
typedef struct __winISteamNetworkingMessages_SteamNetworkingMessages002 {
|
||||||
|
vtable_ptr *vtable;
|
||||||
|
void *linux_side;
|
||||||
|
} winISteamNetworkingMessages_SteamNetworkingMessages002;
|
||||||
|
|
||||||
|
DEFINE_THISCALL_WRAPPER(winISteamNetworkingMessages_SteamNetworkingMessages002_SendMessageToUser, 24)
|
||||||
|
EResult __thiscall winISteamNetworkingMessages_SteamNetworkingMessages002_SendMessageToUser(winISteamNetworkingMessages_SteamNetworkingMessages002 *_this, const SteamNetworkingIdentity * identityRemote, const void * pubData, uint32 cubData, int nSendFlags, int nRemoteChannel)
|
||||||
|
{
|
||||||
|
TRACE("%p\n", _this);
|
||||||
|
return cppISteamNetworkingMessages_SteamNetworkingMessages002_SendMessageToUser(_this->linux_side, identityRemote, pubData, cubData, nSendFlags, nRemoteChannel);
|
||||||
|
}
|
||||||
|
|
||||||
|
DEFINE_THISCALL_WRAPPER(winISteamNetworkingMessages_SteamNetworkingMessages002_ReceiveMessagesOnChannel, 16)
|
||||||
|
int __thiscall winISteamNetworkingMessages_SteamNetworkingMessages002_ReceiveMessagesOnChannel(winISteamNetworkingMessages_SteamNetworkingMessages002 *_this, int nLocalChannel, winSteamNetworkingMessage_t_150 ** ppOutMessages, int nMaxMessages)
|
||||||
|
{
|
||||||
|
TRACE("%p\n", _this);
|
||||||
|
return cppISteamNetworkingMessages_SteamNetworkingMessages002_ReceiveMessagesOnChannel(_this->linux_side, nLocalChannel, ppOutMessages, nMaxMessages);
|
||||||
|
}
|
||||||
|
|
||||||
|
DEFINE_THISCALL_WRAPPER(winISteamNetworkingMessages_SteamNetworkingMessages002_AcceptSessionWithUser, 8)
|
||||||
|
bool __thiscall winISteamNetworkingMessages_SteamNetworkingMessages002_AcceptSessionWithUser(winISteamNetworkingMessages_SteamNetworkingMessages002 *_this, const SteamNetworkingIdentity * identityRemote)
|
||||||
|
{
|
||||||
|
TRACE("%p\n", _this);
|
||||||
|
return cppISteamNetworkingMessages_SteamNetworkingMessages002_AcceptSessionWithUser(_this->linux_side, identityRemote);
|
||||||
|
}
|
||||||
|
|
||||||
|
DEFINE_THISCALL_WRAPPER(winISteamNetworkingMessages_SteamNetworkingMessages002_CloseSessionWithUser, 8)
|
||||||
|
bool __thiscall winISteamNetworkingMessages_SteamNetworkingMessages002_CloseSessionWithUser(winISteamNetworkingMessages_SteamNetworkingMessages002 *_this, const SteamNetworkingIdentity * identityRemote)
|
||||||
|
{
|
||||||
|
TRACE("%p\n", _this);
|
||||||
|
return cppISteamNetworkingMessages_SteamNetworkingMessages002_CloseSessionWithUser(_this->linux_side, identityRemote);
|
||||||
|
}
|
||||||
|
|
||||||
|
DEFINE_THISCALL_WRAPPER(winISteamNetworkingMessages_SteamNetworkingMessages002_CloseChannelWithUser, 12)
|
||||||
|
bool __thiscall winISteamNetworkingMessages_SteamNetworkingMessages002_CloseChannelWithUser(winISteamNetworkingMessages_SteamNetworkingMessages002 *_this, const SteamNetworkingIdentity * identityRemote, int nLocalChannel)
|
||||||
|
{
|
||||||
|
TRACE("%p\n", _this);
|
||||||
|
return cppISteamNetworkingMessages_SteamNetworkingMessages002_CloseChannelWithUser(_this->linux_side, identityRemote, nLocalChannel);
|
||||||
|
}
|
||||||
|
|
||||||
|
DEFINE_THISCALL_WRAPPER(winISteamNetworkingMessages_SteamNetworkingMessages002_GetSessionConnectionInfo, 16)
|
||||||
|
ESteamNetworkingConnectionState __thiscall winISteamNetworkingMessages_SteamNetworkingMessages002_GetSessionConnectionInfo(winISteamNetworkingMessages_SteamNetworkingMessages002 *_this, const SteamNetworkingIdentity * identityRemote, SteamNetConnectionInfo_t * pConnectionInfo, SteamNetworkingQuickConnectionStatus * pQuickStatus)
|
||||||
|
{
|
||||||
|
TRACE("%p\n", _this);
|
||||||
|
return cppISteamNetworkingMessages_SteamNetworkingMessages002_GetSessionConnectionInfo(_this->linux_side, identityRemote, pConnectionInfo, pQuickStatus);
|
||||||
|
}
|
||||||
|
|
||||||
|
extern vtable_ptr winISteamNetworkingMessages_SteamNetworkingMessages002_vtable;
|
||||||
|
|
||||||
|
#ifndef __GNUC__
|
||||||
|
void __asm_dummy_vtables(void) {
|
||||||
|
#endif
|
||||||
|
__ASM_VTABLE(winISteamNetworkingMessages_SteamNetworkingMessages002,
|
||||||
|
VTABLE_ADD_FUNC(winISteamNetworkingMessages_SteamNetworkingMessages002_SendMessageToUser)
|
||||||
|
VTABLE_ADD_FUNC(winISteamNetworkingMessages_SteamNetworkingMessages002_ReceiveMessagesOnChannel)
|
||||||
|
VTABLE_ADD_FUNC(winISteamNetworkingMessages_SteamNetworkingMessages002_AcceptSessionWithUser)
|
||||||
|
VTABLE_ADD_FUNC(winISteamNetworkingMessages_SteamNetworkingMessages002_CloseSessionWithUser)
|
||||||
|
VTABLE_ADD_FUNC(winISteamNetworkingMessages_SteamNetworkingMessages002_CloseChannelWithUser)
|
||||||
|
VTABLE_ADD_FUNC(winISteamNetworkingMessages_SteamNetworkingMessages002_GetSessionConnectionInfo)
|
||||||
|
);
|
||||||
|
#ifndef __GNUC__
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
winISteamNetworkingMessages_SteamNetworkingMessages002 *create_winISteamNetworkingMessages_SteamNetworkingMessages002(void *linux_side)
|
||||||
|
{
|
||||||
|
winISteamNetworkingMessages_SteamNetworkingMessages002 *r = HeapAlloc(GetProcessHeap(), 0, sizeof(winISteamNetworkingMessages_SteamNetworkingMessages002));
|
||||||
|
TRACE("-> %p\n", r);
|
||||||
|
r->vtable = &winISteamNetworkingMessages_SteamNetworkingMessages002_vtable;
|
||||||
|
r->linux_side = linux_side;
|
||||||
|
return r;
|
||||||
|
}
|
||||||
|
|
@ -27,6 +27,7 @@ extern void *create_winISteamGameServer_SteamGameServer013(void *);
|
|||||||
extern void *create_winISteamGameServerStats_SteamGameServerStats001(void *);
|
extern void *create_winISteamGameServerStats_SteamGameServerStats001(void *);
|
||||||
extern void *create_winISteamGameCoordinator_SteamGameCoordinator001(void *);
|
extern void *create_winISteamGameCoordinator_SteamGameCoordinator001(void *);
|
||||||
extern void *create_winISteamParentalSettings_STEAMPARENTALSETTINGS_INTERFACE_VERSION001(void *);
|
extern void *create_winISteamParentalSettings_STEAMPARENTALSETTINGS_INTERFACE_VERSION001(void *);
|
||||||
|
extern void *create_winISteamNetworkingMessages_SteamNetworkingMessages002(void *);
|
||||||
extern void *create_winISteamNetworkingSockets_SteamNetworkingSockets009(void *);
|
extern void *create_winISteamNetworkingSockets_SteamNetworkingSockets009(void *);
|
||||||
extern void *create_winISteamNetworkingUtils_SteamNetworkingUtils003(void *);
|
extern void *create_winISteamNetworkingUtils_SteamNetworkingUtils003(void *);
|
||||||
extern void *create_winISteamUtils_SteamUtils009(void *);
|
extern void *create_winISteamUtils_SteamUtils009(void *);
|
||||||
|
@ -27,6 +27,7 @@
|
|||||||
{"SteamGameServerStats001", &create_winISteamGameServerStats_SteamGameServerStats001},
|
{"SteamGameServerStats001", &create_winISteamGameServerStats_SteamGameServerStats001},
|
||||||
{"SteamGameCoordinator001", &create_winISteamGameCoordinator_SteamGameCoordinator001},
|
{"SteamGameCoordinator001", &create_winISteamGameCoordinator_SteamGameCoordinator001},
|
||||||
{"STEAMPARENTALSETTINGS_INTERFACE_VERSION001", &create_winISteamParentalSettings_STEAMPARENTALSETTINGS_INTERFACE_VERSION001},
|
{"STEAMPARENTALSETTINGS_INTERFACE_VERSION001", &create_winISteamParentalSettings_STEAMPARENTALSETTINGS_INTERFACE_VERSION001},
|
||||||
|
{"SteamNetworkingMessages002", &create_winISteamNetworkingMessages_SteamNetworkingMessages002},
|
||||||
{"SteamNetworkingSockets009", &create_winISteamNetworkingSockets_SteamNetworkingSockets009},
|
{"SteamNetworkingSockets009", &create_winISteamNetworkingSockets_SteamNetworkingSockets009},
|
||||||
{"SteamNetworkingUtils003", &create_winISteamNetworkingUtils_SteamNetworkingUtils003},
|
{"SteamNetworkingUtils003", &create_winISteamNetworkingUtils_SteamNetworkingUtils003},
|
||||||
{"SteamUtils009", &create_winISteamUtils_SteamUtils009},
|
{"SteamUtils009", &create_winISteamUtils_SteamUtils009},
|
||||||
|
Loading…
Reference in New Issue
Block a user