mirror of
https://github.com/alliedmodders/hl2sdk.git
synced 2025-09-20 04:26:03 +08:00
Added most recent version of unmodified HL2 SDK for Episode 1 engine
This commit is contained in:
56
materialsystem/shaderlib/shaderlib_cvar.cpp
Normal file
56
materialsystem/shaderlib/shaderlib_cvar.cpp
Normal file
@ -0,0 +1,56 @@
|
||||
//========= Copyright <20> 1996-2005, Valve Corporation, All rights reserved. ============//
|
||||
//
|
||||
// Purpose:
|
||||
//
|
||||
//=============================================================================//
|
||||
|
||||
#include "icvar.h"
|
||||
|
||||
// memdbgon must be the last include file in a .cpp file!!!
|
||||
#include "tier0/memdbgon.h"
|
||||
|
||||
// ------------------------------------------------------------------------------------------- //
|
||||
// ConVar stuff.
|
||||
// ------------------------------------------------------------------------------------------- //
|
||||
static ICvar *s_pCVar;
|
||||
|
||||
class CShaderLibConVarAccessor : public IConCommandBaseAccessor
|
||||
{
|
||||
public:
|
||||
virtual bool RegisterConCommandBase( ConCommandBase *pCommand )
|
||||
{
|
||||
// Mark for easy removal
|
||||
pCommand->AddFlags( FCVAR_MATERIAL_SYSTEM );
|
||||
|
||||
// Unlink from shaderlib only list
|
||||
pCommand->SetNext( 0 );
|
||||
|
||||
// Link to engine's list instead
|
||||
s_pCVar->RegisterConCommandBase( pCommand );
|
||||
|
||||
char const *pValue = s_pCVar->GetCommandLineValue( pCommand->GetName() );
|
||||
if( pValue && !pCommand->IsCommand() )
|
||||
{
|
||||
( ( ConVar * )pCommand )->SetValue( pValue );
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
CShaderLibConVarAccessor g_ConVarAccessor;
|
||||
|
||||
|
||||
void InitShaderLibCVars( CreateInterfaceFn cvarFactory )
|
||||
{
|
||||
s_pCVar = (ICvar*)cvarFactory( VENGINE_CVAR_INTERFACE_VERSION, NULL );
|
||||
if ( s_pCVar )
|
||||
{
|
||||
ConCommandBaseMgr::OneTimeInit( &g_ConVarAccessor );
|
||||
}
|
||||
}
|
||||
|
||||
ICvar *GetCVar()
|
||||
{
|
||||
return s_pCVar;
|
||||
}
|
Reference in New Issue
Block a user