From f56bb35301836e56582a575a75864392a0177875 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B8rgen=20P=2E=20Tjern=C3=B8?= Date: Mon, 2 Dec 2013 19:31:46 -0800 Subject: Fix line endings. WHAMMY. --- sp/src/game/client/toolframework_client.cpp | 712 ++++++++++++++-------------- 1 file changed, 356 insertions(+), 356 deletions(-) (limited to 'sp/src/game/client/toolframework_client.cpp') diff --git a/sp/src/game/client/toolframework_client.cpp b/sp/src/game/client/toolframework_client.cpp index d07c38b2..5e7dfa22 100644 --- a/sp/src/game/client/toolframework_client.cpp +++ b/sp/src/game/client/toolframework_client.cpp @@ -1,356 +1,356 @@ -//========= Copyright Valve Corporation, All rights reserved. ============// -// -// Purpose: -// -//===========================================================================// - -#include "cbase.h" -#include "toolframework_client.h" -#include "igamesystem.h" -#include "tier1/KeyValues.h" -#include "toolframework/iclientenginetools.h" -#include "client_factorylist.h" -#include "iviewrender.h" -#include "materialsystem/imaterialvar.h" - -extern IViewRender *view; - -class CToolFrameworkClient : public CBaseGameSystemPerFrame -{ -public: - // Methods of IGameSystem - virtual bool Init(); - virtual void LevelInitPreEntity(); - virtual void LevelInitPostEntity(); - virtual void LevelShutdownPreEntity(); - virtual void LevelShutdownPostEntity(); - virtual void PreRender(); - virtual void PostRender(); - -public: - // Other public methods - void PostToolMessage( HTOOLHANDLE hEntity, KeyValues *msg ); - void AdjustEngineViewport( int& x, int& y, int& width, int& height ); - bool SetupEngineView( Vector &origin, QAngle &angles, float &fov ); - bool SetupAudioState( AudioState_t &audioState ); - bool IsThirdPersonCamera(); - - IClientEngineTools *m_pTools; -}; - - -//----------------------------------------------------------------------------- -// Singleton -//----------------------------------------------------------------------------- -static CToolFrameworkClient g_ToolFrameworkClient; - -#ifndef NO_TOOLFRAMEWORK - -bool ToolsEnabled() -{ - return g_ToolFrameworkClient.m_pTools && g_ToolFrameworkClient.m_pTools->InToolMode(); -} - -#endif - -IGameSystem *ToolFrameworkClientSystem() -{ - return &g_ToolFrameworkClient; -} - - -bool CToolFrameworkClient::Init() -{ - factorylist_t list; - FactoryList_Retrieve( list ); - - m_pTools = ( IClientEngineTools * )list.appSystemFactory( VCLIENTENGINETOOLS_INTERFACE_VERSION, NULL ); - return ( m_pTools != NULL ); -} - -void CToolFrameworkClient::LevelInitPreEntity() -{ - if ( m_pTools ) - { - m_pTools->LevelInitPreEntityAllTools(); - } -} - -void CToolFrameworkClient::LevelInitPostEntity() -{ - if ( m_pTools ) - { - m_pTools->LevelInitPostEntityAllTools(); - } -} - -void CToolFrameworkClient::LevelShutdownPreEntity() -{ - if ( m_pTools ) - { - m_pTools->LevelShutdownPreEntityAllTools(); - } -} - -void CToolFrameworkClient::LevelShutdownPostEntity() -{ - if ( m_pTools ) - { - m_pTools->LevelShutdownPostEntityAllTools(); - } -} - -void CToolFrameworkClient::PreRender() -{ - if ( m_pTools ) - { - m_pTools->PreRenderAllTools(); - } -} - -void CToolFrameworkClient::PostRender() -{ - if ( m_pTools ) - { - m_pTools->PostRenderAllTools(); - } -} - - -//----------------------------------------------------------------------------- -// Should we render with a 3rd person camera? -//----------------------------------------------------------------------------- -bool CToolFrameworkClient::IsThirdPersonCamera() -{ - if ( !m_pTools ) - return false; - return m_pTools->IsThirdPersonCamera( ); -} - -bool ToolFramework_IsThirdPersonCamera( ) -{ - return g_ToolFrameworkClient.IsThirdPersonCamera( ); -} - - -//----------------------------------------------------------------------------- -// Posts a message to all tools -//----------------------------------------------------------------------------- -void CToolFrameworkClient::PostToolMessage( HTOOLHANDLE hEntity, KeyValues *msg ) -{ - if ( m_pTools ) - { - m_pTools->PostToolMessage( hEntity, msg ); - } -} - -void ToolFramework_PostToolMessage( HTOOLHANDLE hEntity, KeyValues *msg ) -{ - g_ToolFrameworkClient.PostToolMessage( hEntity, msg ); -} - - -//----------------------------------------------------------------------------- -// View manipulation -//----------------------------------------------------------------------------- -void CToolFrameworkClient::AdjustEngineViewport( int& x, int& y, int& width, int& height ) -{ - if ( m_pTools ) - { - m_pTools->AdjustEngineViewport( x, y, width, height ); - } -} - -void ToolFramework_AdjustEngineViewport( int& x, int& y, int& width, int& height ) -{ - g_ToolFrameworkClient.AdjustEngineViewport( x, y, width, height ); -} - - -//----------------------------------------------------------------------------- -// View manipulation -//----------------------------------------------------------------------------- -bool CToolFrameworkClient::SetupEngineView( Vector &origin, QAngle &angles, float &fov ) -{ - if ( !m_pTools ) - return false; - - return m_pTools->SetupEngineView( origin, angles, fov ); -} - -bool ToolFramework_SetupEngineView( Vector &origin, QAngle &angles, float &fov ) -{ - return g_ToolFrameworkClient.SetupEngineView( origin, angles, fov ); -} - -//----------------------------------------------------------------------------- -// microphone manipulation -//----------------------------------------------------------------------------- -bool CToolFrameworkClient::SetupAudioState( AudioState_t &audioState ) -{ - if ( !m_pTools ) - return false; - - return m_pTools->SetupAudioState( audioState ); -} - -bool ToolFramework_SetupAudioState( AudioState_t &audioState ) -{ - return g_ToolFrameworkClient.SetupAudioState( audioState ); -} - - -//----------------------------------------------------------------------------- -// Helper class to indicate ownership of effects -//----------------------------------------------------------------------------- -CRecordEffectOwner::CRecordEffectOwner( C_BaseEntity *pEntity, bool bIsViewModel ) -{ - m_bToolsEnabled = ToolsEnabled() && clienttools->IsInRecordingMode(); - if ( m_bToolsEnabled ) - { - KeyValues *msg = new KeyValues( "EffectsOwner" ); - msg->SetInt( "viewModel", bIsViewModel ); - ToolFramework_PostToolMessage( pEntity ? pEntity->GetToolHandle() : HTOOLHANDLE_INVALID, msg ); - msg->deleteThis(); - } -} - -CRecordEffectOwner::~CRecordEffectOwner() -{ - if ( m_bToolsEnabled ) - { - KeyValues *msg = new KeyValues( "EffectsOwner" ); - ToolFramework_PostToolMessage( HTOOLHANDLE_INVALID, msg ); - msg->deleteThis(); - } -} - - -//----------------------------------------------------------------------------- -// material recording - primarily for proxy materials -//----------------------------------------------------------------------------- - -void WriteFloat( char *&buf, float f) -{ - *( float* )buf = f; - buf += sizeof( float ); -} - -void WriteInt( char *&buf, int i ) -{ - *( int* )buf = i; - buf += sizeof( int ); -} - -void WritePtr( char *&buf, void *p ) -{ - *( void** )buf = p; - buf += sizeof( void* ); -} - -void ToolFramework_RecordMaterialParams( IMaterial *pMaterial ) -{ - Assert( pMaterial ); - if ( !pMaterial ) - return; - - if ( !clienttools->IsInRecordingMode() ) - return; - - C_BaseEntity *pEnt = view->GetCurrentlyDrawingEntity(); - if ( !pEnt || !pEnt->IsToolRecording() ) - return; - - KeyValues *msg = new KeyValues( "material_proxy_state" ); - msg->SetString( "mtlName", pMaterial->GetName() ); - msg->SetString( "groupName", pMaterial->GetTextureGroupName() ); - - int nParams = pMaterial->ShaderParamCount(); - IMaterialVar **pParams = pMaterial->GetShaderParams(); - - char str[ 256 ]; - - for ( int i = 0; i < nParams; ++i ) - { - IMaterialVar *pVar = pParams[ i ]; - const char *pVarName = pVar->GetName(); - MaterialVarType_t vartype = pVar->GetType(); - switch ( vartype ) - { - case MATERIAL_VAR_TYPE_FLOAT: - msg->SetFloat( pVarName, pVar->GetFloatValue() ); - break; - - case MATERIAL_VAR_TYPE_INT: - msg->SetInt( pVarName, pVar->GetIntValue() ); - break; - - case MATERIAL_VAR_TYPE_STRING: - msg->SetString( pVarName, pVar->GetStringValue() ); - break; - - case MATERIAL_VAR_TYPE_FOURCC: - Assert( 0 ); // JDTODO - break; - - case MATERIAL_VAR_TYPE_VECTOR: - { - const float *pVal = pVar->GetVecValue(); - int dim = pVar->VectorSize(); - switch ( dim ) - { - case 2: - V_snprintf( str, sizeof( str ), "vector2d: %f %f", pVal[ 0 ], pVal[ 1 ] ); - break; - case 3: - V_snprintf( str, sizeof( str ), "vector3d: %f %f %f", pVal[ 0 ], pVal[ 1 ], pVal[ 2 ] ); - break; - case 4: - V_snprintf( str, sizeof( str ), "vector4d: %f %f %f %f", pVal[ 0 ], pVal[ 1 ], pVal[ 2 ], pVal[ 3 ] ); - break; - default: - Assert( 0 ); - *str = 0; - } - msg->SetString( pVarName, str ); - } - break; - - case MATERIAL_VAR_TYPE_MATRIX: - { - const VMatrix &matrix = pVar->GetMatrixValue(); - const float *pVal = matrix.Base(); - V_snprintf( str, sizeof( str ), - "matrix: %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f", - pVal[ 0 ], pVal[ 1 ], pVal[ 2 ], pVal[ 3 ], - pVal[ 4 ], pVal[ 5 ], pVal[ 6 ], pVal[ 7 ], - pVal[ 8 ], pVal[ 9 ], pVal[ 10 ], pVal[ 11 ], - pVal[ 12 ], pVal[ 13 ], pVal[ 14 ], pVal[ 15 ] ); - msg->SetString( pVarName, str ); - } - break; - - case MATERIAL_VAR_TYPE_TEXTURE: - // V_snprintf( str, sizeof( str ), "texture: %x", pVar->GetTextureValue() ); - // msg->SetString( pVarName, str ); - break; - - case MATERIAL_VAR_TYPE_MATERIAL: - // V_snprintf( str, sizeof( str ), "material: %x", pVar->GetMaterialValue() ); - // msg->SetString( pVarName, str ); - break; - - case MATERIAL_VAR_TYPE_UNDEFINED: - // Assert( 0 ); // these appear to be (mostly? all?) textures, although I don't know why they're not caught by the texture case above... - break; // JDTODO - - default: - Assert( 0 ); - } - } - - Assert( pEnt->GetToolHandle() ); - ToolFramework_PostToolMessage( pEnt->GetToolHandle(), msg ); - - msg->deleteThis(); -} +//========= Copyright Valve Corporation, All rights reserved. ============// +// +// Purpose: +// +//===========================================================================// + +#include "cbase.h" +#include "toolframework_client.h" +#include "igamesystem.h" +#include "tier1/KeyValues.h" +#include "toolframework/iclientenginetools.h" +#include "client_factorylist.h" +#include "iviewrender.h" +#include "materialsystem/imaterialvar.h" + +extern IViewRender *view; + +class CToolFrameworkClient : public CBaseGameSystemPerFrame +{ +public: + // Methods of IGameSystem + virtual bool Init(); + virtual void LevelInitPreEntity(); + virtual void LevelInitPostEntity(); + virtual void LevelShutdownPreEntity(); + virtual void LevelShutdownPostEntity(); + virtual void PreRender(); + virtual void PostRender(); + +public: + // Other public methods + void PostToolMessage( HTOOLHANDLE hEntity, KeyValues *msg ); + void AdjustEngineViewport( int& x, int& y, int& width, int& height ); + bool SetupEngineView( Vector &origin, QAngle &angles, float &fov ); + bool SetupAudioState( AudioState_t &audioState ); + bool IsThirdPersonCamera(); + + IClientEngineTools *m_pTools; +}; + + +//----------------------------------------------------------------------------- +// Singleton +//----------------------------------------------------------------------------- +static CToolFrameworkClient g_ToolFrameworkClient; + +#ifndef NO_TOOLFRAMEWORK + +bool ToolsEnabled() +{ + return g_ToolFrameworkClient.m_pTools && g_ToolFrameworkClient.m_pTools->InToolMode(); +} + +#endif + +IGameSystem *ToolFrameworkClientSystem() +{ + return &g_ToolFrameworkClient; +} + + +bool CToolFrameworkClient::Init() +{ + factorylist_t list; + FactoryList_Retrieve( list ); + + m_pTools = ( IClientEngineTools * )list.appSystemFactory( VCLIENTENGINETOOLS_INTERFACE_VERSION, NULL ); + return ( m_pTools != NULL ); +} + +void CToolFrameworkClient::LevelInitPreEntity() +{ + if ( m_pTools ) + { + m_pTools->LevelInitPreEntityAllTools(); + } +} + +void CToolFrameworkClient::LevelInitPostEntity() +{ + if ( m_pTools ) + { + m_pTools->LevelInitPostEntityAllTools(); + } +} + +void CToolFrameworkClient::LevelShutdownPreEntity() +{ + if ( m_pTools ) + { + m_pTools->LevelShutdownPreEntityAllTools(); + } +} + +void CToolFrameworkClient::LevelShutdownPostEntity() +{ + if ( m_pTools ) + { + m_pTools->LevelShutdownPostEntityAllTools(); + } +} + +void CToolFrameworkClient::PreRender() +{ + if ( m_pTools ) + { + m_pTools->PreRenderAllTools(); + } +} + +void CToolFrameworkClient::PostRender() +{ + if ( m_pTools ) + { + m_pTools->PostRenderAllTools(); + } +} + + +//----------------------------------------------------------------------------- +// Should we render with a 3rd person camera? +//----------------------------------------------------------------------------- +bool CToolFrameworkClient::IsThirdPersonCamera() +{ + if ( !m_pTools ) + return false; + return m_pTools->IsThirdPersonCamera( ); +} + +bool ToolFramework_IsThirdPersonCamera( ) +{ + return g_ToolFrameworkClient.IsThirdPersonCamera( ); +} + + +//----------------------------------------------------------------------------- +// Posts a message to all tools +//----------------------------------------------------------------------------- +void CToolFrameworkClient::PostToolMessage( HTOOLHANDLE hEntity, KeyValues *msg ) +{ + if ( m_pTools ) + { + m_pTools->PostToolMessage( hEntity, msg ); + } +} + +void ToolFramework_PostToolMessage( HTOOLHANDLE hEntity, KeyValues *msg ) +{ + g_ToolFrameworkClient.PostToolMessage( hEntity, msg ); +} + + +//----------------------------------------------------------------------------- +// View manipulation +//----------------------------------------------------------------------------- +void CToolFrameworkClient::AdjustEngineViewport( int& x, int& y, int& width, int& height ) +{ + if ( m_pTools ) + { + m_pTools->AdjustEngineViewport( x, y, width, height ); + } +} + +void ToolFramework_AdjustEngineViewport( int& x, int& y, int& width, int& height ) +{ + g_ToolFrameworkClient.AdjustEngineViewport( x, y, width, height ); +} + + +//----------------------------------------------------------------------------- +// View manipulation +//----------------------------------------------------------------------------- +bool CToolFrameworkClient::SetupEngineView( Vector &origin, QAngle &angles, float &fov ) +{ + if ( !m_pTools ) + return false; + + return m_pTools->SetupEngineView( origin, angles, fov ); +} + +bool ToolFramework_SetupEngineView( Vector &origin, QAngle &angles, float &fov ) +{ + return g_ToolFrameworkClient.SetupEngineView( origin, angles, fov ); +} + +//----------------------------------------------------------------------------- +// microphone manipulation +//----------------------------------------------------------------------------- +bool CToolFrameworkClient::SetupAudioState( AudioState_t &audioState ) +{ + if ( !m_pTools ) + return false; + + return m_pTools->SetupAudioState( audioState ); +} + +bool ToolFramework_SetupAudioState( AudioState_t &audioState ) +{ + return g_ToolFrameworkClient.SetupAudioState( audioState ); +} + + +//----------------------------------------------------------------------------- +// Helper class to indicate ownership of effects +//----------------------------------------------------------------------------- +CRecordEffectOwner::CRecordEffectOwner( C_BaseEntity *pEntity, bool bIsViewModel ) +{ + m_bToolsEnabled = ToolsEnabled() && clienttools->IsInRecordingMode(); + if ( m_bToolsEnabled ) + { + KeyValues *msg = new KeyValues( "EffectsOwner" ); + msg->SetInt( "viewModel", bIsViewModel ); + ToolFramework_PostToolMessage( pEntity ? pEntity->GetToolHandle() : HTOOLHANDLE_INVALID, msg ); + msg->deleteThis(); + } +} + +CRecordEffectOwner::~CRecordEffectOwner() +{ + if ( m_bToolsEnabled ) + { + KeyValues *msg = new KeyValues( "EffectsOwner" ); + ToolFramework_PostToolMessage( HTOOLHANDLE_INVALID, msg ); + msg->deleteThis(); + } +} + + +//----------------------------------------------------------------------------- +// material recording - primarily for proxy materials +//----------------------------------------------------------------------------- + +void WriteFloat( char *&buf, float f) +{ + *( float* )buf = f; + buf += sizeof( float ); +} + +void WriteInt( char *&buf, int i ) +{ + *( int* )buf = i; + buf += sizeof( int ); +} + +void WritePtr( char *&buf, void *p ) +{ + *( void** )buf = p; + buf += sizeof( void* ); +} + +void ToolFramework_RecordMaterialParams( IMaterial *pMaterial ) +{ + Assert( pMaterial ); + if ( !pMaterial ) + return; + + if ( !clienttools->IsInRecordingMode() ) + return; + + C_BaseEntity *pEnt = view->GetCurrentlyDrawingEntity(); + if ( !pEnt || !pEnt->IsToolRecording() ) + return; + + KeyValues *msg = new KeyValues( "material_proxy_state" ); + msg->SetString( "mtlName", pMaterial->GetName() ); + msg->SetString( "groupName", pMaterial->GetTextureGroupName() ); + + int nParams = pMaterial->ShaderParamCount(); + IMaterialVar **pParams = pMaterial->GetShaderParams(); + + char str[ 256 ]; + + for ( int i = 0; i < nParams; ++i ) + { + IMaterialVar *pVar = pParams[ i ]; + const char *pVarName = pVar->GetName(); + MaterialVarType_t vartype = pVar->GetType(); + switch ( vartype ) + { + case MATERIAL_VAR_TYPE_FLOAT: + msg->SetFloat( pVarName, pVar->GetFloatValue() ); + break; + + case MATERIAL_VAR_TYPE_INT: + msg->SetInt( pVarName, pVar->GetIntValue() ); + break; + + case MATERIAL_VAR_TYPE_STRING: + msg->SetString( pVarName, pVar->GetStringValue() ); + break; + + case MATERIAL_VAR_TYPE_FOURCC: + Assert( 0 ); // JDTODO + break; + + case MATERIAL_VAR_TYPE_VECTOR: + { + const float *pVal = pVar->GetVecValue(); + int dim = pVar->VectorSize(); + switch ( dim ) + { + case 2: + V_snprintf( str, sizeof( str ), "vector2d: %f %f", pVal[ 0 ], pVal[ 1 ] ); + break; + case 3: + V_snprintf( str, sizeof( str ), "vector3d: %f %f %f", pVal[ 0 ], pVal[ 1 ], pVal[ 2 ] ); + break; + case 4: + V_snprintf( str, sizeof( str ), "vector4d: %f %f %f %f", pVal[ 0 ], pVal[ 1 ], pVal[ 2 ], pVal[ 3 ] ); + break; + default: + Assert( 0 ); + *str = 0; + } + msg->SetString( pVarName, str ); + } + break; + + case MATERIAL_VAR_TYPE_MATRIX: + { + const VMatrix &matrix = pVar->GetMatrixValue(); + const float *pVal = matrix.Base(); + V_snprintf( str, sizeof( str ), + "matrix: %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f", + pVal[ 0 ], pVal[ 1 ], pVal[ 2 ], pVal[ 3 ], + pVal[ 4 ], pVal[ 5 ], pVal[ 6 ], pVal[ 7 ], + pVal[ 8 ], pVal[ 9 ], pVal[ 10 ], pVal[ 11 ], + pVal[ 12 ], pVal[ 13 ], pVal[ 14 ], pVal[ 15 ] ); + msg->SetString( pVarName, str ); + } + break; + + case MATERIAL_VAR_TYPE_TEXTURE: + // V_snprintf( str, sizeof( str ), "texture: %x", pVar->GetTextureValue() ); + // msg->SetString( pVarName, str ); + break; + + case MATERIAL_VAR_TYPE_MATERIAL: + // V_snprintf( str, sizeof( str ), "material: %x", pVar->GetMaterialValue() ); + // msg->SetString( pVarName, str ); + break; + + case MATERIAL_VAR_TYPE_UNDEFINED: + // Assert( 0 ); // these appear to be (mostly? all?) textures, although I don't know why they're not caught by the texture case above... + break; // JDTODO + + default: + Assert( 0 ); + } + } + + Assert( pEnt->GetToolHandle() ); + ToolFramework_PostToolMessage( pEnt->GetToolHandle(), msg ); + + msg->deleteThis(); +} -- cgit v1.2.3