Category talk:Interfaces: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
== Engine interfaces ==
== Engine interfaces ==


===eiface.h===
=== Server ===
 
==== eiface.h ====


{| class="standard-table"
{| class="standard-table"
Line 45: Line 47:
|}
|}


=== vstlib/random.h ===
==== engine/iserverplugin.h ====
 
{| class="standard-table"
! Class
! Description
! Version string
|-
| [[IUniformRandomStream]]
| A generator of uniformly distributed random numbers
| VENGINE_SERVER_RANDOM_INTERFACE_VERSION (eiface.h)
|}
 
=== engine/iserverplugin.h ===


{| class="standard-table"
{| class="standard-table"
Line 73: Line 63:
|}
|}


=== game/server/iplayerinfo.h ===
==== game/server/iplayerinfo.h ====


{| class="standard-table"
{| class="standard-table"
Line 93: Line 83:
|}
|}


=== igameevents.h ===
==== igameevents.h ====


{| class="standard-table"
{| class="standard-table"
Line 113: Line 103:
|}
|}


=== iclient.h ===
==== iclient.h ====


{| class="standard-table"
{| class="standard-table"
Line 125: Line 115:
|}
|}


=== icliententity.h ===
==== iserver.h ====
 
{| class="standard-table"
! Class
! Description
! Version string
|-
| [[IServer]]
| Functions related to clients, ticks and networking
| {{todo|Unknown}}
|}
 
==== iserverentity.h ====
 
{| class="standard-table"
! Class
! Description
! Version string
|-
| [[IServerEntity]]
| How the engine talks to entities in the game DLL
| None
|-
| [[IServerUnknown]]
| Ultra-generic object interface
| None
|}
 
==== iservernetworkable.h ====
 
{| class="standard-table"
! Class
! Description
! Version string
|-
| [[IServerNetworkable]]
| Interface the engine uses for all networkable data
| None
|}
 
=== Client ===
 
==== icliententity.h ====


{| class="standard-table"
{| class="standard-table"
Line 153: Line 185:
|}
|}


=== iserver.h ===
==== iprediction.h ====


{| class="standard-table"
{| class="standard-table"
Line 160: Line 192:
! Version string
! Version string
|-
|-
| [[IServer]]
| [[IPrediction]]
| Functions related to clients, ticks and networking
| Engine interface into client side prediction system
| {{todo|Unknown}}
| VCLIENT_PREDICTION_INTERFACE_VERSION
|}
|}


=== iserverentity.h ===
==== ienginevgui.h ====


{| class="standard-table"
{| class="standard-table"
Line 172: Line 204:
! Version string
! Version string
|-
|-
| [[IServerEntity]]
| [[IEngineVGui]]
| How the engine talks to entities in the game DLL
| [[VGUI]] - GetPanel() mostly.
| None
| VENGINE_VGUI_VERSION
|}
 
==== IGameUIFuncs.h ====
 
{| class="standard-table"
! Class
! Description
! Version string
|-
|-
| [[IServerUnknown]]
| [[IGameUIFuncs]]
| Ultra-generic object interface
| {{todo}}
| None
| VENGINE_GAMEUIFUNCS_VERSION
|}
|}


=== engine/ICollideable.h ===
=== Shared ===
 
==== vstlib/random.h ====


{| class="standard-table"
{| class="standard-table"
Line 188: Line 230:
! Version string
! Version string
|-
|-
| [[ICollideable]]
| [[IUniformRandomStream]]
| [[VPhysics]] object
| A generator of uniformly distributed random numbers
| None
| VENGINE_SERVER_RANDOM_INTERFACE_VERSION (eiface.h)
|}
|}


=== iservernetworkable.h ===
==== engine/ICollideable.h ====


{| class="standard-table"
{| class="standard-table"
Line 200: Line 242:
! Version string
! Version string
|-
|-
| [[IServerNetworkable]]
| [[ICollideable]]
| Interface the engine uses for all networkable data
| [[VPhysics]] object
| None
| None
|}
|}

Latest revision as of 06:43, 14 September 2010

Engine interfaces

Server

eiface.h

Class Description Version string
IVEngineServer Interface the engine exposes to the game DLL INTERFACEVERSION_VENGINESERVER
IServerGameDLL These are the interfaces that the game .dll exposes to the engine INTERFACEVERSION_SERVERGAMEDLL
IServerGameEnts Interface to get at server entities INTERFACEVERSION_SERVERGAMEENTS
IServerGameClients Player / Client related functions INTERFACEVERSION_SERVERGAMECLIENTS
IUploadGameStats
Confirm:Steamworks stats
INTERFACEVERSION_UPLOADGAMESTATS
IPluginHelpersCheck Allows the game dll to control which plugin functions can be run INTERFACEVERSION_PLUGINHELPERSCHECK
IPluginGameHelpers
Todo: Contains only SendMenu()
INTERFACEVERSION_PLUGINGAMEHELPERS
IServerDLLSharedAppSystems Interface exposed from the clientfor specifying shared .dll IAppSystems SERVER_DLL_SHARED_APPSYSTEMS
IServerGameTags Querying the game dll for Server cvar tags INTERFACEVERSION_SERVERGAMETAGS

engine/iserverplugin.h

Class Description Version string
IServerPluginCallbacks Callbacks the engine exposes to the 3rd party plugins (ala MetaMod) INTERFACEVERSION_ISERVERPLUGINCALLBACKS
IServerPluginHelpers Functions that only 3rd party plugins need INTERFACEVERSION_ISERVERPLUGINHELPERS

game/server/iplayerinfo.h

Class Description Version string
IPlayerInfo Accessors to player data None; use IPlayerInfoManager
IPlayerInfoManager Gets IPlayerInfo objects INTERFACEVERSION_PLAYERINFOMANAGER
IBotController Runs bot usercmds, teleports them, etc. INTERFACEVERSION_PLAYERBOTMANAGER

igameevents.h

Class Description Version string
IGameEventManager2 Keeps track and fires of all global game events INTERFACEVERSION_GAMEEVENTSMANAGER2
IGameEventListener2 Receives event callbacks None; inherit from this
IGameEvent An event None; receive with IGameEventListener2

iclient.h

Class Description Version string
IClient Handles clients from a server Unknown

iserver.h

Class Description Version string
IServer Functions related to clients, ticks and networking
Todo: Unknown

iserverentity.h

Class Description Version string
IServerEntity How the engine talks to entities in the game DLL None
IServerUnknown Ultra-generic object interface None

iservernetworkable.h

Class Description Version string
IServerNetworkable Interface the engine uses for all networkable data None

Client

icliententity.h

Class Description Version string
IClientEntity All client entities must implement this interface. None
IClientUnknown Ultra-generic object interface None
IClientRenderable Rendering stuff None
IClientNetworkable Networking stuff None
IClientThinkable A Think()ing object None

iprediction.h

Class Description Version string
IPrediction Engine interface into client side prediction system VCLIENT_PREDICTION_INTERFACE_VERSION

ienginevgui.h

Class Description Version string
IEngineVGui VGUI - GetPanel() mostly. VENGINE_VGUI_VERSION

IGameUIFuncs.h

Class Description Version string
IGameUIFuncs [Todo] VENGINE_GAMEUIFUNCS_VERSION

Shared

vstlib/random.h

Class Description Version string
IUniformRandomStream A generator of uniformly distributed random numbers VENGINE_SERVER_RANDOM_INTERFACE_VERSION (eiface.h)

engine/ICollideable.h

Class Description Version string
ICollideable VPhysics object None