lsteamclient: Support ISteamParties

This commit is contained in:
Andrew Eikum 2019-02-25 09:50:52 -06:00
parent 4880c3b3ab
commit f6c12f6333
7 changed files with 244 additions and 0 deletions

View File

@ -0,0 +1,88 @@
#include "steam_defs.h"
#include "steamworks_sdk_143/steam_api.h"
#include "steamclient_private.h"
#ifdef __cplusplus
extern "C" {
#endif
#define SDKVER_143
#include "struct_converters.h"
#include "cppISteamParties_SteamParties002.h"
uint32 cppISteamParties_SteamParties002_GetNumActiveBeacons(void *linux_side)
{
return ((ISteamParties*)linux_side)->GetNumActiveBeacons();
}
PartyBeaconID_t cppISteamParties_SteamParties002_GetBeaconByIndex(void *linux_side, uint32 unIndex)
{
return ((ISteamParties*)linux_side)->GetBeaconByIndex((uint32)unIndex);
}
bool cppISteamParties_SteamParties002_GetBeaconDetails(void *linux_side, PartyBeaconID_t ulBeaconID, CSteamID * pSteamIDBeaconOwner, winSteamPartyBeaconLocation_t_143 * pLocation, char * pchMetadata, int cchMetadata)
{
SteamPartyBeaconLocation_t lin_pLocation;
win_to_lin_struct_SteamPartyBeaconLocation_t_143(pLocation, &lin_pLocation);
bool retval = ((ISteamParties*)linux_side)->GetBeaconDetails((PartyBeaconID_t)ulBeaconID, (CSteamID *)pSteamIDBeaconOwner, &lin_pLocation, (char *)pchMetadata, (int)cchMetadata);
lin_to_win_struct_SteamPartyBeaconLocation_t_143(&lin_pLocation, pLocation);
return retval;
}
SteamAPICall_t cppISteamParties_SteamParties002_JoinParty(void *linux_side, PartyBeaconID_t ulBeaconID)
{
return ((ISteamParties*)linux_side)->JoinParty((PartyBeaconID_t)ulBeaconID);
}
bool cppISteamParties_SteamParties002_GetNumAvailableBeaconLocations(void *linux_side, uint32 * puNumLocations)
{
return ((ISteamParties*)linux_side)->GetNumAvailableBeaconLocations((uint32 *)puNumLocations);
}
bool cppISteamParties_SteamParties002_GetAvailableBeaconLocations(void *linux_side, winSteamPartyBeaconLocation_t_143 * pLocationList, uint32 uMaxNumLocations)
{
SteamPartyBeaconLocation_t lin_pLocationList;
win_to_lin_struct_SteamPartyBeaconLocation_t_143(pLocationList, &lin_pLocationList);
bool retval = ((ISteamParties*)linux_side)->GetAvailableBeaconLocations(&lin_pLocationList, (uint32)uMaxNumLocations);
lin_to_win_struct_SteamPartyBeaconLocation_t_143(&lin_pLocationList, pLocationList);
return retval;
}
SteamAPICall_t cppISteamParties_SteamParties002_CreateBeacon(void *linux_side, uint32 unOpenSlots, winSteamPartyBeaconLocation_t_143 * pBeaconLocation, const char * pchConnectString, const char * pchMetadata)
{
SteamPartyBeaconLocation_t lin_pBeaconLocation;
win_to_lin_struct_SteamPartyBeaconLocation_t_143(pBeaconLocation, &lin_pBeaconLocation);
SteamAPICall_t retval = ((ISteamParties*)linux_side)->CreateBeacon((uint32)unOpenSlots, &lin_pBeaconLocation, (const char *)pchConnectString, (const char *)pchMetadata);
lin_to_win_struct_SteamPartyBeaconLocation_t_143(&lin_pBeaconLocation, pBeaconLocation);
return retval;
}
void cppISteamParties_SteamParties002_OnReservationCompleted(void *linux_side, PartyBeaconID_t ulBeacon, CSteamID steamIDUser)
{
((ISteamParties*)linux_side)->OnReservationCompleted((PartyBeaconID_t)ulBeacon, (CSteamID)steamIDUser);
}
void cppISteamParties_SteamParties002_CancelReservation(void *linux_side, PartyBeaconID_t ulBeacon, CSteamID steamIDUser)
{
((ISteamParties*)linux_side)->CancelReservation((PartyBeaconID_t)ulBeacon, (CSteamID)steamIDUser);
}
SteamAPICall_t cppISteamParties_SteamParties002_ChangeNumOpenSlots(void *linux_side, PartyBeaconID_t ulBeacon, uint32 unOpenSlots)
{
return ((ISteamParties*)linux_side)->ChangeNumOpenSlots((PartyBeaconID_t)ulBeacon, (uint32)unOpenSlots);
}
bool cppISteamParties_SteamParties002_DestroyBeacon(void *linux_side, PartyBeaconID_t ulBeacon)
{
return ((ISteamParties*)linux_side)->DestroyBeacon((PartyBeaconID_t)ulBeacon);
}
bool cppISteamParties_SteamParties002_GetBeaconLocationData(void *linux_side, winSteamPartyBeaconLocation_t_143 BeaconLocation, ESteamPartyBeaconLocationData eData, char * pchDataStringOut, int cchDataStringOut)
{
SteamPartyBeaconLocation_t lin_BeaconLocation;
win_to_lin_struct_SteamPartyBeaconLocation_t_143(&BeaconLocation, &lin_BeaconLocation);
bool retval = ((ISteamParties*)linux_side)->GetBeaconLocationData(lin_BeaconLocation, (ESteamPartyBeaconLocationData)eData, (char *)pchDataStringOut, (int)cchDataStringOut);
lin_to_win_struct_SteamPartyBeaconLocation_t_143(&lin_BeaconLocation, &BeaconLocation);
return retval;
}
#ifdef __cplusplus
}
#endif

