diff options
Diffstat (limited to 'public/game/client/iclientrendertargets.h')
| -rw-r--r-- | public/game/client/iclientrendertargets.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/public/game/client/iclientrendertargets.h b/public/game/client/iclientrendertargets.h new file mode 100644 index 0000000..60a1447 --- /dev/null +++ b/public/game/client/iclientrendertargets.h @@ -0,0 +1,41 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +// Purpose: Exposes interfaces to the engine which allow the client to setup their own render targets +// during the proper period of material system's init. +// +// $NoKeywords: $ +//=============================================================================// + +#ifndef ICLIENTRENDERTARGETS_H +#define ICLIENTRENDERTARGETS_H +#ifdef _WIN32 + #pragma once +#endif + +#include "interface.h" // For base interface + +class IMaterialSystem; +class IMaterialSystemHardwareConfig; + +//--------------------------------------------------------------------------------------------------- +// Purpose: Exposes interfaces to the engine which allow the client to setup their own render targets +// during the proper period of material system's init. +//--------------------------------------------------------------------------------------------------- +abstract_class IClientRenderTargets +{ +public: + // Pass the material system interface to the client-- Their Material System singleton has not been created + // at the time they receive this call. + virtual void InitClientRenderTargets( IMaterialSystem* pMaterialSystem, IMaterialSystemHardwareConfig* pHardwareConfig ) = 0; + + // Call shutdown on every created refrence-- Clients keep track of this themselves + // and should add shutdown code to this function whenever they add a new render target. + virtual void ShutdownClientRenderTargets( void ) = 0; + +}; + +#define CLIENTRENDERTARGETS_INTERFACE_VERSION "ClientRenderTargets001" + +extern IClientRenderTargets * g_pClientRenderTargets; + +#endif // ICLIENTRENDERTARGETS_H |