Category talk:Interfaces: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(Created page with '== Engine interfaces == ===eiface.h=== {| class="standard-table" ! Class ! Description ! Version string |- | IVEngineServer | Interface the engine exposes to the game DLL | INT…')
 
Line 8: Line 8:
! Version string
! Version string
|-
|-
| IVEngineServer
| [[IVEngineServer]]
| Interface the engine exposes to the game DLL
| Interface the engine exposes to the game DLL
| INTERFACEVERSION_VENGINESERVER
| INTERFACEVERSION_VENGINESERVER
|-
|-
| IServerGameDLL
| [[IServerGameDLL]]
| These are the interfaces that the game .dll exposes to the engine
| These are the interfaces that the game .dll exposes to the engine
| INTERFACEVERSION_SERVERGAMEDLL
| INTERFACEVERSION_SERVERGAMEDLL
|-
|-
| IServerGameEnts
| [[IServerGameEnts]]
| Interface to get at server entities
| Interface to get at server entities
| INTERFACEVERSION_SERVERGAMEENTS
| INTERFACEVERSION_SERVERGAMEENTS
|-
|-
| IServerGameClients
| [[IServerGameClients]]
| Player / Client related functions
| Player / Client related functions
| INTERFACEVERSION_SERVERGAMECLIENTS
| INTERFACEVERSION_SERVERGAMECLIENTS
|-
|-
| IUploadGameStats
| [[IUploadGameStats]]
| {{confirm|Steamworks stats}}
| {{confirm|Steamworks stats}}
| INTERFACEVERSION_UPLOADGAMESTATS
| INTERFACEVERSION_UPLOADGAMESTATS
|-
|-
| IPluginHelpersCheck
| [[IPluginHelpersCheck]]
| Allows the game dll to control which plugin functions can be run
| Allows the game dll to control which plugin functions can be run
| INTERFACEVERSION_PLUGINHELPERSCHECK
| INTERFACEVERSION_PLUGINHELPERSCHECK
|-
|-
| IPluginGameHelpers
| [[IPluginGameHelpers]]
| {{todo|Contains only SendMenu()}}
| {{todo|Contains only SendMenu()}}
| INTERFACEVERSION_PLUGINGAMEHELPERS
| INTERFACEVERSION_PLUGINGAMEHELPERS
|-
|-
| IServerDLLSharedAppSystems
| [[IServerDLLSharedAppSystems]]
| Interface exposed from the clientfor specifying shared .dll IAppSystems
| Interface exposed from the clientfor specifying shared .dll IAppSystems
| SERVER_DLL_SHARED_APPSYSTEMS
| SERVER_DLL_SHARED_APPSYSTEMS
|-
|-
| IServerGameTags
| [[IServerGameTags]]
| Querying the game dll for Server cvar tags
| Querying the game dll for Server cvar tags
| INTERFACEVERSION_SERVERGAMETAGS
| INTERFACEVERSION_SERVERGAMETAGS
Line 52: Line 52:
! Version string
! Version string
|-
|-
| IUniformRandomStream
| [[IUniformRandomStream]]
| A generator of uniformly distributed random numbers
| A generator of uniformly distributed random numbers
| VENGINE_SERVER_RANDOM_INTERFACE_VERSION (eiface.h)
| VENGINE_SERVER_RANDOM_INTERFACE_VERSION (eiface.h)
Line 64: Line 64:
! Version string
! Version string
|-
|-
| IServerPluginCallbacks
| [[IServerPluginCallbacks]]
| Callbacks the engine exposes to the 3rd party plugins (ala MetaMod)
| Callbacks the engine exposes to the 3rd party plugins (ala MetaMod)
| INTERFACEVERSION_ISERVERPLUGINCALLBACKS
| INTERFACEVERSION_ISERVERPLUGINCALLBACKS
|-
|-
| IServerPluginHelpers
| [[IServerPluginHelpers]]
| Functions that only 3rd party plugins need
| Functions that only 3rd party plugins need
| INTERFACEVERSION_ISERVERPLUGINHELPERS
| INTERFACEVERSION_ISERVERPLUGINHELPERS
Line 80: Line 80:
! Version string
! Version string
|-
|-
| IPlayerInfo
| [[IPlayerInfo]]
| Accessors to player data
| Accessors to player data
| None; use IPlayerInfoManager
| None; use IPlayerInfoManager
|-
|-
| IPlayerInfoManager
| [[IPlayerInfoManager]]
| Gets IPlayerInfo objects
| Gets IPlayerInfo objects
| INTERFACEVERSION_PLAYERINFOMANAGER
| INTERFACEVERSION_PLAYERINFOMANAGER
|-
|-
| IBotController
| [[IBotController]]
| Runs bot [[usercmd]]s, teleports them, etc.
| Runs bot [[usercmd]]s, teleports them, etc.
| INTERFACEVERSION_PLAYERBOTMANAGER
| INTERFACEVERSION_PLAYERBOTMANAGER
Line 100: Line 100:
! Version string
! Version string
|-
|-
| IGameEventManager2
| [[IGameEventManager2]]
| Keeps track and fires of all global game events
| Keeps track and fires of all global game events
| INTERFACEVERSION_GAMEEVENTSMANAGER2
| INTERFACEVERSION_GAMEEVENTSMANAGER2
|-
|-
| IGameEventListener2
| [[IGameEventListener2]]
| Receives event callbacks
| Receives event callbacks
| None; inherit from this
| None; inherit from this
|-
|-
| IGameEvent
| [[IGameEvent]]
| An event
| An event
| None; receive with IGameEventListener2
| None; receive with IGameEventListener2
|}
=== iclient.h ===
{| class="standard-table"
! Class
! Description
! Version string
|-
| [[IClient]]
| Handles clients from a server
| Unknown
|}
=== icliententity.h ===
{| class="standard-table"
! 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
|}
=== 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
|}
=== engine/ICollideable.h ===
{| class="standard-table"
! Class
! Description
! Version string
|-
| [[ICollideable]]
| [[VPhysics]] object
| None
|}
=== iservernetworkable.h ===
{| class="standard-table"
! Class
! Description
! Version string
|-
| [[IServerNetworkable]]
| Interface the engine uses for all networkable data
| None
|}
|}

Revision as of 04:39, 14 September 2010

Engine interfaces

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

vstlib/random.h

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

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

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

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

engine/ICollideable.h

Class Description Version string
ICollideable VPhysics object None

iservernetworkable.h

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