lsteamclient: Fix SteamNetConnectionStatusChangedCallback_t conversion

It was declared inside an extern "C" block in the SDK, which for some
reason cindex doesn't include.
This commit is contained in:
Andrew Eikum 2019-05-30 11:22:11 -05:00
parent 6195cb8a0a
commit 5ed5cbf286
7 changed files with 31 additions and 1 deletions

View File

@ -45,6 +45,7 @@ case 0x000c0d59: win_msg->m_cubParam = 16; win_msg->m_pubParam = HeapAlloc(GetPr
case 0x000c11a4: win_msg->m_cubParam = 12; win_msg->m_pubParam = HeapAlloc(GetProcessHeap(), 0, win_msg->m_cubParam); cb_HTML_FileOpenDialog_t_12((void*)lin_msg.m_pubParam, (void*)win_msg->m_pubParam); break;
case 0x00141260: win_msg->m_cubParam = 24; win_msg->m_pubParam = HeapAlloc(GetProcessHeap(), 0, win_msg->m_cubParam); cb_SteamInventoryStartPurchaseResult_t_24((void*)lin_msg.m_pubParam, (void*)win_msg->m_pubParam); break;
case 0x002000d1: win_msg->m_cubParam = 40; win_msg->m_pubParam = HeapAlloc(GetProcessHeap(), 0, win_msg->m_cubParam); cb_GSReputation_t_40((void*)lin_msg.m_pubParam, (void*)win_msg->m_pubParam); break;
case 0x02c004c5: win_msg->m_cubParam = 712; win_msg->m_pubParam = HeapAlloc(GetProcessHeap(), 0, win_msg->m_cubParam); cb_SteamNetConnectionStatusChangedCallback_t_712((void*)lin_msg.m_pubParam, (void*)win_msg->m_pubParam); break;
case 0x00140835: win_msg->m_cubParam = 24; win_msg->m_pubParam = HeapAlloc(GetProcessHeap(), 0, win_msg->m_cubParam); cb_HTTPRequestCompleted_t_24((void*)lin_msg.m_pubParam, (void*)win_msg->m_pubParam); break;
case 0x26240d4a: win_msg->m_cubParam = 9776; win_msg->m_pubParam = HeapAlloc(GetProcessHeap(), 0, win_msg->m_cubParam); cb_SteamUGCRequestUGCDetailsResult_t_9776((void*)lin_msg.m_pubParam, (void*)win_msg->m_pubParam); break;
case 0x000c051b: win_msg->m_cubParam = 16; win_msg->m_pubParam = HeapAlloc(GetProcessHeap(), 0, win_msg->m_cubParam); cb_RemoteStorageFileShareResult_t_16((void*)lin_msg.m_pubParam, (void*)win_msg->m_pubParam); break;

View File

@ -186,6 +186,10 @@ struct GSReputation_t;
struct winGSReputation_t_40;
extern void cb_GSReputation_t_40(const struct GSReputation_t *l, struct winGSReputation_t_40 *w);
struct SteamNetConnectionStatusChangedCallback_t;
struct winSteamNetConnectionStatusChangedCallback_t_712;
extern void cb_SteamNetConnectionStatusChangedCallback_t_712(const struct SteamNetConnectionStatusChangedCallback_t *l, struct winSteamNetConnectionStatusChangedCallback_t_712 *w);
struct HTTPRequestCompleted_t;
struct winHTTPRequestCompleted_t_24;
extern void cb_HTTPRequestCompleted_t_24(const struct HTTPRequestCompleted_t *l, struct winHTTPRequestCompleted_t_24 *w);

View File

@ -54,6 +54,8 @@ case 2103: /* HTTPRequestDataReceived_t_24 */
return 20;
case 2101: /* HTTPRequestCompleted_t_32 */
return 24;
case 1221: /* SteamNetConnectionStatusChangedCallback_t_712 */
return 704;
case 2102: /* HTTPRequestHeadersReceived_t_16 */
return 12;
case 3402: /* SteamUGCRequestUGCDetailsResult_t_9784 */

View File

@ -173,6 +173,12 @@ case 2101:
case 24: cb_HTTPRequestCompleted_t_24(lin_callback, callback); break;
}
break;
case 1221:
switch(callback_len){
default:
case 712: cb_SteamNetConnectionStatusChangedCallback_t_712(lin_callback, callback); break;
}
break;
case 2102:
switch(callback_len){
default:

View File

@ -874,6 +874,8 @@ def handle_struct(sdkver, struct):
cppfile.write("#include \"steam_defs.h\"\n")
cppfile.write("#include \"steamworks_sdk_%s/steam_api.h\"\n" % sdkver)
cppfile.write("#include \"steamworks_sdk_%s/isteamgameserver.h\"\n" % (sdkver))
if os.path.isfile("steamworks_sdk_%s/isteamnetworkingsockets.h" % sdkver):
cppfile.write("#include \"steamworks_sdk_%s/isteamnetworkingsockets.h\"\n" % (sdkver))
if os.path.isfile("steamworks_sdk_%s/isteamgameserverstats.h" % sdkver):
cppfile.write("#include \"steamworks_sdk_%s/isteamgameserverstats.h\"\n" % (sdkver))
if os.path.isfile("steamworks_sdk_%s/isteamgamecoordinator.h" % sdkver):

View File

@ -424,6 +424,7 @@ extern "C" {
inline ISteamNetworkingSockets *SteamGameServerNetworkingSockets();
STEAM_DEFINE_GAMESERVER_INTERFACE_ACCESSOR( ISteamNetworkingSockets *, SteamGameServerNetworkingSockets, STEAMNETWORKINGSOCKETS_INTERFACE_VERSION );
#endif
}
/// Callback struct used to notify when a connection has changed state
#if defined( VALVE_CALLBACK_PACK_SMALL )
@ -484,6 +485,5 @@ struct SteamNetConnectionStatusChangedCallback_t
};
#pragma pack( pop )
}
#endif // ISTEAMNETWORKINGSOCKETS

View File

@ -1,6 +1,7 @@
#include "steam_defs.h"
#include "steamworks_sdk_144/steam_api.h"
#include "steamworks_sdk_144/isteamgameserver.h"
#include "steamworks_sdk_144/isteamnetworkingsockets.h"
#include "steamworks_sdk_144/isteamgameserverstats.h"
#include "steamworks_sdk_144/isteamgamecoordinator.h"
#include "steamworks_sdk_144/steamnetworkingtypes.h"
@ -841,5 +842,19 @@ void cb_GSReputation_t_40(const struct GSReputation_t *lin, struct winGSReputati
win->m_unBanExpires = lin->m_unBanExpires;
}
#pragma pack( push, 8 )
struct winSteamNetConnectionStatusChangedCallback_t_712 {
HSteamNetConnection m_hConn;
SteamNetConnectionInfo_t m_info;
ESteamNetworkingConnectionState m_eOldState;
} __attribute__ ((ms_struct));
#pragma pack( pop )
void cb_SteamNetConnectionStatusChangedCallback_t_712(const struct SteamNetConnectionStatusChangedCallback_t *lin, struct winSteamNetConnectionStatusChangedCallback_t_712 *win)
{
win->m_hConn = lin->m_hConn;
win->m_info = lin->m_info;
win->m_eOldState = lin->m_eOldState;
}
}