hl2_src-leak-2017/src/common/iappinformation.h

43 lines
1.3 KiB
C++

//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================
#ifndef IAPPINFORMATION_H
#define IAPPINFORMATION_H
#ifdef _WIN32
#pragma once
#endif
#include "interface.h"
//-----------------------------------------------------------------------------
// Purpose: Interface to running the game engine
//-----------------------------------------------------------------------------
abstract_class IAppInformation : public IBaseInterface
{
public:
// the number of apps known about by the app
virtual int GetAppCount() = 0;
// details about this particular app
// iApp is from [ 0 .. GetAppCount() )
virtual const char *GetAppName( int iApp ) = 0;
virtual const char *GetAppServerBrowserName( int iApp ) = 0;
virtual const char *GetAppGameDir( int iApp ) = 0;
virtual bool GetAppHasServers( int iApp ) = 0;
virtual uint32 GetAppID( int iApp ) = 0;
virtual bool GetAppIsSubscribed( int iApp ) = 0;
virtual const char *GetAppIcon( int iApp ) = 0;
// converting appID->iApp (needed since this whole interface is backwards)
virtual int GetIAppForAppID( uint32 unAppID ) = 0;
};
#define APPINFORMATION_INTERFACE_VERSION "AppInformation002"
#endif // IAPPINFORMATION_H