build system revision
[vg.git] / vg_steam_user_stats.h
1 #pragma once
2 #include "vg_steam.h"
3
4 #if defined( VALVE_CALLBACK_PACK_SMALL )
5 ;
6 #pragma pack( push, 4 )
7 #elif defined( VALVE_CALLBACK_PACK_LARGE )
8 #pragma pack( push, 8 )
9 #endif
10
11 typedef struct UserStatsReceived_t UserStatsReceived_t;
12 struct UserStatsReceived_t
13 {
14 u64 m_nGameID; // Game these stats are for
15 EResult m_eResult; // Success / error fetching the stats
16 CSteamID m_steamIDUser; // The user for whom the stats are retrieved for
17 };
18 enum { k_iUserStatsReceived = k_iSteamUserStatsCallbacks + 1 };
19
20 #pragma pack(pop)
21
22 typedef void ISteamUserStats;
23 ISteamUserStats *SteamAPI_SteamUserStats_v012(void);
24 static inline ISteamUserStats *SteamAPI_SteamUserStats(void)
25 {
26 return SteamAPI_SteamUserStats_v012();
27 }
28
29 steamapi_bool
30 SteamAPI_ISteamUserStats_RequestCurrentStats( ISteamUserStats* self );
31 steamapi_bool
32 SteamAPI_ISteamUserStats_GetAchievement( ISteamUserStats *self,
33 const char *pchName,
34 steamapi_bool *pbAchieved );
35 steamapi_bool
36 SteamAPI_ISteamUserStats_SetAchievement( ISteamUserStats *self,
37 const char *pchName );
38 steamapi_bool
39 SteamAPI_ISteamUserStats_ClearAchievement( ISteamUserStats *self,
40 const char *pchName );
41 steamapi_bool SteamAPI_ISteamUserStats_StoreStats( ISteamUserStats* self );