Skip to content

Commit

Permalink
lsteamclient: Add ISteamTimeline interface.
Browse files Browse the repository at this point in the history
CW-Bug-Id: #24276
  • Loading branch information
Paul Gofman authored and ivyl committed Sep 23, 2024
1 parent a9ad958 commit 5d2111a
Show file tree
Hide file tree
Showing 10 changed files with 194 additions and 26 deletions.
2 changes: 2 additions & 0 deletions lsteamclient/Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ SOURCES = \
winISteamRemotePlay.c \
winISteamRemoteStorage.c \
winISteamScreenshots.c \
winISteamTimeline.c \
winISteamUGC.c \
winISteamUnifiedMessages.c \
winISteamUser.c \
Expand Down Expand Up @@ -182,6 +183,7 @@ SOURCES = \
cppISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION001.cpp \
cppISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION002.cpp \
cppISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION003.cpp \
cppISteamTimeline_STEAMTIMELINE_INTERFACE_V001.cpp \
cppISteamUGC_STEAMUGC_INTERFACE_VERSION001.cpp \
cppISteamUGC_STEAMUGC_INTERFACE_VERSION002.cpp \
cppISteamUGC_STEAMUGC_INTERFACE_VERSION003.cpp \
Expand Down
39 changes: 39 additions & 0 deletions lsteamclient/cppISteamTimeline_STEAMTIMELINE_INTERFACE_V001.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
/* This file is auto-generated, do not edit. */
#include "unix_private.h"

#if 0
#pragma makedep unix
#endif

NTSTATUS ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineStateDescription( void *args )
{
struct ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineStateDescription_params *params = (struct ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineStateDescription_params *)args;
struct u_ISteamTimeline_STEAMTIMELINE_INTERFACE_V001 *iface = (struct u_ISteamTimeline_STEAMTIMELINE_INTERFACE_V001 *)params->linux_side;
iface->SetTimelineStateDescription( params->pchDescription, params->flTimeDelta );
return 0;
}

NTSTATUS ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_ClearTimelineStateDescription( void *args )
{
struct ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_ClearTimelineStateDescription_params *params = (struct ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_ClearTimelineStateDescription_params *)args;
struct u_ISteamTimeline_STEAMTIMELINE_INTERFACE_V001 *iface = (struct u_ISteamTimeline_STEAMTIMELINE_INTERFACE_V001 *)params->linux_side;
iface->ClearTimelineStateDescription( params->flTimeDelta );
return 0;
}

NTSTATUS ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_AddTimelineEvent( void *args )
{
struct ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_AddTimelineEvent_params *params = (struct ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_AddTimelineEvent_params *)args;
struct u_ISteamTimeline_STEAMTIMELINE_INTERFACE_V001 *iface = (struct u_ISteamTimeline_STEAMTIMELINE_INTERFACE_V001 *)params->linux_side;
iface->AddTimelineEvent( params->pchIcon, params->pchTitle, params->pchDescription, params->unPriority, params->flStartOffsetSeconds, params->flDurationSeconds, params->ePossibleClip );
return 0;
}

NTSTATUS ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineGameMode( void *args )
{
struct ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineGameMode_params *params = (struct ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineGameMode_params *)args;
struct u_ISteamTimeline_STEAMTIMELINE_INTERFACE_V001 *iface = (struct u_ISteamTimeline_STEAMTIMELINE_INTERFACE_V001 *)params->linux_side;
iface->SetTimelineGameMode( params->eMode );
return 0;
}

3 changes: 3 additions & 0 deletions lsteamclient/gen_wrapper.py
Original file line number Diff line number Diff line change
Expand Up @@ -165,6 +165,9 @@
"steamnetworkingfakeip.h": [
"ISteamNetworkingFakeUDPPort"
],
"isteamtimeline.h": [
"ISteamTimeline"
],
}