View File

@ -0,0 +1,12 @@
extern uint32 cppISteamParties_SteamParties002_GetNumActiveBeacons(void *);
extern PartyBeaconID_t cppISteamParties_SteamParties002_GetBeaconByIndex(void *, uint32);
extern bool cppISteamParties_SteamParties002_GetBeaconDetails(void *, PartyBeaconID_t, CSteamID *, winSteamPartyBeaconLocation_t_143 *, char *, int);
extern SteamAPICall_t cppISteamParties_SteamParties002_JoinParty(void *, PartyBeaconID_t);
extern bool cppISteamParties_SteamParties002_GetNumAvailableBeaconLocations(void *, uint32 *);
extern bool cppISteamParties_SteamParties002_GetAvailableBeaconLocations(void *, winSteamPartyBeaconLocation_t_143 *, uint32);
extern SteamAPICall_t cppISteamParties_SteamParties002_CreateBeacon(void *, uint32, winSteamPartyBeaconLocation_t_143 *, const char *, const char *);
extern void cppISteamParties_SteamParties002_OnReservationCompleted(void *, PartyBeaconID_t, CSteamID);
extern void cppISteamParties_SteamParties002_CancelReservation(void *, PartyBeaconID_t, CSteamID);
extern SteamAPICall_t cppISteamParties_SteamParties002_ChangeNumOpenSlots(void *, PartyBeaconID_t, uint32);
extern bool cppISteamParties_SteamParties002_DestroyBeacon(void *, PartyBeaconID_t);
extern bool cppISteamParties_SteamParties002_GetBeaconLocationData(void *, winSteamPartyBeaconLocation_t_143, ESteamPartyBeaconLocationData, char *, int);

View File

