You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
2.4 KiB
63 lines
2.4 KiB
//====== Copyright © 1996-2008, Valve Corporation, All rights reserved. ======= |
|
// |
|
// Purpose: interface to app data in Steam |
|
// |
|
//============================================================================= |
|
|
|
#ifndef ISTEAMAPPLIST_H |
|
#define ISTEAMAPPLIST_H |
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
#include "isteamclient.h" |
|
#include "steamtypes.h" |
|
|
|
//----------------------------------------------------------------------------- |
|
// Purpose: This is a restricted interface that can only be used by previously approved apps, |
|
// contact your Steam Account Manager if you believe you need access to this API. |
|
// This interface lets you detect installed apps for the local Steam client, useful for debugging tools |
|
// to offer lists of apps to debug via Steam. |
|
//----------------------------------------------------------------------------- |
|
class ISteamAppList |
|
{ |
|
public: |
|
virtual uint32 GetNumInstalledApps() = 0; |
|
virtual uint32 GetInstalledApps( AppId_t *pvecAppID, uint32 unMaxAppIDs ) = 0; |
|
|
|
virtual int GetAppName( AppId_t nAppID, char *pchName, int cchNameMax ) = 0; // returns -1 if no name was found |
|
virtual int GetAppInstallDir( AppId_t nAppID, char *pchDirectory, int cchNameMax ) = 0; // returns -1 if no dir was found |
|
|
|
virtual int GetAppBuildId( AppId_t nAppID ) = 0; // return the buildid of this app, may change at any time based on backend updates to the game |
|
}; |
|
|
|
#define STEAMAPPLIST_INTERFACE_VERSION "STEAMAPPLIST_INTERFACE_VERSION001" |
|
|
|
// callbacks |
|
#if defined( VALVE_CALLBACK_PACK_SMALL ) |
|
#pragma pack( push, 4 ) |
|
#elif defined( VALVE_CALLBACK_PACK_LARGE ) |
|
#pragma pack( push, 8 ) |
|
#else |
|
#error isteamclient.h must be included |
|
#endif |
|
|
|
|
|
//--------------------------------------------------------------------------------- |
|
// Purpose: Sent when a new app is installed |
|
//--------------------------------------------------------------------------------- |
|
DEFINE_CALLBACK( SteamAppInstalled_t, k_iSteamAppListCallbacks + 1 ); |
|
CALLBACK_MEMBER( 0, AppId_t, m_nAppID ) // ID of the app that installs |
|
END_DEFINE_CALLBACK_1() |
|
|
|
|
|
//--------------------------------------------------------------------------------- |
|
// Purpose: Sent when an app is uninstalled |
|
//--------------------------------------------------------------------------------- |
|
DEFINE_CALLBACK( SteamAppUninstalled_t, k_iSteamAppListCallbacks + 2 ); |
|
CALLBACK_MEMBER( 0, AppId_t, m_nAppID ) // ID of the app that installs |
|
END_DEFINE_CALLBACK_1() |
|
|
|
|
|
#pragma pack( pop ) |
|
#endif // ISTEAMAPPLIST_H
|
|
|