SDK_CLASSES = {klass: source for source, klasses in SDK_SOURCES.items()
Expand Down
3 changes: 3 additions & 0 deletions lsteamclient/steamclient_generated.c
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ static const struct { const char *iface_version; iface_constructor ctor; } const
{"STEAMSCREENSHOTS_INTERFACE_VERSION001", &create_winISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION001},
{"STEAMSCREENSHOTS_INTERFACE_VERSION002", &create_winISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION002},
{"STEAMSCREENSHOTS_INTERFACE_VERSION003", &create_winISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION003},
{"STEAMTIMELINE_INTERFACE_V001", &create_winISteamTimeline_STEAMTIMELINE_INTERFACE_V001},
{"STEAMUGC_INTERFACE_VERSION001", &create_winISteamUGC_STEAMUGC_INTERFACE_VERSION001},
{"STEAMUGC_INTERFACE_VERSION002", &create_winISteamUGC_STEAMUGC_INTERFACE_VERSION002},
{"STEAMUGC_INTERFACE_VERSION003", &create_winISteamUGC_STEAMUGC_INTERFACE_VERSION003},
Expand Down Expand Up @@ -251,6 +252,7 @@ extern void init_winISteamParties_rtti( char * );
extern void init_winISteamRemotePlay_rtti( char * );
extern void init_winISteamRemoteStorage_rtti( char * );
extern void init_winISteamScreenshots_rtti( char * );
extern void init_winISteamTimeline_rtti( char * );
extern void init_winISteamUGC_rtti( char * );
extern void init_winISteamUnifiedMessages_rtti( char * );
extern void init_winISteamUser_rtti( char * );
Expand Down Expand Up @@ -291,6 +293,7 @@ void init_rtti( char *base )
init_winISteamRemotePlay_rtti( base );
init_winISteamRemoteStorage_rtti( base );
init_winISteamScreenshots_rtti( base );
init_winISteamTimeline_rtti( base );
init_winISteamUGC_rtti( base );
init_winISteamUnifiedMessages_rtti( base );
init_winISteamUser_rtti( base );
Expand Down
1 change: 1 addition & 0 deletions lsteamclient/steamclient_generated.h
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ extern struct w_steam_iface *create_winISteamRemoteStorage_STEAMREMOTESTORAGE_IN
extern struct w_steam_iface *create_winISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION001(void *);
extern struct w_steam_iface *create_winISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION002(void *);
extern struct w_steam_iface *create_winISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION003(void *);
extern struct w_steam_iface *create_winISteamTimeline_STEAMTIMELINE_INTERFACE_V001(void *);
extern struct w_steam_iface *create_winISteamUGC_STEAMUGC_INTERFACE_VERSION001(void *);
extern struct w_steam_iface *create_winISteamUGC_STEAMUGC_INTERFACE_VERSION002(void *);
extern struct w_steam_iface *create_winISteamUGC_STEAMUGC_INTERFACE_VERSION003(void *);
Expand Down
26 changes: 0 additions & 26 deletions lsteamclient/steamclient_structs_generated.h
Original file line number Diff line number Diff line change
Expand Up @@ -2567,12 +2567,6 @@ typedef struct u_ISteamNetworkingCustomSignalingRecvContext u32_ISteamNetworking
typedef struct w_ISteamNetworkingCustomSignalingRecvContext w_ISteamNetworkingCustomSignalingRecvContext;
typedef struct w_ISteamNetworkingCustomSignalingRecvContext w64_ISteamNetworkingCustomSignalingRecvContext;
typedef struct w_ISteamNetworkingCustomSignalingRecvContext w32_ISteamNetworkingCustomSignalingRecvContext;
typedef struct u_ISteamTimeline u_ISteamTimeline;
typedef struct u_ISteamTimeline u64_ISteamTimeline;
typedef struct u_ISteamTimeline u32_ISteamTimeline;
typedef struct w_ISteamTimeline w_ISteamTimeline;
typedef struct w_ISteamTimeline w64_ISteamTimeline;
typedef struct w_ISteamTimeline w32_ISteamTimeline;
typedef struct u64_ItemInstalled_t_160 u64_ItemInstalled_t_160;
typedef struct w64_ItemInstalled_t_160 w64_ItemInstalled_t_160;
typedef struct u32_ItemInstalled_t_160 u32_ItemInstalled_t_160;
Expand Down Expand Up @@ -5861,26 +5855,6 @@ struct u_ISteamNetworkingCustomSignalingRecvContext
#endif /* __cplusplus */
};

struct w_ISteamTimeline
{
#ifdef __cplusplus
virtual void SetTimelineStateDescription( const char *, float ) = 0;
virtual void ClearTimelineStateDescription( float ) = 0;
virtual void AddTimelineEvent( const char *, const char *, const char *, uint32_t, float, float, uint32_t ) = 0;
virtual void SetTimelineGameMode( uint32_t ) = 0;
#endif /* __cplusplus */
};

struct u_ISteamTimeline
{
#ifdef __cplusplus
virtual void SetTimelineStateDescription( const char *, float ) = 0;
virtual void ClearTimelineStateDescription( float ) = 0;
virtual void AddTimelineEvent( const char *, const char *, const char *, uint32_t, float, float, uint32_t ) = 0;
virtual void SetTimelineGameMode( uint32_t ) = 0;
#endif /* __cplusplus */
};