@ -99,6 +99,7 @@ files = [
"ISteamMusic",
"ISteamMusicRemote",
"ISteamNetworking",
"ISteamParties",
"ISteamRemoteStorage",
"ISteamScreenshots",
"ISteamUGC",

View File

@ -71,6 +71,7 @@ typedef uint32_t EUserUGCList,
EXboxOrigin,
EInputSourceMode,
EActivateGameOverlayToWebPageMode,
ESteamPartyBeaconLocationData,
ESteamPartyBeaconLocationType
;

View File

@ -0,0 +1,140 @@
/* 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 "cppISteamParties_SteamParties002.h"
typedef struct __winISteamParties_SteamParties002 {
vtable_ptr *vtable;
void *linux_side;
} winISteamParties_SteamParties002;
DEFINE_THISCALL_WRAPPER(winISteamParties_SteamParties002_GetNumActiveBeacons, 4)
uint32 __thiscall winISteamParties_SteamParties002_GetNumActiveBeacons(winISteamParties_SteamParties002 *_this)
{
TRACE("%p\n", _this);
return cppISteamParties_SteamParties002_GetNumActiveBeacons(_this->linux_side);
}
DEFINE_THISCALL_WRAPPER(winISteamParties_SteamParties002_GetBeaconByIndex, 8)
PartyBeaconID_t __thiscall winISteamParties_SteamParties002_GetBeaconByIndex(winISteamParties_SteamParties002 *_this, uint32 unIndex)
{
TRACE("%p\n", _this);
return cppISteamParties_SteamParties002_GetBeaconByIndex(_this->linux_side, unIndex);
}
DEFINE_THISCALL_WRAPPER(winISteamParties_SteamParties002_GetBeaconDetails, 28)
bool __thiscall winISteamParties_SteamParties002_GetBeaconDetails(winISteamParties_SteamParties002 *_this, PartyBeaconID_t ulBeaconID, CSteamID * pSteamIDBeaconOwner, winSteamPartyBeaconLocation_t_143 * pLocation, char * pchMetadata, int cchMetadata)
{
TRACE("%p\n", _this);
return cppISteamParties_SteamParties002_GetBeaconDetails(_this->linux_side, ulBeaconID, pSteamIDBeaconOwner, pLocation, pchMetadata, cchMetadata);
}
DEFINE_THISCALL_WRAPPER(winISteamParties_SteamParties002_JoinParty, 12)
SteamAPICall_t __thiscall winISteamParties_SteamParties002_JoinParty(winISteamParties_SteamParties002 *_this, PartyBeaconID_t ulBeaconID)
{
TRACE("%p\n", _this);
return cppISteamParties_SteamParties002_JoinParty(_this->linux_side, ulBeaconID);
}
DEFINE_THISCALL_WRAPPER(winISteamParties_SteamParties002_GetNumAvailableBeaconLocations, 8)
bool __thiscall winISteamParties_SteamParties002_GetNumAvailableBeaconLocations(winISteamParties_SteamParties002 *_this, uint32 * puNumLocations)
{
TRACE("%p\n", _this);
return cppISteamParties_SteamParties002_GetNumAvailableBeaconLocations(_this->linux_side, puNumLocations);
}
DEFINE_THISCALL_WRAPPER(winISteamParties_SteamParties002_GetAvailableBeaconLocations, 12)
bool __thiscall winISteamParties_SteamParties002_GetAvailableBeaconLocations(winISteamParties_SteamParties002 *_this, winSteamPartyBeaconLocation_t_143 * pLocationList, uint32 uMaxNumLocations)
{
TRACE("%p\n", _this);
return cppISteamParties_SteamParties002_GetAvailableBeaconLocations(_this->linux_side, pLocationList, uMaxNumLocations);
}
DEFINE_THISCALL_WRAPPER(winISteamParties_SteamParties002_CreateBeacon, 20)
SteamAPICall_t __thiscall winISteamParties_SteamParties002_CreateBeacon(winISteamParties_SteamParties002 *_this, uint32 unOpenSlots, winSteamPartyBeaconLocation_t_143 * pBeaconLocation, const char * pchConnectString, const char * pchMetadata)
{
TRACE("%p\n", _this);
return cppISteamParties_SteamParties002_CreateBeacon(_this->linux_side, unOpenSlots, pBeaconLocation, pchConnectString, pchMetadata);
}
DEFINE_THISCALL_WRAPPER(winISteamParties_SteamParties002_OnReservationCompleted, 20)
void __thiscall winISteamParties_SteamParties002_OnReservationCompleted(winISteamParties_SteamParties002 *_this, PartyBeaconID_t ulBeacon, CSteamID steamIDUser)
{
TRACE("%p\n", _this);
cppISteamParties_SteamParties002_OnReservationCompleted(_this->linux_side, ulBeacon, steamIDUser);
}
DEFINE_THISCALL_WRAPPER(winISteamParties_SteamParties002_CancelReservation, 20)
void __thiscall winISteamParties_SteamParties002_CancelReservation(winISteamParties_SteamParties002 *_this, PartyBeaconID_t ulBeacon, CSteamID steamIDUser)
{
TRACE("%p\n", _this);
cppISteamParties_SteamParties002_CancelReservation(_this->linux_side, ulBeacon, steamIDUser);
}
DEFINE_THISCALL_WRAPPER(winISteamParties_SteamParties002_ChangeNumOpenSlots, 16)
SteamAPICall_t __thiscall winISteamParties_SteamParties002_ChangeNumOpenSlots(winISteamParties_SteamParties002 *_this, PartyBeaconID_t ulBeacon, uint32 unOpenSlots)
{
TRACE("%p\n", _this);
return cppISteamParties_SteamParties002_ChangeNumOpenSlots(_this->linux_side, ulBeacon, unOpenSlots);
}
DEFINE_THISCALL_WRAPPER(winISteamParties_SteamParties002_DestroyBeacon, 12)
bool __thiscall winISteamParties_SteamParties002_DestroyBeacon(winISteamParties_SteamParties002 *_this, PartyBeaconID_t ulBeacon)
{
TRACE("%p\n", _this);
return cppISteamParties_SteamParties002_DestroyBeacon(_this->linux_side, ulBeacon);
}
DEFINE_THISCALL_WRAPPER(winISteamParties_SteamParties002_GetBeaconLocationData, 28)
bool __thiscall winISteamParties_SteamParties002_GetBeaconLocationData(winISteamParties_SteamParties002 *_this, winSteamPartyBeaconLocation_t_143 BeaconLocation, ESteamPartyBeaconLocationData eData, char * pchDataStringOut, int cchDataStringOut)
{
TRACE("%p\n", _this);
return cppISteamParties_SteamParties002_GetBeaconLocationData(_this->linux_side, BeaconLocation, eData, pchDataStringOut, cchDataStringOut);
}
extern vtable_ptr winISteamParties_SteamParties002_vtable;
#ifndef __GNUC__
void __asm_dummy_vtables(void) {
#endif
__ASM_VTABLE(winISteamParties_SteamParties002,
VTABLE_ADD_FUNC(winISteamParties_SteamParties002_GetNumActiveBeacons)
VTABLE_ADD_FUNC(winISteamParties_SteamParties002_GetBeaconByIndex)
VTABLE_ADD_FUNC(winISteamParties_SteamParties002_GetBeaconDetails)
VTABLE_ADD_FUNC(winISteamParties_SteamParties002_JoinParty)
VTABLE_ADD_FUNC(winISteamParties_SteamParties002_GetNumAvailableBeaconLocations)
VTABLE_ADD_FUNC(winISteamParties_SteamParties002_GetAvailableBeaconLocations)
VTABLE_ADD_FUNC(winISteamParties_SteamParties002_CreateBeacon)
VTABLE_ADD_FUNC(winISteamParties_SteamParties002_OnReservationCompleted)
VTABLE_ADD_FUNC(winISteamParties_SteamParties002_CancelReservation)
VTABLE_ADD_FUNC(winISteamParties_SteamParties002_ChangeNumOpenSlots)
VTABLE_ADD_FUNC(winISteamParties_SteamParties002_DestroyBeacon)
VTABLE_ADD_FUNC(winISteamParties_SteamParties002_GetBeaconLocationData)
);
#ifndef __GNUC__
}
#endif
winISteamParties_SteamParties002 *create_winISteamParties_SteamParties002(void *linux_side)
{
winISteamParties_SteamParties002 *r = HeapAlloc(GetProcessHeap(), 0, sizeof(winISteamParties_SteamParties002));
TRACE("-> %p\n", r);
r->vtable = &winISteamParties_SteamParties002_vtable;
r->linux_side = linux_side;
return r;
}

View File

@ -4,6 +4,7 @@ extern void *create_winISteamFriends_SteamFriends017(void *);
extern void *create_winISteamUtils_SteamUtils009(void *);
extern void *create_winISteamMatchmaking_SteamMatchMaking009(void *);
extern void *create_winISteamMatchmakingServers_SteamMatchMakingServers002(void *);
extern void *create_winISteamParties_SteamParties002(void *);
extern void *create_winISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION014(void *);
extern void *create_winISteamUserStats_STEAMUSERSTATS_INTERFACE_VERSION011(void *);
extern void *create_winISteamApps_STEAMAPPS_INTERFACE_VERSION008(void *);

View File

@ -4,6 +4,7 @@
{"SteamUtils009", &create_winISteamUtils_SteamUtils009},
{"SteamMatchMaking009", &create_winISteamMatchmaking_SteamMatchMaking009},
{"SteamMatchMakingServers002", &create_winISteamMatchmakingServers_SteamMatchMakingServers002},
{"SteamParties002", &create_winISteamParties_SteamParties002},
{"STEAMREMOTESTORAGE_INTERFACE_VERSION014", &create_winISteamRemoteStorage_STEAMREMOTESTORAGE_INTERFACE_VERSION014},
{"STEAMUSERSTATS_INTERFACE_VERSION011", &create_winISteamUserStats_STEAMUSERSTATS_INTERFACE_VERSION011},
{"STEAMAPPS_INTERFACE_VERSION008", &create_winISteamApps_STEAMAPPS_INTERFACE_VERSION008},