#pragma pack( push, 8 )
struct w64_ItemInstalled_t_160
{
Expand Down
14 changes: 14 additions & 0 deletions lsteamclient/unix_private_generated.h
Original file line number Diff line number Diff line change
Expand Up @@ -7189,6 +7189,16 @@ struct u_ISteamUGC_STEAMUGC_INTERFACE_VERSION020
#endif /* __cplusplus */
};

struct u_ISteamTimeline_STEAMTIMELINE_INTERFACE_V001
{
#ifdef __cplusplus
virtual void SetTimelineStateDescription( const char *, float ) = 0;
virtual void ClearTimelineStateDescription( float ) = 0;
virtual void AddTimelineEvent( const char *, const char *, const char *, uint32_t, float, float, uint32_t ) = 0;
virtual void SetTimelineGameMode( uint32_t ) = 0;
#endif /* __cplusplus */
};

struct u_ISteamVideo_STEAMVIDEO_INTERFACE_V007
{
#ifdef __cplusplus
Expand Down Expand Up @@ -8372,6 +8382,10 @@ NTSTATUS ISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION003_TagUser( void *
NTSTATUS ISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION003_TagPublishedFile( void * );
NTSTATUS ISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION003_IsScreenshotsHooked( void * );
NTSTATUS ISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION003_AddVRScreenshotToLibrary( void * );
NTSTATUS ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineStateDescription( void * );
NTSTATUS ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_ClearTimelineStateDescription( void * );
NTSTATUS ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_AddTimelineEvent( void * );
NTSTATUS ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineGameMode( void * );
NTSTATUS ISteamUGC_STEAMUGC_INTERFACE_VERSION001_CreateQueryUserUGCRequest( void * );
NTSTATUS ISteamUGC_STEAMUGC_INTERFACE_VERSION001_CreateQueryAllUGCRequest( void * );
NTSTATUS ISteamUGC_STEAMUGC_INTERFACE_VERSION001_SendQueryUGCRequest( void * );
Expand Down
4 changes: 4 additions & 0 deletions lsteamclient/unixlib_generated.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1195,6 +1195,10 @@ extern "C" const unixlib_entry_t __wine_unix_call_funcs[] =
ISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION003_TagPublishedFile,
ISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION003_IsScreenshotsHooked,
ISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION003_AddVRScreenshotToLibrary,
ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineStateDescription,
ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_ClearTimelineStateDescription,
ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_AddTimelineEvent,
ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineGameMode,
ISteamUGC_STEAMUGC_INTERFACE_VERSION001_CreateQueryUserUGCRequest,
ISteamUGC_STEAMUGC_INTERFACE_VERSION001_CreateQueryAllUGCRequest,
ISteamUGC_STEAMUGC_INTERFACE_VERSION001_SendQueryUGCRequest,
Expand Down
35 changes: 35 additions & 0 deletions lsteamclient/unixlib_generated.h
Original file line number Diff line number Diff line change
Expand Up @@ -9010,6 +9010,37 @@ struct ISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION003_AddVRScreenshotTo
const char *pchVRFilename;
};

struct ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineStateDescription_params
{
struct u_steam_iface *linux_side;
const char *pchDescription;
float flTimeDelta;
};

struct ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_ClearTimelineStateDescription_params
{
struct u_steam_iface *linux_side;
float flTimeDelta;
};

struct ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_AddTimelineEvent_params
{
struct u_steam_iface *linux_side;
const char *pchIcon;
const char *pchTitle;
const char *pchDescription;
uint32_t unPriority;
float flStartOffsetSeconds;
float flDurationSeconds;
uint32_t ePossibleClip;
};

struct ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineGameMode_params
{
struct u_steam_iface *linux_side;
uint32_t eMode;
};

struct ISteamUGC_STEAMUGC_INTERFACE_VERSION001_CreateQueryUserUGCRequest_params
{
struct u_steam_iface *linux_side;
Expand Down Expand Up @@ -47926,6 +47957,10 @@ enum unix_funcs
unix_ISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION003_TagPublishedFile,
unix_ISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION003_IsScreenshotsHooked,
unix_ISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION003_AddVRScreenshotToLibrary,
unix_ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineStateDescription,
unix_ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_ClearTimelineStateDescription,
unix_ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_AddTimelineEvent,
unix_ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineGameMode,
unix_ISteamUGC_STEAMUGC_INTERFACE_VERSION001_CreateQueryUserUGCRequest,
unix_ISteamUGC_STEAMUGC_INTERFACE_VERSION001_CreateQueryAllUGCRequest,
unix_ISteamUGC_STEAMUGC_INTERFACE_VERSION001_SendQueryUGCRequest,
Expand Down
93 changes: 93 additions & 0 deletions lsteamclient/winISteamTimeline.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
/* This file is auto-generated, do not edit. */
#include "steamclient_private.h"

WINE_DEFAULT_DEBUG_CHANNEL(steamclient);

DEFINE_THISCALL_WRAPPER(winISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineStateDescription, 12)
DEFINE_THISCALL_WRAPPER(winISteamTimeline_STEAMTIMELINE_INTERFACE_V001_ClearTimelineStateDescription, 8)
DEFINE_THISCALL_WRAPPER(winISteamTimeline_STEAMTIMELINE_INTERFACE_V001_AddTimelineEvent, 32)
DEFINE_THISCALL_WRAPPER(winISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineGameMode, 8)

void __thiscall winISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineStateDescription(struct w_steam_iface *_this, const char *pchDescription, float flTimeDelta)
{
struct ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineStateDescription_params params =
{
.linux_side = _this->u_iface,
.pchDescription = pchDescription,
.flTimeDelta = flTimeDelta,
};
TRACE("%p\n", _this);
IsBadStringPtrA(pchDescription, -1);
STEAMCLIENT_CALL( ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineStateDescription, &params );
}

void __thiscall winISteamTimeline_STEAMTIMELINE_INTERFACE_V001_ClearTimelineStateDescription(struct w_steam_iface *_this, float flTimeDelta)
{
struct ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_ClearTimelineStateDescription_params params =
{
.linux_side = _this->u_iface,
.flTimeDelta = flTimeDelta,
};
TRACE("%p\n", _this);
STEAMCLIENT_CALL( ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_ClearTimelineStateDescription, &params );
}

void __thiscall winISteamTimeline_STEAMTIMELINE_INTERFACE_V001_AddTimelineEvent(struct w_steam_iface *_this, const char *pchIcon, const char *pchTitle, const char *pchDescription, uint32_t unPriority, float flStartOffsetSeconds, float flDurationSeconds, uint32_t ePossibleClip)
{
struct ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_AddTimelineEvent_params params =
{
.linux_side = _this->u_iface,
.pchIcon = pchIcon,
.pchTitle = pchTitle,
.pchDescription = pchDescription,
.unPriority = unPriority,
.flStartOffsetSeconds = flStartOffsetSeconds,
.flDurationSeconds = flDurationSeconds,
.ePossibleClip = ePossibleClip,
};
TRACE("%p\n", _this);
IsBadStringPtrA(pchIcon, -1);
IsBadStringPtrA(pchTitle, -1);
IsBadStringPtrA(pchDescription, -1);
STEAMCLIENT_CALL( ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_AddTimelineEvent, &params );
}

void __thiscall winISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineGameMode(struct w_steam_iface *_this, uint32_t eMode)
{
struct ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineGameMode_params params =
{
.linux_side = _this->u_iface,
.eMode = eMode,
};
TRACE("%p\n", _this);
STEAMCLIENT_CALL( ISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineGameMode, &params );
}

extern vtable_ptr winISteamTimeline_STEAMTIMELINE_INTERFACE_V001_vtable;

DEFINE_RTTI_DATA0(winISteamTimeline_STEAMTIMELINE_INTERFACE_V001, 0, ".?AVISteamTimeline@@")

__ASM_BLOCK_BEGIN(winISteamTimeline_STEAMTIMELINE_INTERFACE_V001_vtables)
__ASM_VTABLE(winISteamTimeline_STEAMTIMELINE_INTERFACE_V001,
VTABLE_ADD_FUNC(winISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineStateDescription)
VTABLE_ADD_FUNC(winISteamTimeline_STEAMTIMELINE_INTERFACE_V001_ClearTimelineStateDescription)
VTABLE_ADD_FUNC(winISteamTimeline_STEAMTIMELINE_INTERFACE_V001_AddTimelineEvent)
VTABLE_ADD_FUNC(winISteamTimeline_STEAMTIMELINE_INTERFACE_V001_SetTimelineGameMode)
);
__ASM_BLOCK_END

struct w_steam_iface *create_winISteamTimeline_STEAMTIMELINE_INTERFACE_V001(void *u_iface)
{
struct w_steam_iface *r = alloc_mem_for_iface(sizeof(struct w_steam_iface), "STEAMTIMELINE_INTERFACE_V001");
TRACE("-> %p\n", r);
r->vtable = alloc_vtable(&winISteamTimeline_STEAMTIMELINE_INTERFACE_V001_vtable, 4, "STEAMTIMELINE_INTERFACE_V001");
r->u_iface = u_iface;
return r;
}

void init_winISteamTimeline_rtti( char *base )
{
#ifdef __x86_64__
init_winISteamTimeline_STEAMTIMELINE_INTERFACE_V001_rtti( base );
#endif /* __x86_64__ */
}

0 comments on commit 5d2111a

Please sign in to comment.