mirror of
https://github.com/mapbase-source/source-sdk-2013.git
synced 2024-12-27 23:35:30 +03:00
Added WIP v142 toolset support based on Source SDK 2013: Community Edition repo
This commit is contained in:
parent
7ce328cbb9
commit
9b795b3c51
@ -80,7 +80,7 @@ public:
|
|||||||
QAngle m_angRotation;
|
QAngle m_angRotation;
|
||||||
Vector m_vOriginVelocity;
|
Vector m_vOriginVelocity;
|
||||||
int m_nLastFramecount : 31;
|
int m_nLastFramecount : 31;
|
||||||
int m_bAnglesComputed : 1;
|
bool m_bAnglesComputed : 1;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -4927,9 +4927,15 @@ C_BaseEntity *C_BaseEntity::Instance( int iEnt )
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
|
|
||||||
|
#if _MSC_VER < 1900
|
||||||
#pragma warning( push )
|
#pragma warning( push )
|
||||||
#include <typeinfo.h>
|
#include <typeinfo.h>
|
||||||
#pragma warning( pop )
|
#pragma warning( pop )
|
||||||
|
#else
|
||||||
|
#include <typeinfo>
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
@ -1263,7 +1263,7 @@ public:
|
|||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
void FunctionCheck( void *pFunction, const char *name );
|
void FunctionCheck( void *pFunction, const char *name );
|
||||||
|
|
||||||
ENTITYFUNCPTR TouchSet( ENTITYFUNCPTR func, char *name )
|
ENTITYFUNCPTR TouchSet( ENTITYFUNCPTR func, const char *name )
|
||||||
{
|
{
|
||||||
//COMPILE_TIME_ASSERT( sizeof(func) == 4 );
|
//COMPILE_TIME_ASSERT( sizeof(func) == 4 );
|
||||||
m_pfnTouch = func;
|
m_pfnTouch = func;
|
||||||
|
@ -528,15 +528,15 @@ void CLCD::ShowItems_R( CLCDPage *page, unsigned int dwCurTime, CUtlVector< CLCD
|
|||||||
{
|
{
|
||||||
CLCDItem *newItem = NULL;
|
CLCDItem *newItem = NULL;
|
||||||
|
|
||||||
CLCDItem *item = ag->m_Definition[ r ];
|
CLCDItem *itemLocl = ag->m_Definition[ r ];
|
||||||
switch ( item->m_Type )
|
switch ( itemLocl->m_Type )
|
||||||
{
|
{
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case LCDITEM_TEXT:
|
case LCDITEM_TEXT:
|
||||||
{
|
{
|
||||||
CLCDItemText *text = static_cast< CLCDItemText * >( item );
|
CLCDItemText *text = static_cast< CLCDItemText * >( itemLocl );
|
||||||
CUtlString s;
|
CUtlString s;
|
||||||
s = text->m_OriginalText;
|
s = text->m_OriginalText;
|
||||||
Replace( s, prefix, s1 );
|
Replace( s, prefix, s1 );
|
||||||
@ -551,7 +551,7 @@ void CLCD::ShowItems_R( CLCDPage *page, unsigned int dwCurTime, CUtlVector< CLCD
|
|||||||
|
|
||||||
// text->m_OriginalText = s;
|
// text->m_OriginalText = s;
|
||||||
|
|
||||||
CLCDItemText *copy = static_cast< CLCDItemText * >( page->Alloc( item->m_Type ) );
|
CLCDItemText *copy = static_cast< CLCDItemText * >( page->Alloc( itemLocl->m_Type ) );
|
||||||
*copy = *text;
|
*copy = *text;
|
||||||
copy->m_bActive = true;
|
copy->m_bActive = true;
|
||||||
copy->m_OriginalText = s;
|
copy->m_OriginalText = s;
|
||||||
@ -564,8 +564,8 @@ void CLCD::ShowItems_R( CLCDPage *page, unsigned int dwCurTime, CUtlVector< CLCD
|
|||||||
break;
|
break;
|
||||||
case LCDITEM_ICON:
|
case LCDITEM_ICON:
|
||||||
{
|
{
|
||||||
CLCDItemIcon *icon = static_cast< CLCDItemIcon * >( item );
|
CLCDItemIcon *icon = static_cast< CLCDItemIcon * >( itemLocl );
|
||||||
CLCDItemIcon *copy = static_cast< CLCDItemIcon * >( page->Alloc( item->m_Type ) );
|
CLCDItemIcon *copy = static_cast< CLCDItemIcon * >( page->Alloc( itemLocl->m_Type ) );
|
||||||
*copy = *icon;
|
*copy = *icon;
|
||||||
copy->m_bActive = true;
|
copy->m_bActive = true;
|
||||||
copy->Create( m_lcd );
|
copy->Create( m_lcd );
|
||||||
@ -1186,16 +1186,16 @@ void CLCD::DumpPlayer()
|
|||||||
C_Team *team = player->GetTeam();
|
C_Team *team = player->GetTeam();
|
||||||
if ( team )
|
if ( team )
|
||||||
{
|
{
|
||||||
CDescribeData helper( team );
|
CDescribeData helperLocl( team );
|
||||||
helper.DumpDescription( team->GetPredDescMap() );
|
helperLocl.DumpDescription( team->GetPredDescMap() );
|
||||||
}
|
}
|
||||||
|
|
||||||
Msg( "(playerresource)\n\n" );
|
Msg( "(playerresource)\n\n" );
|
||||||
|
|
||||||
if ( g_PR )
|
if ( g_PR )
|
||||||
{
|
{
|
||||||
CDescribeData helper( g_PR );
|
CDescribeData helperLocl( g_PR );
|
||||||
helper.DumpDescription( g_PR->GetPredDescMap() );
|
helperLocl.DumpDescription( g_PR->GetPredDescMap() );
|
||||||
}
|
}
|
||||||
|
|
||||||
Msg( "(localplayerweapon)\n\n" );
|
Msg( "(localplayerweapon)\n\n" );
|
||||||
@ -1203,8 +1203,8 @@ void CLCD::DumpPlayer()
|
|||||||
C_BaseCombatWeapon *active = player->GetActiveWeapon();
|
C_BaseCombatWeapon *active = player->GetActiveWeapon();
|
||||||
if ( active )
|
if ( active )
|
||||||
{
|
{
|
||||||
CDescribeData helper( active );
|
CDescribeData helperLocl( active );
|
||||||
helper.DumpDescription( active->GetPredDescMap() );
|
helperLocl.DumpDescription( active->GetPredDescMap() );
|
||||||
}
|
}
|
||||||
|
|
||||||
Msg( "Other replacements:\n\n" );
|
Msg( "Other replacements:\n\n" );
|
||||||
|
@ -21,9 +21,15 @@ static CPDumpPanel *g_pPDumpPanel = NULL;
|
|||||||
// we pragma'd away in platform.h, so this little compiler specific hack will eliminate those warnings while
|
// we pragma'd away in platform.h, so this little compiler specific hack will eliminate those warnings while
|
||||||
// retaining our own warning setup...ywb
|
// retaining our own warning setup...ywb
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
|
|
||||||
|
#if _MSC_VER < 1900
|
||||||
#pragma warning( push )
|
#pragma warning( push )
|
||||||
#include <typeinfo.h>
|
#include <typeinfo.h>
|
||||||
#pragma warning( pop )
|
#pragma warning( pop )
|
||||||
|
#else
|
||||||
|
#include <typeinfo>
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
using namespace vgui;
|
using namespace vgui;
|
||||||
|
@ -25,7 +25,9 @@
|
|||||||
#include "tier0/icommandline.h"
|
#include "tier0/icommandline.h"
|
||||||
#include "inputsystem/iinputsystem.h"
|
#include "inputsystem/iinputsystem.h"
|
||||||
#include "inputsystem/ButtonCode.h"
|
#include "inputsystem/ButtonCode.h"
|
||||||
|
#if _MSC_VER < 1900
|
||||||
#include "math.h"
|
#include "math.h"
|
||||||
|
#endif
|
||||||
#include "tier1/convar_serverbounded.h"
|
#include "tier1/convar_serverbounded.h"
|
||||||
#include "cam_thirdperson.h"
|
#include "cam_thirdperson.h"
|
||||||
|
|
||||||
|
@ -119,7 +119,7 @@ entities. Each one is useful under different conditions.
|
|||||||
#include "tier0/fasttimer.h"
|
#include "tier0/fasttimer.h"
|
||||||
#include "utllinkedlist.h"
|
#include "utllinkedlist.h"
|
||||||
#include "utldict.h"
|
#include "utldict.h"
|
||||||
#ifdef WIN32
|
#if defined(WIN32) && _MSC_VER < 1900
|
||||||
#include <typeinfo.h>
|
#include <typeinfo.h>
|
||||||
#else
|
#else
|
||||||
#include <typeinfo>
|
#include <typeinfo>
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
//=============================================================================//
|
//=============================================================================//
|
||||||
#include "cbase.h"
|
#include "cbase.h"
|
||||||
#include "c_baseentity.h"
|
#include "c_baseentity.h"
|
||||||
#ifdef WIN32
|
#if defined(WIN32) && _MSC_VER < 1900
|
||||||
#include <typeinfo.h>
|
#include <typeinfo.h>
|
||||||
#endif
|
#endif
|
||||||
#include "tier0/vprof.h"
|
#include "tier0/vprof.h"
|
||||||
|
@ -121,7 +121,7 @@ char *CHudTextMessage::BufferedLocaliseTextString( const char *msg )
|
|||||||
char *CHudTextMessage::LookupString( const char *msg, int *msg_dest )
|
char *CHudTextMessage::LookupString( const char *msg, int *msg_dest )
|
||||||
{
|
{
|
||||||
if ( !msg )
|
if ( !msg )
|
||||||
return "";
|
return (char*)"";
|
||||||
|
|
||||||
// '#' character indicates this is a reference to a string in titles.txt, and not the string itself
|
// '#' character indicates this is a reference to a string in titles.txt, and not the string itself
|
||||||
if ( msg[0] == '#' )
|
if ( msg[0] == '#' )
|
||||||
|
@ -892,7 +892,7 @@ bool IsListeningToCommentary( void )
|
|||||||
void CPointCommentaryNode::Spawn( void )
|
void CPointCommentaryNode::Spawn( void )
|
||||||
{
|
{
|
||||||
// No model specified?
|
// No model specified?
|
||||||
char *szModel = (char *)STRING( GetModelName() );
|
const char *szModel = STRING( GetModelName() );
|
||||||
if (!szModel || !*szModel)
|
if (!szModel || !*szModel)
|
||||||
{
|
{
|
||||||
szModel = "models/extras/info_speech.mdl";
|
szModel = "models/extras/info_speech.mdl";
|
||||||
|
@ -1272,7 +1272,7 @@ public:
|
|||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
void FunctionCheck( void *pFunction, const char *name );
|
void FunctionCheck( void *pFunction, const char *name );
|
||||||
|
|
||||||
ENTITYFUNCPTR TouchSet( ENTITYFUNCPTR func, char *name )
|
ENTITYFUNCPTR TouchSet( ENTITYFUNCPTR func, const char *name )
|
||||||
{
|
{
|
||||||
#ifdef GNUC
|
#ifdef GNUC
|
||||||
COMPILE_TIME_ASSERT( sizeof(func) == 8 );
|
COMPILE_TIME_ASSERT( sizeof(func) == 8 );
|
||||||
@ -1283,7 +1283,7 @@ public:
|
|||||||
FunctionCheck( *(reinterpret_cast<void **>(&m_pfnTouch)), name );
|
FunctionCheck( *(reinterpret_cast<void **>(&m_pfnTouch)), name );
|
||||||
return func;
|
return func;
|
||||||
}
|
}
|
||||||
USEPTR UseSet( USEPTR func, char *name )
|
USEPTR UseSet( USEPTR func, const char *name )
|
||||||
{
|
{
|
||||||
#ifdef GNUC
|
#ifdef GNUC
|
||||||
COMPILE_TIME_ASSERT( sizeof(func) == 8 );
|
COMPILE_TIME_ASSERT( sizeof(func) == 8 );
|
||||||
@ -1294,7 +1294,7 @@ public:
|
|||||||
FunctionCheck( *(reinterpret_cast<void **>(&m_pfnUse)), name );
|
FunctionCheck( *(reinterpret_cast<void **>(&m_pfnUse)), name );
|
||||||
return func;
|
return func;
|
||||||
}
|
}
|
||||||
ENTITYFUNCPTR BlockedSet( ENTITYFUNCPTR func, char *name )
|
ENTITYFUNCPTR BlockedSet( ENTITYFUNCPTR func, const char *name )
|
||||||
{
|
{
|
||||||
#ifdef GNUC
|
#ifdef GNUC
|
||||||
COMPILE_TIME_ASSERT( sizeof(func) == 8 );
|
COMPILE_TIME_ASSERT( sizeof(func) == 8 );
|
||||||
|
@ -14,6 +14,13 @@
|
|||||||
#include "sceneentity.h"
|
#include "sceneentity.h"
|
||||||
#include "particles/particles.h"
|
#include "particles/particles.h"
|
||||||
|
|
||||||
|
#if _MSC_VER >= 1900
|
||||||
|
#include "icommandline.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// memdbgon must be the last include file in a .cpp file!!!
|
||||||
|
#include "tier0/memdbgon.h"
|
||||||
|
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
// Interface from engine to tools for manipulating entities
|
// Interface from engine to tools for manipulating entities
|
||||||
|
@ -412,7 +412,7 @@ void ExplosionCreate( const Vector ¢er, const QAngle &angles,
|
|||||||
|
|
||||||
CEnvExplosion *pExplosion = (CEnvExplosion*)CBaseEntity::Create( "env_explosion", center, angles, pOwner );
|
CEnvExplosion *pExplosion = (CEnvExplosion*)CBaseEntity::Create( "env_explosion", center, angles, pOwner );
|
||||||
Q_snprintf( buf,sizeof(buf), "%3d", magnitude );
|
Q_snprintf( buf,sizeof(buf), "%3d", magnitude );
|
||||||
char *szKeyName = "iMagnitude";
|
const char *szKeyName = "iMagnitude";
|
||||||
char *szValue = buf;
|
char *szValue = buf;
|
||||||
pExplosion->KeyValue( szKeyName, szValue );
|
pExplosion->KeyValue( szKeyName, szValue );
|
||||||
|
|
||||||
|
@ -67,7 +67,7 @@ public: // CBaseGameSystem overrides
|
|||||||
virtual void Shutdown();
|
virtual void Shutdown();
|
||||||
virtual void FrameUpdatePostEntityThink();
|
virtual void FrameUpdatePostEntityThink();
|
||||||
virtual void LevelInitPostEntity();
|
virtual void LevelInitPostEntity();
|
||||||
virtual char *GetFixedCameraEntityName( void ) { return "point_viewcontrol"; }
|
virtual const char *GetFixedCameraEntityName( void ) { return "point_viewcontrol"; }
|
||||||
|
|
||||||
bool SetCameraMan( int iPlayerIndex );
|
bool SetCameraMan( int iPlayerIndex );
|
||||||
int GetCameraMan() { return m_iCameraManIndex; }
|
int GetCameraMan() { return m_iCameraManIndex; }
|
||||||
|
@ -303,7 +303,7 @@ void CNavMesh::CommandNavMergeMesh( const CCommand &args )
|
|||||||
//--------------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------------
|
||||||
int NavMeshMergeAutocomplete( char const *partial, char commands[ COMMAND_COMPLETION_MAXITEMS ][ COMMAND_COMPLETION_ITEM_LENGTH ] )
|
int NavMeshMergeAutocomplete( char const *partial, char commands[ COMMAND_COMPLETION_MAXITEMS ][ COMMAND_COMPLETION_ITEM_LENGTH ] )
|
||||||
{
|
{
|
||||||
char *commandName = "nav_merge_mesh";
|
const char *commandName = "nav_merge_mesh";
|
||||||
int numMatches = 0;
|
int numMatches = 0;
|
||||||
partial += Q_strlen( commandName ) + 1;
|
partial += Q_strlen( commandName ) + 1;
|
||||||
int partialLength = Q_strlen( partial );
|
int partialLength = Q_strlen( partial );
|
||||||
|
@ -7,12 +7,12 @@
|
|||||||
|
|
||||||
|
|
||||||
#include "cbase.h"
|
#include "cbase.h"
|
||||||
#ifdef _WIN32
|
#if POSIX || _MSC_VER >= 1900
|
||||||
|
#include <typeinfo>
|
||||||
|
#elif defined(_WIN32)
|
||||||
#include "typeinfo.h"
|
#include "typeinfo.h"
|
||||||
// BUGBUG: typeinfo stomps some of the warning settings (in yvals.h)
|
// BUGBUG: typeinfo stomps some of the warning settings (in yvals.h)
|
||||||
#pragma warning(disable:4244)
|
#pragma warning(disable:4244)
|
||||||
#elif POSIX
|
|
||||||
#include <typeinfo>
|
|
||||||
#else
|
#else
|
||||||
#error "need typeinfo defined"
|
#error "need typeinfo defined"
|
||||||
#endif
|
#endif
|
||||||
@ -942,8 +942,8 @@ void CBaseEntity::PhysicsDispatchThink( BASEPTR thinkFunc )
|
|||||||
if ( thinkLimit )
|
if ( thinkLimit )
|
||||||
{
|
{
|
||||||
// calculate running time of the AI in milliseconds
|
// calculate running time of the AI in milliseconds
|
||||||
float time = ( engine->Time() - startTime ) * 1000.0f;
|
float flTime = ( engine->Time() - startTime ) * 1000.0f;
|
||||||
if ( time > thinkLimit )
|
if ( flTime > thinkLimit )
|
||||||
{
|
{
|
||||||
#if defined( _XBOX ) && !defined( _RETAIL )
|
#if defined( _XBOX ) && !defined( _RETAIL )
|
||||||
if ( vprof_think_limit.GetBool() )
|
if ( vprof_think_limit.GetBool() )
|
||||||
@ -956,14 +956,14 @@ void CBaseEntity::PhysicsDispatchThink( BASEPTR thinkFunc )
|
|||||||
CAI_BaseNPC *pNPC = MyNPCPointer();
|
CAI_BaseNPC *pNPC = MyNPCPointer();
|
||||||
if (pNPC && pNPC->GetCurSchedule())
|
if (pNPC && pNPC->GetCurSchedule())
|
||||||
{
|
{
|
||||||
pNPC->ReportOverThinkLimit( time );
|
pNPC->ReportOverThinkLimit( flTime );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
Msg( "%s(%s) thinking for %.02f ms!!!\n", GetClassname(), typeid(this).raw_name(), time );
|
Msg( "%s(%s) thinking for %.02f ms!!!\n", GetClassname(), typeid(this).raw_name(), flTime );
|
||||||
#elif POSIX
|
#elif POSIX
|
||||||
Msg( "%s(%s) thinking for %.02f ms!!!\n", GetClassname(), typeid(this).name(), time );
|
Msg( "%s(%s) thinking for %.02f ms!!!\n", GetClassname(), typeid(this).name(), flTime );
|
||||||
#else
|
#else
|
||||||
#error "typeinfo"
|
#error "typeinfo"
|
||||||
#endif
|
#endif
|
||||||
|
@ -25,7 +25,7 @@ public:
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
~CGameEventListener()
|
virtual ~CGameEventListener()
|
||||||
{
|
{
|
||||||
StopListeningForAllEvents();
|
StopListeningForAllEvents();
|
||||||
}
|
}
|
||||||
|
@ -1126,7 +1126,7 @@ float CountdownTimer::Now( void ) const
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
char* ReadAndAllocStringValue( KeyValues *pSub, const char *pName, const char *pFilename )
|
const char* ReadAndAllocStringValue( KeyValues *pSub, const char *pName, const char *pFilename )
|
||||||
{
|
{
|
||||||
const char *pValue = pSub->GetString( pName, NULL );
|
const char *pValue = pSub->GetString( pName, NULL );
|
||||||
if ( !pValue )
|
if ( !pValue )
|
||||||
|
@ -606,7 +606,7 @@ private:
|
|||||||
float Now( void ) const; // work-around since client header doesn't like inlined gpGlobals->curtime
|
float Now( void ) const; // work-around since client header doesn't like inlined gpGlobals->curtime
|
||||||
};
|
};
|
||||||
|
|
||||||
char* ReadAndAllocStringValue( KeyValues *pSub, const char *pName, const char *pFilename = NULL );
|
const char* ReadAndAllocStringValue( KeyValues *pSub, const char *pName, const char *pFilename = NULL );
|
||||||
|
|
||||||
int UTIL_StringFieldToInt( const char *szValue, const char **pValueStrings, int iNumStrings );
|
int UTIL_StringFieldToInt( const char *szValue, const char **pValueStrings, int iNumStrings );
|
||||||
|
|
||||||
|
@ -1015,12 +1015,12 @@ CPolyhedron *ClipLinkedGeometry( GeneratePolyhedronFromPlanes_UnorderedPolygonLL
|
|||||||
|
|
||||||
//Scan for onplane points connected to only other onplane/dead points, these points get downgraded to dead status.
|
//Scan for onplane points connected to only other onplane/dead points, these points get downgraded to dead status.
|
||||||
{
|
{
|
||||||
GeneratePolyhedronFromPlanes_UnorderedPointLL *pActivePointWalk = pAllPoints;
|
GeneratePolyhedronFromPlanes_UnorderedPointLL *pActivePointWalkLocl = pAllPoints;
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
if( pActivePointWalk->pPoint->planarity == POINT_ONPLANE )
|
if( pActivePointWalkLocl->pPoint->planarity == POINT_ONPLANE )
|
||||||
{
|
{
|
||||||
GeneratePolyhedronFromPlanes_LineLL *pOnPlaneLineWalk = pActivePointWalk->pPoint->pConnectedLines;
|
GeneratePolyhedronFromPlanes_LineLL *pOnPlaneLineWalk = pActivePointWalkLocl->pPoint->pConnectedLines;
|
||||||
GeneratePolyhedronFromPlanes_LineLL *pStartLineWalk = pOnPlaneLineWalk;
|
GeneratePolyhedronFromPlanes_LineLL *pStartLineWalk = pOnPlaneLineWalk;
|
||||||
bool bDead = true; //assume it's dead and disprove
|
bool bDead = true; //assume it's dead and disprove
|
||||||
do
|
do
|
||||||
@ -1047,7 +1047,7 @@ CPolyhedron *ClipLinkedGeometry( GeneratePolyhedronFromPlanes_UnorderedPolygonLL
|
|||||||
|
|
||||||
if( bDead )
|
if( bDead )
|
||||||
{
|
{
|
||||||
pActivePointWalk->pPoint->planarity = POINT_DEAD;
|
pActivePointWalkLocl->pPoint->planarity = POINT_DEAD;
|
||||||
|
|
||||||
pOnPlaneLineWalk = pStartLineWalk;
|
pOnPlaneLineWalk = pStartLineWalk;
|
||||||
|
|
||||||
@ -1059,8 +1059,8 @@ CPolyhedron *ClipLinkedGeometry( GeneratePolyhedronFromPlanes_UnorderedPolygonLL
|
|||||||
} while( pOnPlaneLineWalk != pStartLineWalk );
|
} while( pOnPlaneLineWalk != pStartLineWalk );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
pActivePointWalk = pActivePointWalk->pNext;
|
pActivePointWalkLocl = pActivePointWalkLocl->pNext;
|
||||||
} while( pActivePointWalk );
|
} while( pActivePointWalkLocl );
|
||||||
}
|
}
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
PlaneCutHistory.AddToTail( &pOutwardFacingPlanes[iCurrentPlane * 4] );
|
PlaneCutHistory.AddToTail( &pOutwardFacingPlanes[iCurrentPlane * 4] );
|
||||||
@ -1337,17 +1337,17 @@ CPolyhedron *ClipLinkedGeometry( GeneratePolyhedronFromPlanes_UnorderedPolygonLL
|
|||||||
|
|
||||||
//verify that the new point isn't sitting on top of another
|
//verify that the new point isn't sitting on top of another
|
||||||
{
|
{
|
||||||
GeneratePolyhedronFromPlanes_UnorderedPointLL *pActivePointWalk = pAllPoints;
|
GeneratePolyhedronFromPlanes_UnorderedPointLL *pActivePointWalkLocl = pAllPoints;
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
if( pActivePointWalk->pPoint != pNewPoint )
|
if( pActivePointWalkLocl->pPoint != pNewPoint )
|
||||||
{
|
{
|
||||||
Vector vDiff = pActivePointWalk->pPoint->ptPosition - pNewPoint->ptPosition;
|
Vector vDiff = pActivePointWalkLocl->pPoint->ptPosition - pNewPoint->ptPosition;
|
||||||
|
|
||||||
AssertMsg_DumpPolyhedron( vDiff.Length() > fOnPlaneEpsilon, "Generated a point on top of another" );
|
AssertMsg_DumpPolyhedron( vDiff.Length() > fOnPlaneEpsilon, "Generated a point on top of another" );
|
||||||
}
|
}
|
||||||
pActivePointWalk = pActivePointWalk->pNext;
|
pActivePointWalkLocl = pActivePointWalk->pNext;
|
||||||
} while( pActivePointWalk );
|
} while( pActivePointWalkLocl );
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -141,11 +141,11 @@ void CScratchPadGraph::UpdateTicksAndStuff( float flTime, float flValue )
|
|||||||
// Extend the lines attached to the time labels.
|
// Extend the lines attached to the time labels.
|
||||||
for ( int i=0; i < m_nTimeLabelsDrawn; i++ )
|
for ( int i=0; i < m_nTimeLabelsDrawn; i++ )
|
||||||
{
|
{
|
||||||
float flTime = m_flTimeOrigin + m_nTimeLabelsDrawn * m_flTimeLabelEveryNSeconds;
|
float flTimeLocl = m_flTimeOrigin + m_nTimeLabelsDrawn * m_flTimeLabelEveryNSeconds;
|
||||||
|
|
||||||
m_pPad->DrawLine(
|
m_pPad->DrawLine(
|
||||||
CSPVert((const Vector&) GetSamplePosition( flTime, m_flHighestValue )),
|
CSPVert((const Vector&) GetSamplePosition( flTimeLocl, m_flHighestValue )),
|
||||||
CSPVert((const Vector&) GetSamplePosition( flTime, flValue ) )
|
CSPVert((const Vector&) GetSamplePosition( flTimeLocl, flValue ) )
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -158,21 +158,21 @@ void CScratchPadGraph::UpdateTicksAndStuff( float flTime, float flValue )
|
|||||||
{
|
{
|
||||||
CTextParams params;
|
CTextParams params;
|
||||||
|
|
||||||
float flTime = m_flTimeOrigin + m_nTimeLabelsDrawn * m_flTimeLabelEveryNSeconds;
|
float flTimeLocl = m_flTimeOrigin + m_nTimeLabelsDrawn * m_flTimeLabelEveryNSeconds;
|
||||||
|
|
||||||
params.m_bSolidBackground = true;
|
params.m_bSolidBackground = true;
|
||||||
params.m_vPos = GetSamplePosition( flTime, m_flValueOrigin-5 );
|
params.m_vPos = GetSamplePosition( flTimeLocl, m_flValueOrigin-5 );
|
||||||
params.m_bTwoSided = true;
|
params.m_bTwoSided = true;
|
||||||
|
|
||||||
char str[512];
|
char str[512];
|
||||||
Q_snprintf( str, sizeof( str ), "time: %.2f", flTime );
|
Q_snprintf( str, sizeof( str ), "time: %.2f", flTimeLocl );
|
||||||
m_pPad->DrawText( str, params );
|
m_pPad->DrawText( str, params );
|
||||||
|
|
||||||
|
|
||||||
// Now draw the vertical line for the value..
|
// Now draw the vertical line for the value..
|
||||||
m_pPad->DrawLine(
|
m_pPad->DrawLine(
|
||||||
CSPVert( (const Vector&)GetSamplePosition( flTime, m_flValueOrigin ) ),
|
CSPVert( (const Vector&)GetSamplePosition( flTimeLocl, m_flValueOrigin ) ),
|
||||||
CSPVert( (const Vector&)GetSamplePosition( flTime, m_flHighestValue ) )
|
CSPVert( (const Vector&)GetSamplePosition( flTimeLocl, m_flHighestValue ) )
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ enum NormalDecodeMode_t
|
|||||||
};
|
};
|
||||||
|
|
||||||
// Forward declaration
|
// Forward declaration
|
||||||
#ifdef _WIN32
|
#if defined(_WIN32) && _MSC_VER < 1900
|
||||||
typedef enum _D3DFORMAT D3DFORMAT;
|
typedef enum _D3DFORMAT D3DFORMAT;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -103,7 +103,7 @@ enum ImageFormat
|
|||||||
NUM_IMAGE_FORMATS
|
NUM_IMAGE_FORMATS
|
||||||
};
|
};
|
||||||
|
|
||||||
#if defined( POSIX ) || defined( DX_TO_GL_ABSTRACTION )
|
#if defined( POSIX ) || defined( DX_TO_GL_ABSTRACTION ) || _MSC_VER >= 1900
|
||||||
typedef enum _D3DFORMAT
|
typedef enum _D3DFORMAT
|
||||||
{
|
{
|
||||||
D3DFMT_INDEX16,
|
D3DFMT_INDEX16,
|
||||||
|
@ -933,8 +933,8 @@ static void CalcVirtualAnimation( virtualmodel_t *pVModel, const CStudioHdr *pSt
|
|||||||
{
|
{
|
||||||
if (pStudioHdr->boneFlags(i) & boneMask)
|
if (pStudioHdr->boneFlags(i) & boneMask)
|
||||||
{
|
{
|
||||||
int j = pSeqGroup->boneMap[i];
|
int l = pSeqGroup->boneMap[i];
|
||||||
if (j >= 0 && pweight[j] > 0.0f)
|
if (l >= 0 && pweight[l] > 0.0f)
|
||||||
{
|
{
|
||||||
if (animdesc.flags & STUDIO_DELTA)
|
if (animdesc.flags & STUDIO_DELTA)
|
||||||
{
|
{
|
||||||
@ -943,13 +943,13 @@ static void CalcVirtualAnimation( virtualmodel_t *pVModel, const CStudioHdr *pSt
|
|||||||
}
|
}
|
||||||
else if (pSeqLinearBones)
|
else if (pSeqLinearBones)
|
||||||
{
|
{
|
||||||
q[i] = pSeqLinearBones->quat(j);
|
q[i] = pSeqLinearBones->quat(l);
|
||||||
pos[i] = pSeqLinearBones->pos(j);
|
pos[i] = pSeqLinearBones->pos(l);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
q[i] = pSeqbone[j].quat;
|
q[i] = pSeqbone[l].quat;
|
||||||
pos[i] = pSeqbone[j].pos;
|
pos[i] = pSeqbone[l].pos;
|
||||||
}
|
}
|
||||||
#ifdef STUDIO_ENABLE_PERF_COUNTERS
|
#ifdef STUDIO_ENABLE_PERF_COUNTERS
|
||||||
pStudioHdr->m_nPerfUsedBones++;
|
pStudioHdr->m_nPerfUsedBones++;
|
||||||
@ -997,10 +997,9 @@ static void CalcVirtualAnimation( virtualmodel_t *pVModel, const CStudioHdr *pSt
|
|||||||
matrix3x4_t *boneToWorld = g_MatrixPool.Alloc();
|
matrix3x4_t *boneToWorld = g_MatrixPool.Alloc();
|
||||||
CBoneBitList boneComputed;
|
CBoneBitList boneComputed;
|
||||||
|
|
||||||
int i;
|
for (int l = 0; i < animdesc.numlocalhierarchy; i++)
|
||||||
for (i = 0; i < animdesc.numlocalhierarchy; i++)
|
|
||||||
{
|
{
|
||||||
mstudiolocalhierarchy_t *pHierarchy = animdesc.pHierarchy( i );
|
mstudiolocalhierarchy_t *pHierarchy = animdesc.pHierarchy( l );
|
||||||
|
|
||||||
if ( !pHierarchy )
|
if ( !pHierarchy )
|
||||||
break;
|
break;
|
||||||
@ -1141,10 +1140,9 @@ static void CalcAnimation( const CStudioHdr *pStudioHdr, Vector *pos, Quaternion
|
|||||||
matrix3x4_t *boneToWorld = g_MatrixPool.Alloc();
|
matrix3x4_t *boneToWorld = g_MatrixPool.Alloc();
|
||||||
CBoneBitList boneComputed;
|
CBoneBitList boneComputed;
|
||||||
|
|
||||||
int i;
|
for (int j = 0; j < animdesc.numlocalhierarchy; j++)
|
||||||
for (i = 0; i < animdesc.numlocalhierarchy; i++)
|
|
||||||
{
|
{
|
||||||
mstudiolocalhierarchy_t *pHierarchy = animdesc.pHierarchy( i );
|
mstudiolocalhierarchy_t *pHierarchy = animdesc.pHierarchy( j );
|
||||||
|
|
||||||
if ( !pHierarchy )
|
if ( !pHierarchy )
|
||||||
break;
|
break;
|
||||||
@ -5610,9 +5608,9 @@ bool Studio_AnimPosition( mstudioanimdesc_t *panim, float flCycle, Vector &vecPo
|
|||||||
vecAngle.y = vecAngle.y * (1 - f) + pmove->angle * f;
|
vecAngle.y = vecAngle.y * (1 - f) + pmove->angle * f;
|
||||||
if (iLoops != 0)
|
if (iLoops != 0)
|
||||||
{
|
{
|
||||||
mstudiomovement_t *pmove = panim->pMovement( panim->nummovements - 1 );
|
mstudiomovement_t *pmoveLocl = panim->pMovement( panim->nummovements - 1 );
|
||||||
vecPos = vecPos + iLoops * pmove->position;
|
vecPos = vecPos + iLoops * pmoveLocl->position;
|
||||||
vecAngle.y = vecAngle.y + iLoops * pmove->angle;
|
vecAngle.y = vecAngle.y + iLoops * pmoveLocl->angle;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -134,7 +134,7 @@ void* SendProxy_LengthTable( const SendProp *pProp, const void *pStructBase, con
|
|||||||
// Note: you have to be DILIGENT about calling NetworkStateChanged whenever an element in your CUtlVector changes
|
// Note: you have to be DILIGENT about calling NetworkStateChanged whenever an element in your CUtlVector changes
|
||||||
// since CUtlVector doesn't do this automatically.
|
// since CUtlVector doesn't do this automatically.
|
||||||
SendProp SendPropUtlVector(
|
SendProp SendPropUtlVector(
|
||||||
char *pVarName, // Use SENDINFO_UTLVECTOR to generate these 4.
|
const char *pVarName, // Use SENDINFO_UTLVECTOR to generate these 4.
|
||||||
int offset, // Used to generate pData in the function specified in varProxy.
|
int offset, // Used to generate pData in the function specified in varProxy.
|
||||||
int sizeofVar, // The size of each element in the utlvector.
|
int sizeofVar, // The size of each element in the utlvector.
|
||||||
EnsureCapacityFn ensureFn, // This is the value returned for elements out of the array's current range.
|
EnsureCapacityFn ensureFn, // This is the value returned for elements out of the array's current range.
|
||||||
|
@ -43,7 +43,7 @@
|
|||||||
// )
|
// )
|
||||||
//
|
//
|
||||||
SendProp SendPropUtlVector(
|
SendProp SendPropUtlVector(
|
||||||
char *pVarName, // Use SENDINFO_UTLVECTOR to generate these first 4 parameters.
|
const char *pVarName, // Use SENDINFO_UTLVECTOR to generate these first 4 parameters.
|
||||||
int offset,
|
int offset,
|
||||||
int sizeofVar,
|
int sizeofVar,
|
||||||
EnsureCapacityFn ensureFn,
|
EnsureCapacityFn ensureFn,
|
||||||
|
@ -138,6 +138,10 @@ void ConnectHaptics(CreateInterfaceFn appFactory)
|
|||||||
HookHapticMessages();
|
HookHapticMessages();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// deleting haptics results in a warning about deleting something with a non-virtual destructor
|
||||||
|
// big yikes but we can't do anything about it as it's accessed via interface
|
||||||
|
#pragma warning (disable: 5205)
|
||||||
|
|
||||||
void DisconnectHaptics()
|
void DisconnectHaptics()
|
||||||
{
|
{
|
||||||
haptics->ShutdownHaptics();
|
haptics->ShutdownHaptics();
|
||||||
|
@ -154,7 +154,7 @@ class CPositionInterpolator_Linear : public IPositionInterpolator
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
virtual void Release();
|
virtual void Release();
|
||||||
virtual void GetDetails( char **outName, int *outMinKeyReq, int *outMaxKeyReq );
|
virtual void GetDetails( const char **outName, int *outMinKeyReq, int *outMaxKeyReq );
|
||||||
virtual void SetKeyPosition( int keyNum, Vector const &vPos );
|
virtual void SetKeyPosition( int keyNum, Vector const &vPos );
|
||||||
virtual void InterpolatePosition( float time, Vector &vOut );
|
virtual void InterpolatePosition( float time, Vector &vOut );
|
||||||
virtual bool ProcessKey( char const *pName, char const *pValue ) { return false; }
|
virtual bool ProcessKey( char const *pName, char const *pValue ) { return false; }
|
||||||
@ -171,7 +171,7 @@ void CPositionInterpolator_Linear::Release()
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
void CPositionInterpolator_Linear::GetDetails( char **outName, int *outMinKeyReq, int *outMaxKeyReq )
|
void CPositionInterpolator_Linear::GetDetails( const char **outName, int *outMinKeyReq, int *outMaxKeyReq )
|
||||||
{
|
{
|
||||||
*outName = "Linear";
|
*outName = "Linear";
|
||||||
*outMinKeyReq = 0;
|
*outMinKeyReq = 0;
|
||||||
@ -201,7 +201,7 @@ class CPositionInterpolator_CatmullRom : public IPositionInterpolator
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
virtual void Release();
|
virtual void Release();
|
||||||
virtual void GetDetails( char **outName, int *outMinKeyReq, int *outMaxKeyReq );
|
virtual void GetDetails( const char **outName, int *outMinKeyReq, int *outMaxKeyReq );
|
||||||
virtual void SetKeyPosition( int keyNum, Vector const &vPos );
|
virtual void SetKeyPosition( int keyNum, Vector const &vPos );
|
||||||
virtual void InterpolatePosition( float time, Vector &vOut );
|
virtual void InterpolatePosition( float time, Vector &vOut );
|
||||||
virtual bool ProcessKey( char const *pName, char const *pValue ) { return false; }
|
virtual bool ProcessKey( char const *pName, char const *pValue ) { return false; }
|
||||||
@ -218,7 +218,7 @@ void CPositionInterpolator_CatmullRom::Release()
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
void CPositionInterpolator_CatmullRom::GetDetails( char **outName, int *outMinKeyReq, int *outMaxKeyReq )
|
void CPositionInterpolator_CatmullRom::GetDetails( const char **outName, int *outMinKeyReq, int *outMaxKeyReq )
|
||||||
{
|
{
|
||||||
*outName = "Catmull-Rom Spline";
|
*outName = "Catmull-Rom Spline";
|
||||||
*outMinKeyReq = -1;
|
*outMinKeyReq = -1;
|
||||||
@ -282,7 +282,7 @@ public:
|
|||||||
CPositionInterpolator_Rope();
|
CPositionInterpolator_Rope();
|
||||||
|
|
||||||
virtual void Release();
|
virtual void Release();
|
||||||
virtual void GetDetails( char **outName, int *outMinKeyReq, int *outMaxKeyReq );
|
virtual void GetDetails( const char **outName, int *outMinKeyReq, int *outMaxKeyReq );
|
||||||
virtual void SetKeyPosition( int keyNum, Vector const &vPos );
|
virtual void SetKeyPosition( int keyNum, Vector const &vPos );
|
||||||
virtual void InterpolatePosition( float time, Vector &vOut );
|
virtual void InterpolatePosition( float time, Vector &vOut );
|
||||||
virtual bool ProcessKey( char const *pName, char const *pValue );
|
virtual bool ProcessKey( char const *pName, char const *pValue );
|
||||||
@ -319,7 +319,7 @@ void CPositionInterpolator_Rope::Release()
|
|||||||
delete this;
|
delete this;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CPositionInterpolator_Rope::GetDetails( char **outName, int *outMinKeyReq, int *outMaxKeyReq )
|
void CPositionInterpolator_Rope::GetDetails( const char **outName, int *outMinKeyReq, int *outMaxKeyReq )
|
||||||
{
|
{
|
||||||
*outName = "Rope";
|
*outName = "Rope";
|
||||||
*outMinKeyReq = 0;
|
*outMinKeyReq = 0;
|
||||||
@ -433,7 +433,7 @@ typedef void (*RotationInterpolatorFunc_t)(float time, Quaternion &outRot);
|
|||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
char *szName;
|
const char *szName;
|
||||||
RotationInterpolatorFunc_t pFunc;
|
RotationInterpolatorFunc_t pFunc;
|
||||||
|
|
||||||
// defines the range of keys this interpolator needs to function
|
// defines the range of keys this interpolator needs to function
|
||||||
@ -458,7 +458,7 @@ int Motion_GetNumberOfRotationInterpolators( void )
|
|||||||
return ARRAYSIZE(g_RotationInterpolators);
|
return ARRAYSIZE(g_RotationInterpolators);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Motion_GetRotationInterpolatorDetails( int rotInterpNum, char **outName, int *outMinKeyReq, int *outMaxKeyReq )
|
bool Motion_GetRotationInterpolatorDetails( int rotInterpNum, const char **outName, int *outMinKeyReq, int *outMaxKeyReq )
|
||||||
{
|
{
|
||||||
if ( rotInterpNum < 0 || rotInterpNum >= Motion_GetNumberOfRotationInterpolators() )
|
if ( rotInterpNum < 0 || rotInterpNum >= Motion_GetNumberOfRotationInterpolators() )
|
||||||
{
|
{
|
||||||
|
@ -14,7 +14,7 @@ class IPositionInterpolator
|
|||||||
public:
|
public:
|
||||||
virtual void Release() = 0;
|
virtual void Release() = 0;
|
||||||
|
|
||||||
virtual void GetDetails( char **outName, int *outMinKeyReq, int *outMaxKeyReq ) = 0;
|
virtual void GetDetails( const char **outName, int *outMinKeyReq, int *outMaxKeyReq ) = 0;
|
||||||
virtual void SetKeyPosition( int keyNum, Vector const &vPos ) = 0;
|
virtual void SetKeyPosition( int keyNum, Vector const &vPos ) = 0;
|
||||||
virtual void InterpolatePosition( float time, Vector &vOut ) = 0;
|
virtual void InterpolatePosition( float time, Vector &vOut ) = 0;
|
||||||
|
|
||||||
@ -34,7 +34,7 @@ IPositionInterpolator* Motion_GetPositionInterpolator( int interpNum );
|
|||||||
|
|
||||||
// Rotation interpolators.
|
// Rotation interpolators.
|
||||||
int Motion_GetNumberOfRotationInterpolators( void );
|
int Motion_GetNumberOfRotationInterpolators( void );
|
||||||
bool Motion_GetRotationInterpolatorDetails( int rotInterpNum, char **outName, int *outMinKeyReq, int *outMaxKeyReq );
|
bool Motion_GetRotationInterpolatorDetails( int rotInterpNum, const char **outName, int *outMinKeyReq, int *outMaxKeyReq );
|
||||||
bool Motion_InterpolateRotation( float time, int interpFuncNum, Quaternion &outQuatRotation );
|
bool Motion_InterpolateRotation( float time, int interpFuncNum, Quaternion &outQuatRotation );
|
||||||
bool Motion_SetKeyAngles( int keyNum, Quaternion &quatAngles );
|
bool Motion_SetKeyAngles( int keyNum, Quaternion &quatAngles );
|
||||||
|
|
||||||
|
@ -72,6 +72,10 @@ public:
|
|||||||
void Init( char const* pTexture, const char *pTextureGroupName, bool bComplain = true );
|
void Init( char const* pTexture, const char *pTextureGroupName, bool bComplain = true );
|
||||||
void InitProceduralTexture( const char *pTextureName, const char *pTextureGroupName, int w, int h, ImageFormat fmt, int nFlags );
|
void InitProceduralTexture( const char *pTextureName, const char *pTextureGroupName, int w, int h, ImageFormat fmt, int nFlags );
|
||||||
void InitRenderTarget( int w, int h, RenderTargetSizeMode_t sizeMode, ImageFormat fmt, MaterialRenderTargetDepth_t depth, bool bHDR, char *pStrOptionalName = NULL );
|
void InitRenderTarget( int w, int h, RenderTargetSizeMode_t sizeMode, ImageFormat fmt, MaterialRenderTargetDepth_t depth, bool bHDR, char *pStrOptionalName = NULL );
|
||||||
|
void InitRenderTarget(int w, int h, RenderTargetSizeMode_t sizeMode, ImageFormat fmt, MaterialRenderTargetDepth_t depth, bool bHDR, const char* pStrOptionalName = NULL)
|
||||||
|
{
|
||||||
|
InitRenderTarget(w, h, sizeMode, fmt, depth, bHDR, const_cast<char*>(pStrOptionalName));
|
||||||
|
}
|
||||||
#if defined( _X360 )
|
#if defined( _X360 )
|
||||||
// used when RT coupling is disparate (texture is DDR based, surface is EDRAM based)
|
// used when RT coupling is disparate (texture is DDR based, surface is EDRAM based)
|
||||||
void InitRenderTargetTexture( int width, int height, RenderTargetSizeMode_t sizeMode, ImageFormat fmt, MaterialRenderTargetDepth_t depth, bool bHDR, char *pStrOptionalName = NULL );
|
void InitRenderTargetTexture( int width, int height, RenderTargetSizeMode_t sizeMode, ImageFormat fmt, MaterialRenderTargetDepth_t depth, bool bHDR, char *pStrOptionalName = NULL );
|
||||||
|
@ -744,9 +744,9 @@ private:
|
|||||||
const type* Base() const { return m_Value; } \
|
const type* Base() const { return m_Value; } \
|
||||||
int Count() const { return count; } \
|
int Count() const { return count; } \
|
||||||
protected: \
|
protected: \
|
||||||
inline void NetworkStateChanged( int index ) \
|
inline void NetworkStateChanged( int _index ) \
|
||||||
{ \
|
{ \
|
||||||
CHECK_USENETWORKVARS ((ThisClass*)(((char*)this) - MyOffsetOf(ThisClass,name)))->stateChangedFn( &m_Value[index] ); \
|
CHECK_USENETWORKVARS ((ThisClass*)(((char*)this) - MyOffsetOf(ThisClass,name)))->stateChangedFn( &m_Value[_index] ); \
|
||||||
} \
|
} \
|
||||||
type m_Value[count]; \
|
type m_Value[count]; \
|
||||||
}; \
|
}; \
|
||||||
|
@ -181,7 +181,7 @@ class CGameSaveRestoreInfo
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
CGameSaveRestoreInfo()
|
CGameSaveRestoreInfo()
|
||||||
: tableCount( 0 ), pTable( 0 ), m_pCurrentEntity( 0 ), m_EntityToIndex( 1024 )
|
: m_iTableCount( 0 ), m_pTable( 0 ), m_pCurrentEntity( 0 ), m_EntityToIndex( 1024 )
|
||||||
{
|
{
|
||||||
memset( &levelInfo, 0, sizeof( levelInfo ) );
|
memset( &levelInfo, 0, sizeof( levelInfo ) );
|
||||||
modelSpaceOffset.Init( 0, 0, 0 );
|
modelSpaceOffset.Init( 0, 0, 0 );
|
||||||
@ -189,8 +189,8 @@ public:
|
|||||||
|
|
||||||
void InitEntityTable( entitytable_t *pNewTable = NULL, int size = 0 )
|
void InitEntityTable( entitytable_t *pNewTable = NULL, int size = 0 )
|
||||||
{
|
{
|
||||||
pTable = pNewTable;
|
m_pTable = pNewTable;
|
||||||
tableCount = size;
|
m_iTableCount = size;
|
||||||
|
|
||||||
for ( int i = 0; i < NumEntities(); i++ )
|
for ( int i = 0; i < NumEntities(); i++ )
|
||||||
{
|
{
|
||||||
@ -200,17 +200,17 @@ public:
|
|||||||
|
|
||||||
entitytable_t *DetachEntityTable()
|
entitytable_t *DetachEntityTable()
|
||||||
{
|
{
|
||||||
entitytable_t *pReturn = pTable;
|
entitytable_t *pReturn = m_pTable;
|
||||||
pTable = NULL;
|
m_pTable = NULL;
|
||||||
tableCount = 0;
|
m_iTableCount = 0;
|
||||||
return pReturn;
|
return pReturn;
|
||||||
}
|
}
|
||||||
|
|
||||||
CBaseEntity *GetCurrentEntityContext() { return m_pCurrentEntity; }
|
CBaseEntity *GetCurrentEntityContext() { return m_pCurrentEntity; }
|
||||||
void SetCurrentEntityContext(CBaseEntity *pEntity) { m_pCurrentEntity = pEntity; }
|
void SetCurrentEntityContext(CBaseEntity *pEntity) { m_pCurrentEntity = pEntity; }
|
||||||
|
|
||||||
int NumEntities() { return tableCount; }
|
int NumEntities() { return m_iTableCount; }
|
||||||
entitytable_t *GetEntityInfo( int i ) { return (pTable + i); }
|
entitytable_t *GetEntityInfo( int i ) { return (m_pTable + i); }
|
||||||
float GetBaseTime() const { return levelInfo.time; }
|
float GetBaseTime() const { return levelInfo.time; }
|
||||||
Vector GetLandmark() const { return ( levelInfo.fUseLandmark ) ? levelInfo.vecLandmarkOffset : vec3_origin; }
|
Vector GetLandmark() const { return ( levelInfo.fUseLandmark ) ? levelInfo.vecLandmarkOffset : vec3_origin; }
|
||||||
|
|
||||||
@ -218,13 +218,13 @@ public:
|
|||||||
{
|
{
|
||||||
#ifdef GAME_DLL
|
#ifdef GAME_DLL
|
||||||
int i;
|
int i;
|
||||||
entitytable_t *pTable;
|
entitytable_t *m_pTable;
|
||||||
int nEntities = NumEntities();
|
int nEntities = NumEntities();
|
||||||
|
|
||||||
for ( i = 0; i < nEntities; i++ )
|
for ( i = 0; i < nEntities; i++ )
|
||||||
{
|
{
|
||||||
pTable = GetEntityInfo( i );
|
m_pTable = GetEntityInfo( i );
|
||||||
m_EntityToIndex.Insert( CHashElement( pTable->hEnt.Get(), i ) );
|
m_EntityToIndex.Insert( CHashElement( m_pTable->hEnt.Get(), i ) );
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@ -269,8 +269,8 @@ public:
|
|||||||
Vector modelSpaceOffset; // used only for globaly entity brushes modelled in different coordinate systems.
|
Vector modelSpaceOffset; // used only for globaly entity brushes modelled in different coordinate systems.
|
||||||
|
|
||||||
private:
|
private:
|
||||||
int tableCount; // Number of elements in the entity table
|
int m_iTableCount; // Number of elements in the entity table
|
||||||
entitytable_t *pTable; // Array of entitytable_t elements (1 for each entity)
|
entitytable_t *m_pTable; // Array of entitytable_t elements (1 for each entity)
|
||||||
CBaseEntity *m_pCurrentEntity; // only valid during the save functions of this entity, NULL otherwise
|
CBaseEntity *m_pCurrentEntity; // only valid during the save functions of this entity, NULL otherwise
|
||||||
|
|
||||||
|
|
||||||
|
@ -51,7 +51,7 @@ public:
|
|||||||
m_pCachedRenderData = NULL;
|
m_pCachedRenderData = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
~CBaseCommand()
|
virtual ~CBaseCommand()
|
||||||
{
|
{
|
||||||
ReleaseCachedRenderData();
|
ReleaseCachedRenderData();
|
||||||
}
|
}
|
||||||
|
@ -508,7 +508,7 @@ void CSentence::ParseWords( CUtlBuffer& buf )
|
|||||||
// Parse phoneme
|
// Parse phoneme
|
||||||
int code;
|
int code;
|
||||||
char phonemename[ 256 ];
|
char phonemename[ 256 ];
|
||||||
float start, end;
|
float startLocl, endLocl;
|
||||||
float volume;
|
float volume;
|
||||||
|
|
||||||
code = atoi( token );
|
code = atoi( token );
|
||||||
@ -516,9 +516,9 @@ void CSentence::ParseWords( CUtlBuffer& buf )
|
|||||||
buf.GetString( token );
|
buf.GetString( token );
|
||||||
Q_strncpy( phonemename, token, sizeof( phonemename ) );
|
Q_strncpy( phonemename, token, sizeof( phonemename ) );
|
||||||
buf.GetString( token );
|
buf.GetString( token );
|
||||||
start = atof( token );
|
startLocl = atof( token );
|
||||||
buf.GetString( token );
|
buf.GetString( token );
|
||||||
end = atof( token );
|
endLocl = atof( token );
|
||||||
buf.GetString( token );
|
buf.GetString( token );
|
||||||
volume = atof( token );
|
volume = atof( token );
|
||||||
|
|
||||||
@ -526,8 +526,8 @@ void CSentence::ParseWords( CUtlBuffer& buf )
|
|||||||
assert( pt );
|
assert( pt );
|
||||||
pt->SetPhonemeCode( code );
|
pt->SetPhonemeCode( code );
|
||||||
pt->SetTag( phonemename );
|
pt->SetTag( phonemename );
|
||||||
pt->SetStartTime( start );
|
pt->SetStartTime( startLocl );
|
||||||
pt->SetEndTime( end );
|
pt->SetEndTime( endLocl );
|
||||||
|
|
||||||
AddPhonemeTag( wt, pt );
|
AddPhonemeTag( wt, pt );
|
||||||
}
|
}
|
||||||
@ -1304,9 +1304,9 @@ void CSentence::Append( float starttime, const CSentence& src )
|
|||||||
|
|
||||||
// Offset times
|
// Offset times
|
||||||
int c = newWord->m_Phonemes.Count();
|
int c = newWord->m_Phonemes.Count();
|
||||||
for ( int i = 0; i < c; ++i )
|
for ( int j = 0; j < c; ++j )
|
||||||
{
|
{
|
||||||
CPhonemeTag *tag = newWord->m_Phonemes[ i ];
|
CPhonemeTag *tag = newWord->m_Phonemes[ j ];
|
||||||
tag->AddStartTime( starttime );
|
tag->AddStartTime( starttime );
|
||||||
tag->AddEndTime( starttime );
|
tag->AddEndTime( starttime );
|
||||||
}
|
}
|
||||||
|
@ -516,7 +516,7 @@ void studiohdr_t::SetAttachmentBone( int iAttachment, int iBone )
|
|||||||
// Purpose:
|
// Purpose:
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
char *studiohdr_t::pszNodeName( int iNode )
|
const char *studiohdr_t::pszNodeName( int iNode )
|
||||||
{
|
{
|
||||||
if (numincludemodels == 0)
|
if (numincludemodels == 0)
|
||||||
{
|
{
|
||||||
@ -565,7 +565,7 @@ int studiohdr_t::GetActivityListVersion( void )
|
|||||||
virtualmodel_t *pVModel = (virtualmodel_t *)GetVirtualModel();
|
virtualmodel_t *pVModel = (virtualmodel_t *)GetVirtualModel();
|
||||||
Assert( pVModel );
|
Assert( pVModel );
|
||||||
|
|
||||||
int version = activitylistversion;
|
int versionLocl = activitylistversion;
|
||||||
|
|
||||||
int i;
|
int i;
|
||||||
for (i = 1; i < pVModel->m_group.Count(); i++)
|
for (i = 1; i < pVModel->m_group.Count(); i++)
|
||||||
@ -575,15 +575,15 @@ int studiohdr_t::GetActivityListVersion( void )
|
|||||||
|
|
||||||
Assert( pStudioHdr );
|
Assert( pStudioHdr );
|
||||||
|
|
||||||
version = min( version, pStudioHdr->activitylistversion );
|
versionLocl = min( versionLocl, pStudioHdr->activitylistversion );
|
||||||
}
|
}
|
||||||
|
|
||||||
return version;
|
return versionLocl;
|
||||||
}
|
}
|
||||||
|
|
||||||
void studiohdr_t::SetActivityListVersion( int version ) const
|
void studiohdr_t::SetActivityListVersion( int iVersion ) const
|
||||||
{
|
{
|
||||||
activitylistversion = version;
|
activitylistversion = iVersion;
|
||||||
|
|
||||||
if (numincludemodels == 0)
|
if (numincludemodels == 0)
|
||||||
{
|
{
|
||||||
@ -601,7 +601,7 @@ void studiohdr_t::SetActivityListVersion( int version ) const
|
|||||||
|
|
||||||
Assert( pStudioHdr );
|
Assert( pStudioHdr );
|
||||||
|
|
||||||
pStudioHdr->SetActivityListVersion( version );
|
pStudioHdr->SetActivityListVersion( iVersion );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1152,7 +1152,7 @@ void CStudioHdr::SetAttachmentBone( int iAttachment, int iBone )
|
|||||||
// Purpose:
|
// Purpose:
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
char *CStudioHdr::pszNodeName( int iNode )
|
const char *CStudioHdr::pszNodeName( int iNode )
|
||||||
{
|
{
|
||||||
if (m_pVModel == NULL)
|
if (m_pVModel == NULL)
|
||||||
{
|
{
|
||||||
@ -1433,9 +1433,9 @@ void CStudioHdr::RunFlexRules( const float *src, float *dest )
|
|||||||
{
|
{
|
||||||
int m = pops->d.index;
|
int m = pops->d.index;
|
||||||
int km = k - m;
|
int km = k - m;
|
||||||
for ( int i = km + 1; i < k; ++i )
|
for ( int l = km + 1; l < k; ++l )
|
||||||
{
|
{
|
||||||
stack[ km ] *= stack[ i ];
|
stack[ km ] *= stack[ l ];
|
||||||
}
|
}
|
||||||
k = k - m + 1;
|
k = k - m + 1;
|
||||||
}
|
}
|
||||||
@ -1445,9 +1445,9 @@ void CStudioHdr::RunFlexRules( const float *src, float *dest )
|
|||||||
int m = pops->d.index;
|
int m = pops->d.index;
|
||||||
int km = k - m;
|
int km = k - m;
|
||||||
float dv = stack[ km ];
|
float dv = stack[ km ];
|
||||||
for ( int i = km + 1; i < k; ++i )
|
for ( int l = km + 1; l < k; ++l )
|
||||||
{
|
{
|
||||||
dv *= stack[ i ];
|
dv *= stack[ l ];
|
||||||
}
|
}
|
||||||
stack[ km - 1 ] *= 1.0f - dv;
|
stack[ km - 1 ] *= 1.0f - dv;
|
||||||
k -= m;
|
k -= m;
|
||||||
@ -1701,7 +1701,7 @@ void CStudioHdr::CActivityToSequenceMapping::Initialize( CStudioHdr * __restrict
|
|||||||
// This stack may potentially grow very large; so if you have problems with it,
|
// This stack may potentially grow very large; so if you have problems with it,
|
||||||
// go to a utlmap or similar structure.
|
// go to a utlmap or similar structure.
|
||||||
unsigned int allocsize = (topActivity + 1) * sizeof(int);
|
unsigned int allocsize = (topActivity + 1) * sizeof(int);
|
||||||
#define ALIGN_VALUE( val, alignment ) ( ( val + alignment - 1 ) & ~( alignment - 1 ) ) // need macro for constant expression
|
//#define ALIGN_VALUE( val, alignment ) ( ( val + alignment - 1 ) & ~( alignment - 1 ) ) // need macro for constant expression
|
||||||
allocsize = ALIGN_VALUE(allocsize,16);
|
allocsize = ALIGN_VALUE(allocsize,16);
|
||||||
int * __restrict seqsPerAct = static_cast<int *>(stackalloc(allocsize));
|
int * __restrict seqsPerAct = static_cast<int *>(stackalloc(allocsize));
|
||||||
memset(seqsPerAct, 0, allocsize);
|
memset(seqsPerAct, 0, allocsize);
|
||||||
|
@ -2137,7 +2137,7 @@ struct studiohdr_t
|
|||||||
int GetSequenceActivity( int iSequence );
|
int GetSequenceActivity( int iSequence );
|
||||||
void SetSequenceActivity( int iSequence, int iActivity );
|
void SetSequenceActivity( int iSequence, int iActivity );
|
||||||
int GetActivityListVersion( void );
|
int GetActivityListVersion( void );
|
||||||
void SetActivityListVersion( int version ) const;
|
void SetActivityListVersion( int iVersion ) const;
|
||||||
int GetEventListVersion( void );
|
int GetEventListVersion( void );
|
||||||
void SetEventListVersion( int version );
|
void SetEventListVersion( int version );
|
||||||
|
|
||||||
@ -2185,7 +2185,7 @@ struct studiohdr_t
|
|||||||
//public:
|
//public:
|
||||||
int EntryNode( int iSequence );
|
int EntryNode( int iSequence );
|
||||||
int ExitNode( int iSequence );
|
int ExitNode( int iSequence );
|
||||||
char *pszNodeName( int iNode );
|
const char *pszNodeName( int iNode );
|
||||||
int GetTransition( int iFrom, int iTo ) const;
|
int GetTransition( int iFrom, int iTo ) const;
|
||||||
|
|
||||||
int numflexdesc;
|
int numflexdesc;
|
||||||
@ -2395,7 +2395,7 @@ public:
|
|||||||
|
|
||||||
int EntryNode( int iSequence );
|
int EntryNode( int iSequence );
|
||||||
int ExitNode( int iSequence );
|
int ExitNode( int iSequence );
|
||||||
char *pszNodeName( int iNode );
|
const char *pszNodeName( int iNode );
|
||||||
// FIXME: where should this one be?
|
// FIXME: where should this one be?
|
||||||
int GetTransition( int iFrom, int iTo ) const;
|
int GetTransition( int iFrom, int iTo ) const;
|
||||||
|
|
||||||
|
@ -15,7 +15,9 @@
|
|||||||
#include "basetypes.h"
|
#include "basetypes.h"
|
||||||
#include "dbgflag.h"
|
#include "dbgflag.h"
|
||||||
#include "platform.h"
|
#include "platform.h"
|
||||||
|
#if _MSC_VER < 1900
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
|
#endif
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
@ -247,10 +249,10 @@ DBG_INTERFACE struct SDL_Window * GetAssertDialogParent();
|
|||||||
if (!(_exp)) \
|
if (!(_exp)) \
|
||||||
{ \
|
{ \
|
||||||
_SpewInfo( SPEW_ASSERT, __TFILE__, __LINE__ ); \
|
_SpewInfo( SPEW_ASSERT, __TFILE__, __LINE__ ); \
|
||||||
SpewRetval_t ret = _SpewMessage("%s", static_cast<const char*>( _msg )); \
|
SpewRetval_t _ret = _SpewMessage("%s", static_cast<const char*>( _msg )); \
|
||||||
CallAssertFailedNotifyFunc( __TFILE__, __LINE__, _msg ); \
|
CallAssertFailedNotifyFunc( __TFILE__, __LINE__, _msg ); \
|
||||||
_executeExp; \
|
_executeExp; \
|
||||||
if ( ret == SPEW_DEBUGGER) \
|
if ( _ret == SPEW_DEBUGGER) \
|
||||||
{ \
|
{ \
|
||||||
if ( !ShouldUseNewAssertDialog() || DoNewAssertDialog( __TFILE__, __LINE__, _msg ) ) \
|
if ( !ShouldUseNewAssertDialog() || DoNewAssertDialog( __TFILE__, __LINE__, _msg ) ) \
|
||||||
{ \
|
{ \
|
||||||
|
@ -382,7 +382,12 @@ public:
|
|||||||
|
|
||||||
#pragma warning(disable:4290)
|
#pragma warning(disable:4290)
|
||||||
#pragma warning(push)
|
#pragma warning(push)
|
||||||
|
|
||||||
|
#if _MSC_VER < 1900
|
||||||
#include <typeinfo.h>
|
#include <typeinfo.h>
|
||||||
|
#else
|
||||||
|
#include <typeinfo>
|
||||||
|
#endif
|
||||||
|
|
||||||
// MEM_DEBUG_CLASSNAME is opt-in.
|
// MEM_DEBUG_CLASSNAME is opt-in.
|
||||||
// Note: typeid().name() is not threadsafe, so if the project needs to access it in multiple threads
|
// Note: typeid().name() is not threadsafe, so if the project needs to access it in multiple threads
|
||||||
|
@ -37,7 +37,7 @@
|
|||||||
#include "commonmacros.h"
|
#include "commonmacros.h"
|
||||||
#include "memalloc.h"
|
#include "memalloc.h"
|
||||||
|
|
||||||
#if defined(USE_MEM_DEBUG)
|
#if USE_MEM_DEBUG
|
||||||
#if defined( POSIX )
|
#if defined( POSIX )
|
||||||
|
|
||||||
#define _NORMAL_BLOCK 1
|
#define _NORMAL_BLOCK 1
|
||||||
@ -91,7 +91,7 @@ inline void *MemAlloc_InlineCallocMemset( void *pMem, size_t nCount, size_t nEle
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define calloc(c, s) MemAlloc_InlineCallocMemset(malloc(c*s), c, s)
|
#define calloc(c, s) MemAlloc_InlineCallocMemset(malloc((c)*(s)), (c), (s))
|
||||||
#define free(p) g_pMemAlloc->Free( p )
|
#define free(p) g_pMemAlloc->Free( p )
|
||||||
#define _msize(p) g_pMemAlloc->GetSize( p )
|
#define _msize(p) g_pMemAlloc->GetSize( p )
|
||||||
#define _expand(p, s) _expand_NoLongerSupported(p, s)
|
#define _expand(p, s) _expand_NoLongerSupported(p, s)
|
||||||
@ -99,7 +99,7 @@ inline void *MemAlloc_InlineCallocMemset( void *pMem, size_t nCount, size_t nEle
|
|||||||
|
|
||||||
// --------------------------------------------------------
|
// --------------------------------------------------------
|
||||||
// Debug path
|
// Debug path
|
||||||
#if defined(USE_MEM_DEBUG)
|
#if USE_MEM_DEBUG
|
||||||
|
|
||||||
#define malloc(s) g_pMemAlloc->Alloc( s, __FILE__, __LINE__)
|
#define malloc(s) g_pMemAlloc->Alloc( s, __FILE__, __LINE__)
|
||||||
#define realloc(p, s) g_pMemAlloc->Realloc( p, s, __FILE__, __LINE__ )
|
#define realloc(p, s) g_pMemAlloc->Realloc( p, s, __FILE__, __LINE__ )
|
||||||
@ -231,7 +231,7 @@ inline wchar_t *MemAlloc_WcStrDup(const wchar_t *pString)
|
|||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
#if defined(USE_MEM_DEBUG)
|
#if USE_MEM_DEBUG
|
||||||
#ifndef _STATIC_LINKED
|
#ifndef _STATIC_LINKED
|
||||||
#pragma message ("Note: file includes crtdbg.h directly, therefore will cannot use memdbgon.h in non-debug build")
|
#pragma message ("Note: file includes crtdbg.h directly, therefore will cannot use memdbgon.h in non-debug build")
|
||||||
#else
|
#else
|
||||||
|
@ -40,9 +40,17 @@
|
|||||||
#define __cdecl
|
#define __cdecl
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#undef _malloc_dbg
|
||||||
|
#undef _calloc_dbg
|
||||||
|
#undef _free_dbg
|
||||||
|
#undef _CrtSetCheckCount
|
||||||
|
#undef _CrtGetCheckCount
|
||||||
|
#undef _CrtSetDebugFillThreshold
|
||||||
|
|
||||||
#if defined( _WIN32 ) && !defined( _X360 )
|
#if defined( _WIN32 ) && !defined( _X360 )
|
||||||
const char *MakeModuleFileName()
|
const char *MakeModuleFileName()
|
||||||
{
|
{
|
||||||
|
#if _MSC_VER < 1900
|
||||||
if ( g_pMemAlloc->IsDebugHeap() )
|
if ( g_pMemAlloc->IsDebugHeap() )
|
||||||
{
|
{
|
||||||
char *pszModuleName = (char *)HeapAlloc( GetProcessHeap(), 0, MAX_PATH ); // small leak, debug only
|
char *pszModuleName = (char *)HeapAlloc( GetProcessHeap(), 0, MAX_PATH ); // small leak, debug only
|
||||||
@ -65,27 +73,36 @@ const char *MakeModuleFileName()
|
|||||||
|
|
||||||
return pszModuleName;
|
return pszModuleName;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void *AllocUnattributed( size_t nSize )
|
static void *AllocUnattributed( size_t nSize )
|
||||||
{
|
{
|
||||||
|
#if _MSC_VER < 1900
|
||||||
static const char *pszOwner = MakeModuleFileName();
|
static const char *pszOwner = MakeModuleFileName();
|
||||||
|
|
||||||
if ( !pszOwner )
|
if ( !pszOwner )
|
||||||
return g_pMemAlloc->Alloc(nSize);
|
return g_pMemAlloc->Alloc(nSize);
|
||||||
else
|
else
|
||||||
return g_pMemAlloc->Alloc(nSize, pszOwner, 0);
|
return g_pMemAlloc->Alloc(nSize, pszOwner, 0);
|
||||||
|
#else
|
||||||
|
return g_pMemAlloc->Alloc(nSize);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
static void *ReallocUnattributed( void *pMem, size_t nSize )
|
static void *ReallocUnattributed( void *pMem, size_t nSize )
|
||||||
{
|
{
|
||||||
|
#if _MSC_VER < 1900
|
||||||
static const char *pszOwner = MakeModuleFileName();
|
static const char *pszOwner = MakeModuleFileName();
|
||||||
|
|
||||||
if ( !pszOwner )
|
if ( !pszOwner )
|
||||||
return g_pMemAlloc->Realloc(pMem, nSize);
|
return g_pMemAlloc->Realloc(pMem, nSize);
|
||||||
else
|
else
|
||||||
return g_pMemAlloc->Realloc(pMem, nSize, pszOwner, 0);
|
return g_pMemAlloc->Realloc(pMem, nSize, pszOwner, 0);
|
||||||
|
#else
|
||||||
|
return g_pMemAlloc->Realloc(pMem, nSize);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#else
|
#else
|
||||||
@ -108,6 +125,9 @@ inline void *ReallocUnattributed( void *pMem, size_t nSize )
|
|||||||
// this magic only works under win32
|
// this magic only works under win32
|
||||||
// under linux this malloc() overrides the libc malloc() and so we
|
// under linux this malloc() overrides the libc malloc() and so we
|
||||||
// end up in a recursion (as g_pMemAlloc->Alloc() calls malloc)
|
// end up in a recursion (as g_pMemAlloc->Alloc() calls malloc)
|
||||||
|
#if _MSC_VER >= 1900 && !defined(_CRTNOALIAS)
|
||||||
|
#define _CRTNOALIAS
|
||||||
|
#endif
|
||||||
#if _MSC_VER >= 1400
|
#if _MSC_VER >= 1400
|
||||||
#define ALLOC_CALL _CRTNOALIAS _CRTRESTRICT
|
#define ALLOC_CALL _CRTNOALIAS _CRTRESTRICT
|
||||||
#define FREE_CALL _CRTNOALIAS
|
#define FREE_CALL _CRTNOALIAS
|
||||||
@ -155,6 +175,11 @@ void* __cdecl _malloc_base( size_t nSize )
|
|||||||
{
|
{
|
||||||
return AllocUnattributed( nSize );
|
return AllocUnattributed( nSize );
|
||||||
}
|
}
|
||||||
|
#elif _MSC_VER >= 1900
|
||||||
|
__declspec(restrict) void* _malloc_base(size_t nSize)
|
||||||
|
{
|
||||||
|
return AllocUnattributed(nSize);
|
||||||
|
}
|
||||||
#else
|
#else
|
||||||
void *_malloc_base( size_t nSize )
|
void *_malloc_base( size_t nSize )
|
||||||
{
|
{
|
||||||
@ -162,24 +187,47 @@ void *_malloc_base( size_t nSize )
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if _MSC_VER >= 1900
|
||||||
|
__declspec(restrict) void* _calloc_base(size_t count, size_t nSize)
|
||||||
|
{
|
||||||
|
void* pMem = AllocUnattributed(count * nSize);
|
||||||
|
memset(pMem, 0, count * nSize);
|
||||||
|
return pMem;
|
||||||
|
}
|
||||||
|
#else
|
||||||
void *_calloc_base( size_t nSize )
|
void *_calloc_base( size_t nSize )
|
||||||
{
|
{
|
||||||
void *pMem = AllocUnattributed( nSize );
|
void *pMem = AllocUnattributed( nSize );
|
||||||
memset(pMem, 0, nSize);
|
memset(pMem, 0, nSize);
|
||||||
return pMem;
|
return pMem;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if _MSC_VER >= 1900
|
||||||
|
__declspec(restrict) void* _realloc_base(void* pMem, size_t nSize)
|
||||||
|
{
|
||||||
|
return ReallocUnattributed(pMem, nSize);
|
||||||
|
}
|
||||||
|
#else
|
||||||
void *_realloc_base( void *pMem, size_t nSize )
|
void *_realloc_base( void *pMem, size_t nSize )
|
||||||
{
|
{
|
||||||
return ReallocUnattributed( pMem, nSize );
|
return ReallocUnattributed( pMem, nSize );
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if _MSC_VER >= 1900
|
||||||
|
__declspec(restrict) void* _recalloc_base(void* pMem, size_t count, size_t nSize)
|
||||||
|
{
|
||||||
|
return _recalloc(pMem, count, nSize);
|
||||||
|
}
|
||||||
|
#else
|
||||||
void *_recalloc_base( void *pMem, size_t nSize )
|
void *_recalloc_base( void *pMem, size_t nSize )
|
||||||
{
|
{
|
||||||
void *pMemOut = ReallocUnattributed( pMem, nSize );
|
void *pMemOut = ReallocUnattributed( pMem, nSize );
|
||||||
memset(pMemOut, 0, nSize);
|
memset(pMemOut, 0, nSize);
|
||||||
return pMemOut;
|
return pMemOut;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
void _free_base( void *pMem )
|
void _free_base( void *pMem )
|
||||||
{
|
{
|
||||||
@ -200,7 +248,11 @@ void * __cdecl _malloc_crt(size_t size)
|
|||||||
|
|
||||||
void * __cdecl _calloc_crt(size_t count, size_t size)
|
void * __cdecl _calloc_crt(size_t count, size_t size)
|
||||||
{
|
{
|
||||||
|
#if _MSC_VER >= 1900
|
||||||
|
return _calloc_base(count, size);
|
||||||
|
#else
|
||||||
return _calloc_base( count * size );
|
return _calloc_base( count * size );
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void * __cdecl _realloc_crt(void *ptr, size_t size)
|
void * __cdecl _realloc_crt(void *ptr, size_t size)
|
||||||
@ -210,14 +262,23 @@ void * __cdecl _realloc_crt(void *ptr, size_t size)
|
|||||||
|
|
||||||
void * __cdecl _recalloc_crt(void *ptr, size_t count, size_t size)
|
void * __cdecl _recalloc_crt(void *ptr, size_t count, size_t size)
|
||||||
{
|
{
|
||||||
|
#if _MSC_VER >= 1900
|
||||||
|
return _recalloc_base(ptr, count, size);
|
||||||
|
#else
|
||||||
return _recalloc_base( ptr, size * count );
|
return _recalloc_base( ptr, size * count );
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
ALLOC_CALL void * __cdecl _recalloc ( void * memblock, size_t count, size_t size )
|
ALLOC_CALL void * __cdecl _recalloc ( void * memblock, size_t count, size_t size )
|
||||||
{
|
{
|
||||||
void *pMem = ReallocUnattributed( memblock, size * count );
|
const size_t oldSize = _msize(memblock);
|
||||||
memset( pMem, 0, size * count );
|
const size_t newSize = count * size;
|
||||||
return pMem;
|
void* pMemOut = ReallocUnattributed(memblock, newSize);
|
||||||
|
|
||||||
|
if (newSize > oldSize)
|
||||||
|
memset(((char*)pMemOut) + oldSize, 0, newSize - oldSize);
|
||||||
|
|
||||||
|
return pMemOut;
|
||||||
}
|
}
|
||||||
|
|
||||||
size_t _msize_base( void *pMem )
|
size_t _msize_base( void *pMem )
|
||||||
@ -485,6 +546,7 @@ void *__cdecl _calloc_dbg_impl( size_t nNum, size_t nSize, int nBlockUse,
|
|||||||
return _calloc_dbg( nNum, nSize, nBlockUse, szFileName, nLine );
|
return _calloc_dbg( nNum, nSize, nBlockUse, szFileName, nLine );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef DEBUG
|
||||||
void *__cdecl _realloc_dbg( void *pMem, size_t nNewSize, int nBlockUse,
|
void *__cdecl _realloc_dbg( void *pMem, size_t nNewSize, int nBlockUse,
|
||||||
const char *pFileName, int nLine )
|
const char *pFileName, int nLine )
|
||||||
{
|
{
|
||||||
@ -498,6 +560,7 @@ void *__cdecl _expand_dbg( void *pMem, size_t nNewSize, int nBlockUse,
|
|||||||
Assert( 0 );
|
Assert( 0 );
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
void __cdecl _free_dbg( void *pMem, int nBlockUse )
|
void __cdecl _free_dbg( void *pMem, int nBlockUse )
|
||||||
{
|
{
|
||||||
@ -505,6 +568,7 @@ void __cdecl _free_dbg( void *pMem, int nBlockUse )
|
|||||||
g_pMemAlloc->Free(pMem);
|
g_pMemAlloc->Free(pMem);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef DEBUG
|
||||||
size_t __cdecl _msize_dbg( void *pMem, int nBlockUse )
|
size_t __cdecl _msize_dbg( void *pMem, int nBlockUse )
|
||||||
{
|
{
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
@ -514,6 +578,7 @@ size_t __cdecl _msize_dbg( void *pMem, int nBlockUse )
|
|||||||
return 0;
|
return 0;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
@ -614,6 +679,7 @@ ALLOC_CALL void * __cdecl _aligned_offset_recalloc( void * memblock, size_t coun
|
|||||||
extern "C"
|
extern "C"
|
||||||
{
|
{
|
||||||
|
|
||||||
|
#ifdef DEBUG
|
||||||
int _CrtDumpMemoryLeaks(void)
|
int _CrtDumpMemoryLeaks(void)
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
@ -628,11 +694,25 @@ int _CrtSetDbgFlag( int nNewFlag )
|
|||||||
{
|
{
|
||||||
return g_pMemAlloc->CrtSetDbgFlag( nNewFlag );
|
return g_pMemAlloc->CrtSetDbgFlag( nNewFlag );
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
// 64-bit port.
|
// 64-bit port.
|
||||||
#define AFNAME(var) __p_ ## var
|
#define AFNAME(var) __p_ ## var
|
||||||
#define AFRET(var) &var
|
#define AFRET(var) &var
|
||||||
|
|
||||||
|
#if _MSC_VER >= 1900
|
||||||
|
int* __cdecl __p__crtDbgFlag(void)
|
||||||
|
{
|
||||||
|
static int dummy = _CRTDBG_ALLOC_MEM_DF | _CRTDBG_CHECK_ALWAYS_DF;
|
||||||
|
return &dummy;
|
||||||
|
}
|
||||||
|
|
||||||
|
long* __cdecl __p__crtBreakAlloc(void)
|
||||||
|
{
|
||||||
|
static long dummy = 0;
|
||||||
|
return &dummy;
|
||||||
|
}
|
||||||
|
#else
|
||||||
int _crtDbgFlag = _CRTDBG_ALLOC_MEM_DF;
|
int _crtDbgFlag = _CRTDBG_ALLOC_MEM_DF;
|
||||||
int* AFNAME(_crtDbgFlag)(void)
|
int* AFNAME(_crtDbgFlag)(void)
|
||||||
{
|
{
|
||||||
@ -644,12 +724,14 @@ long* AFNAME(_crtBreakAlloc) (void)
|
|||||||
{
|
{
|
||||||
return AFRET(_crtBreakAlloc);
|
return AFRET(_crtBreakAlloc);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
void __cdecl _CrtSetDbgBlockType( void *pMem, int nBlockUse )
|
void __cdecl _CrtSetDbgBlockType( void *pMem, int nBlockUse )
|
||||||
{
|
{
|
||||||
DebuggerBreak();
|
DebuggerBreak();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef DEBUG
|
||||||
_CRT_ALLOC_HOOK __cdecl _CrtSetAllocHook( _CRT_ALLOC_HOOK pfnNewHook )
|
_CRT_ALLOC_HOOK __cdecl _CrtSetAllocHook( _CRT_ALLOC_HOOK pfnNewHook )
|
||||||
{
|
{
|
||||||
DebuggerBreak();
|
DebuggerBreak();
|
||||||
@ -710,13 +792,14 @@ void __cdecl _CrtDoForAllClientObjects( void (*pfn)(void *, void *), void * pCon
|
|||||||
{
|
{
|
||||||
DebuggerBreak();
|
DebuggerBreak();
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
// Methods in dbgrpt.cpp
|
// Methods in dbgrpt.cpp
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
long _crtAssertBusy = -1;
|
long _crtAssertBusy = -1;
|
||||||
|
|
||||||
|
#ifdef DEBUG
|
||||||
int __cdecl _CrtSetReportMode( int nReportType, int nReportMode )
|
int __cdecl _CrtSetReportMode( int nReportType, int nReportMode )
|
||||||
{
|
{
|
||||||
return g_pMemAlloc->CrtSetReportMode( nReportType, nReportMode );
|
return g_pMemAlloc->CrtSetReportMode( nReportType, nReportMode );
|
||||||
@ -731,6 +814,7 @@ _CRT_REPORT_HOOK __cdecl _CrtSetReportHook( _CRT_REPORT_HOOK pfnNewHook )
|
|||||||
{
|
{
|
||||||
return (_CRT_REPORT_HOOK)g_pMemAlloc->CrtSetReportHook( pfnNewHook );
|
return (_CRT_REPORT_HOOK)g_pMemAlloc->CrtSetReportHook( pfnNewHook );
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
int __cdecl _CrtDbgReport( int nRptType, const char * szFile,
|
int __cdecl _CrtDbgReport( int nRptType, const char * szFile,
|
||||||
int nLine, const char * szModule, const char * szFormat, ... )
|
int nLine, const char * szModule, const char * szFormat, ... )
|
||||||
@ -863,7 +947,7 @@ ErrorHandlerRegistrar::ErrorHandlerRegistrar()
|
|||||||
_set_invalid_parameter_handler( VInvalidParameterHandler );
|
_set_invalid_parameter_handler( VInvalidParameterHandler );
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined( _DEBUG )
|
#if 0 // defined( _DEBUG )
|
||||||
|
|
||||||
// wrapper which passes no debug info; not available in debug
|
// wrapper which passes no debug info; not available in debug
|
||||||
#ifndef SUPPRESS_INVALID_PARAMETER_NO_INFO
|
#ifndef SUPPRESS_INVALID_PARAMETER_NO_INFO
|
||||||
@ -887,21 +971,41 @@ int __cdecl __crtMessageWindowW( int nRptType, const wchar_t * szFile, const wch
|
|||||||
int __cdecl _CrtDbgReportV( int nRptType, const wchar_t *szFile, int nLine,
|
int __cdecl _CrtDbgReportV( int nRptType, const wchar_t *szFile, int nLine,
|
||||||
const wchar_t *szModule, const wchar_t *szFormat, va_list arglist )
|
const wchar_t *szModule, const wchar_t *szFormat, va_list arglist )
|
||||||
{
|
{
|
||||||
Assert(0);
|
wchar_t buffer[256];
|
||||||
|
vswprintf(buffer, 256, szFormat, arglist);
|
||||||
|
DevWarning("%ls", buffer);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int __cdecl _CrtDbgReportW( int nRptType, const wchar_t *szFile, int nLine,
|
int __cdecl _CrtDbgReportW( int nRptType, const wchar_t *szFile, int nLine,
|
||||||
const wchar_t *szModule, const wchar_t *szFormat, ...)
|
const wchar_t *szModule, const wchar_t *szFormat, ...)
|
||||||
{
|
{
|
||||||
Assert(0);
|
wchar_t buffer[256];
|
||||||
|
va_list args;
|
||||||
|
va_start(args, szFormat);
|
||||||
|
vswprintf(buffer, 256, szFormat, args);
|
||||||
|
va_end(args);
|
||||||
|
DevWarning("%ls", buffer);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if _MSC_VER >= 1900
|
||||||
|
int __cdecl _VCrtDbgReportA(int nRptType, void* returnAddress, const char* szFile, int nLine,
|
||||||
|
const char* szModule, const char* szFormat, va_list arglist)
|
||||||
|
#else
|
||||||
int __cdecl _VCrtDbgReportA( int nRptType, const wchar_t * szFile, int nLine,
|
int __cdecl _VCrtDbgReportA( int nRptType, const wchar_t * szFile, int nLine,
|
||||||
const wchar_t * szModule, const wchar_t * szFormat, va_list arglist )
|
const wchar_t * szModule, const wchar_t * szFormat, va_list arglist )
|
||||||
|
#endif
|
||||||
{
|
{
|
||||||
Assert(0);
|
#if _MSC_VER >= 1900
|
||||||
|
char buffer[256];
|
||||||
|
vsnprintf(buffer, 256, szFormat, arglist);
|
||||||
|
DevWarning("%s", buffer);
|
||||||
|
#else
|
||||||
|
wchar_t buffer[256];
|
||||||
|
vswprintf(buffer, 256, szFormat, arglist);
|
||||||
|
DevWarning("%ls", buffer);
|
||||||
|
#endif // _MSC_VER >= 1900
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -927,13 +1031,12 @@ extern "C" int __cdecl _CrtGetCheckCount( void )
|
|||||||
return __crtDebugCheckCount;
|
return __crtDebugCheckCount;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef DEBUG
|
||||||
// aligned offset debug
|
// aligned offset debug
|
||||||
extern "C" void * __cdecl _aligned_offset_recalloc_dbg( void * memblock, size_t count, size_t size, size_t align, size_t offset, const char * f_name, int line_n )
|
extern "C" void * __cdecl _aligned_offset_recalloc_dbg( void * memblock, size_t count, size_t size, size_t align, size_t offset, const char * f_name, int line_n )
|
||||||
{
|
{
|
||||||
Assert( IsPC() || 0 );
|
Assert( IsPC() || 0 );
|
||||||
void *pMem = ReallocUnattributed( memblock, size * count );
|
return ReallocUnattributed(memblock, size * count);
|
||||||
memset( pMem, 0, size * count );
|
|
||||||
return pMem;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
extern "C" void * __cdecl _aligned_recalloc_dbg( void *memblock, size_t count, size_t size, size_t align, const char * f_name, int line_n )
|
extern "C" void * __cdecl _aligned_recalloc_dbg( void *memblock, size_t count, size_t size, size_t align, const char * f_name, int line_n )
|
||||||
@ -950,12 +1053,16 @@ _CRT_REPORT_HOOK __cdecl _CrtGetReportHook( void )
|
|||||||
{
|
{
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
#endif // DEBUG
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef DEBUG
|
||||||
int __cdecl _CrtReportBlockType(const void * pUserData)
|
int __cdecl _CrtReportBlockType(const void * pUserData)
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
} // end extern "C"
|
} // end extern "C"
|
||||||
@ -995,14 +1102,14 @@ void * __cdecl _heap_alloc_dbg( size_t nSize, int nBlockUse, const char * szFile
|
|||||||
static void * __cdecl realloc_help( void * pUserData, size_t * pnNewSize, int nBlockUse,const char * szFileName,
|
static void * __cdecl realloc_help( void * pUserData, size_t * pnNewSize, int nBlockUse,const char * szFileName,
|
||||||
int nLine, int fRealloc )
|
int nLine, int fRealloc )
|
||||||
{
|
{
|
||||||
assert(0); // Shouldn't be needed
|
Assert(0); // Shouldn't be needed
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
static void * __cdecl realloc_help( void * pUserData, size_t nNewSize, int nBlockUse, const char * szFileName,
|
static void * __cdecl realloc_help( void * pUserData, size_t nNewSize, int nBlockUse, const char * szFileName,
|
||||||
int nLine, int fRealloc)
|
int nLine, int fRealloc)
|
||||||
{
|
{
|
||||||
assert(0); // Shouldn't be needed
|
Assert(0); // Shouldn't be needed
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@ -1018,11 +1125,13 @@ void __cdecl _free_dbg_nolock( void * pUserData, int nBlockUse)
|
|||||||
_free_dbg(pUserData, 0);
|
_free_dbg(pUserData, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef DEBUG
|
||||||
_CRT_ALLOC_HOOK __cdecl _CrtGetAllocHook ( void)
|
_CRT_ALLOC_HOOK __cdecl _CrtGetAllocHook ( void)
|
||||||
{
|
{
|
||||||
assert(0);
|
Assert(0);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
static int __cdecl CheckBytes( unsigned char * pb, unsigned char bCheck, size_t nSize)
|
static int __cdecl CheckBytes( unsigned char * pb, unsigned char bCheck, size_t nSize)
|
||||||
{
|
{
|
||||||
@ -1030,12 +1139,13 @@ static int __cdecl CheckBytes( unsigned char * pb, unsigned char bCheck, size_t
|
|||||||
return bOkay;
|
return bOkay;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef DEBUG
|
||||||
_CRT_DUMP_CLIENT __cdecl _CrtGetDumpClient ( void)
|
_CRT_DUMP_CLIENT __cdecl _CrtGetDumpClient ( void)
|
||||||
{
|
{
|
||||||
assert(0);
|
Assert(0);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#if _MSC_VER >= 1400
|
#if _MSC_VER >= 1400
|
||||||
static void __cdecl _printMemBlockData( _locale_t plocinfo, _CrtMemBlockHeader * pHead)
|
static void __cdecl _printMemBlockData( _locale_t plocinfo, _CrtMemBlockHeader * pHead)
|
||||||
@ -1046,6 +1156,8 @@ static void __cdecl _CrtMemDumpAllObjectsSince_stat( const _CrtMemState * state,
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(DEBUG) && _MSC_VER >= 1900
|
||||||
void * __cdecl _aligned_malloc_dbg( size_t size, size_t align, const char * f_name, int line_n)
|
void * __cdecl _aligned_malloc_dbg( size_t size, size_t align, const char * f_name, int line_n)
|
||||||
{
|
{
|
||||||
return _aligned_malloc(size, align);
|
return _aligned_malloc(size, align);
|
||||||
@ -1073,16 +1185,19 @@ void __cdecl _aligned_free_dbg( void * memblock)
|
|||||||
{
|
{
|
||||||
_aligned_free(memblock);
|
_aligned_free(memblock);
|
||||||
}
|
}
|
||||||
|
#endif // DEBUG
|
||||||
|
|
||||||
|
#if _MSC_VER < 1900
|
||||||
size_t __cdecl _CrtSetDebugFillThreshold( size_t _NewDebugFillThreshold)
|
size_t __cdecl _CrtSetDebugFillThreshold( size_t _NewDebugFillThreshold)
|
||||||
{
|
{
|
||||||
assert(0);
|
assert(0);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
//===========================================
|
//===========================================
|
||||||
// NEW!!! 64-bit
|
// NEW!!! 64-bit
|
||||||
|
#ifndef PROTECTED_THINGS_DISABLE
|
||||||
char * __cdecl _strdup ( const char * string )
|
char * __cdecl _strdup ( const char * string )
|
||||||
{
|
{
|
||||||
int nSize = (int)strlen(string) + 1;
|
int nSize = (int)strlen(string) + 1;
|
||||||
@ -1094,6 +1209,7 @@ char * __cdecl _strdup ( const char * string )
|
|||||||
memcpy( pCopy, string, nSize );
|
memcpy( pCopy, string, nSize );
|
||||||
return pCopy;
|
return pCopy;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
_TSCHAR * __cdecl _tfullpath_dbg ( _TSCHAR *UserBuf, const _TSCHAR *path, size_t maxlen, int nBlockUse, const char * szFileName, int nLine )
|
_TSCHAR * __cdecl _tfullpath_dbg ( _TSCHAR *UserBuf, const _TSCHAR *path, size_t maxlen, int nBlockUse, const char * szFileName, int nLine )
|
||||||
@ -1143,7 +1259,6 @@ _TSCHAR * __cdecl _ttempnam ( const _TSCHAR *dir, const _TSCHAR *pfx )
|
|||||||
Assert(0);
|
Assert(0);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
wchar_t * __cdecl _wcsdup_dbg ( const wchar_t * string, int nBlockUse, const char * szFileName, int nLine )
|
wchar_t * __cdecl _wcsdup_dbg ( const wchar_t * string, int nBlockUse, const char * szFileName, int nLine )
|
||||||
{
|
{
|
||||||
@ -1156,6 +1271,7 @@ wchar_t * __cdecl _wcsdup ( const wchar_t * string )
|
|||||||
Assert(0);
|
Assert(0);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
} // end extern "C"
|
} // end extern "C"
|
||||||
|
|
||||||
@ -1344,6 +1460,12 @@ _CRTIMP extern uintptr_t __cdecl __threadhandle(void);
|
|||||||
|
|
||||||
/* Structure for each thread's data */
|
/* Structure for each thread's data */
|
||||||
|
|
||||||
|
#if _MSC_VER >= 1900
|
||||||
|
typedef __crt_multibyte_data* pthreadmbcinfo;
|
||||||
|
typedef __crt_locale_data* pthreadlocinfo;
|
||||||
|
typedef __crt_locale_pointers _locale_tstruct;
|
||||||
|
#endif
|
||||||
|
|
||||||
struct _tiddata {
|
struct _tiddata {
|
||||||
unsigned long _tid; /* thread ID */
|
unsigned long _tid; /* thread ID */
|
||||||
|
|
||||||
@ -1387,7 +1509,7 @@ struct _tiddata {
|
|||||||
* the thread */
|
* the thread */
|
||||||
pthreadmbcinfo ptmbcinfo;
|
pthreadmbcinfo ptmbcinfo;
|
||||||
|
|
||||||
/* pointer to the copy of the locale informaton used by the thead */
|
/* pointer to the copy of the locale information used by the thread */
|
||||||
pthreadlocinfo ptlocinfo;
|
pthreadlocinfo ptlocinfo;
|
||||||
int _ownlocale; /* if 1, this thread owns its own locale */
|
int _ownlocale; /* if 1, this thread owns its own locale */
|
||||||
|
|
||||||
@ -1502,7 +1624,7 @@ struct _tiddata {
|
|||||||
* the thread */
|
* the thread */
|
||||||
pthreadmbcinfo ptmbcinfo;
|
pthreadmbcinfo ptmbcinfo;
|
||||||
|
|
||||||
/* pointer to the copy of the locale informaton used by the thead */
|
/* pointer to the copy of the locale information used by the thread */
|
||||||
pthreadlocinfo ptlocinfo;
|
pthreadlocinfo ptlocinfo;
|
||||||
int _ownlocale; /* if 1, this thread owns its own locale */
|
int _ownlocale; /* if 1, this thread owns its own locale */
|
||||||
|
|
||||||
|
@ -367,7 +367,7 @@ typedef void * HINSTANCE;
|
|||||||
#define MAX_UNICODE_PATH MAX_PATH
|
#define MAX_UNICODE_PATH MAX_PATH
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define MAX_UNICODE_PATH_IN_UTF8 MAX_UNICODE_PATH*4
|
#define MAX_UNICODE_PATH_IN_UTF8 (MAX_UNICODE_PATH*4)
|
||||||
|
|
||||||
#ifdef GNUC
|
#ifdef GNUC
|
||||||
#undef offsetof
|
#undef offsetof
|
||||||
@ -379,7 +379,7 @@ typedef void * HINSTANCE;
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#define ALIGN_VALUE( val, alignment ) ( ( val + alignment - 1 ) & ~( alignment - 1 ) ) // need macro for constant expression
|
#define ALIGN_VALUE( val, alignment ) ( ( (val) + (alignment) - 1 ) & ~( (alignment) - 1 ) ) // need macro for constant expression
|
||||||
|
|
||||||
// Used to step into the debugger
|
// Used to step into the debugger
|
||||||
#if defined( _WIN32 ) && !defined( _X360 )
|
#if defined( _WIN32 ) && !defined( _X360 )
|
||||||
@ -572,7 +572,16 @@ typedef void * HINSTANCE;
|
|||||||
#endif
|
#endif
|
||||||
// GCC 3.4.1 has a bug in supporting forced inline of templated functions
|
// GCC 3.4.1 has a bug in supporting forced inline of templated functions
|
||||||
// this macro lets us not force inlining in that case
|
// this macro lets us not force inlining in that case
|
||||||
|
#if __GNUC__ < 4
|
||||||
#define FORCEINLINE_TEMPLATE inline
|
#define FORCEINLINE_TEMPLATE inline
|
||||||
|
#else
|
||||||
|
#define FORCEINLINE_TEMPLATE inline __attribute__((always_inline))
|
||||||
|
#endif
|
||||||
|
#if __cpp_constexpr >= 201304
|
||||||
|
#define CONSTEXPR_FUNC constexpr
|
||||||
|
#else
|
||||||
|
#define CONSTEXPR_FUNC
|
||||||
|
#endif
|
||||||
// #define __stdcall __attribute__ ((__stdcall__))
|
// #define __stdcall __attribute__ ((__stdcall__))
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -672,6 +681,40 @@ typedef void * HINSTANCE;
|
|||||||
#pragma warning( disable : 4312 ) // conversion from 'unsigned int' to 'memhandle_t' of greater size
|
#pragma warning( disable : 4312 ) // conversion from 'unsigned int' to 'memhandle_t' of greater size
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
// Detect C++11 support for "rvalue references" / "move semantics" / other C++11 (and up) stuff
|
||||||
|
#if defined(_MSC_VER)
|
||||||
|
#if _MSC_VER >= 1600
|
||||||
|
#define VALVE_RVALUE_REFS 1
|
||||||
|
#endif
|
||||||
|
#if _MSC_VER >= 1800
|
||||||
|
#define VALVE_INITIALIZER_LIST_SUPPORT 1
|
||||||
|
#define VALVE_EXPLICIT_CONVERSION_OP 1
|
||||||
|
#endif
|
||||||
|
#elif defined(__clang__)
|
||||||
|
#if __has_extension(cxx_rvalue_references)
|
||||||
|
#define VALVE_RVALUE_REFS 1
|
||||||
|
#endif
|
||||||
|
#if __has_feature(cxx_generalized_initializers)
|
||||||
|
#define VALVE_INITIALIZER_LIST_SUPPORT 1
|
||||||
|
#endif
|
||||||
|
#if __has_feature(cxx_explicit_conversions)
|
||||||
|
#define VALVE_EXPLICIT_CONVERSION_OP 1
|
||||||
|
#endif
|
||||||
|
#elif defined(__GNUC__)
|
||||||
|
#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6 )
|
||||||
|
#if defined(__GXX_EXPERIMENTAL_CXX0X__)
|
||||||
|
#define VALVE_RVALUE_REFS 1
|
||||||
|
#define VALVE_INITIALIZER_LIST_SUPPORT 1
|
||||||
|
#define VALVE_EXPLICIT_CONVERSION_OP 1
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef VALVE_RVALUE_REFS
|
||||||
|
#include "tier0/valve_minmax_off.h"
|
||||||
|
#include <utility>
|
||||||
|
#include "tier0/valve_minmax_on.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef POSIX
|
#ifdef POSIX
|
||||||
#define _stricmp stricmp
|
#define _stricmp stricmp
|
||||||
@ -1313,63 +1356,82 @@ inline const char *GetPlatformExt( void )
|
|||||||
template <class T>
|
template <class T>
|
||||||
inline T* Construct( T* pMemory )
|
inline T* Construct( T* pMemory )
|
||||||
{
|
{
|
||||||
|
HINT(pMemory != 0);
|
||||||
return ::new( pMemory ) T;
|
return ::new( pMemory ) T;
|
||||||
}
|
}
|
||||||
|
|
||||||
template <class T, typename ARG1>
|
template <class T, typename ARG1>
|
||||||
inline T* Construct( T* pMemory, ARG1 a1 )
|
inline T* Construct( T* pMemory, ARG1 a1 )
|
||||||
{
|
{
|
||||||
|
HINT(pMemory != 0);
|
||||||
return ::new( pMemory ) T( a1 );
|
return ::new( pMemory ) T( a1 );
|
||||||
}
|
}
|
||||||
|
|
||||||
template <class T, typename ARG1, typename ARG2>
|
template <class T, typename ARG1, typename ARG2>
|
||||||
inline T* Construct( T* pMemory, ARG1 a1, ARG2 a2 )
|
inline T* Construct( T* pMemory, ARG1 a1, ARG2 a2 )
|
||||||
{
|
{
|
||||||
|
HINT(pMemory != 0);
|
||||||
return ::new( pMemory ) T( a1, a2 );
|
return ::new( pMemory ) T( a1, a2 );
|
||||||
}
|
}
|
||||||
|
|
||||||
template <class T, typename ARG1, typename ARG2, typename ARG3>
|
template <class T, typename ARG1, typename ARG2, typename ARG3>
|
||||||
inline T* Construct( T* pMemory, ARG1 a1, ARG2 a2, ARG3 a3 )
|
inline T* Construct( T* pMemory, ARG1 a1, ARG2 a2, ARG3 a3 )
|
||||||
{
|
{
|
||||||
|
HINT(pMemory != 0);
|
||||||
return ::new( pMemory ) T( a1, a2, a3 );
|
return ::new( pMemory ) T( a1, a2, a3 );
|
||||||
}
|
}
|
||||||
|
|
||||||
template <class T, typename ARG1, typename ARG2, typename ARG3, typename ARG4>
|
template <class T, typename ARG1, typename ARG2, typename ARG3, typename ARG4>
|
||||||
inline T* Construct( T* pMemory, ARG1 a1, ARG2 a2, ARG3 a3, ARG4 a4 )
|
inline T* Construct( T* pMemory, ARG1 a1, ARG2 a2, ARG3 a3, ARG4 a4 )
|
||||||
{
|
{
|
||||||
|
HINT(pMemory != 0);
|
||||||
return ::new( pMemory ) T( a1, a2, a3, a4 );
|
return ::new( pMemory ) T( a1, a2, a3, a4 );
|
||||||
}
|
}
|
||||||
|
|
||||||
template <class T, typename ARG1, typename ARG2, typename ARG3, typename ARG4, typename ARG5>
|
template <class T, typename ARG1, typename ARG2, typename ARG3, typename ARG4, typename ARG5>
|
||||||
inline T* Construct( T* pMemory, ARG1 a1, ARG2 a2, ARG3 a3, ARG4 a4, ARG5 a5 )
|
inline T* Construct( T* pMemory, ARG1 a1, ARG2 a2, ARG3 a3, ARG4 a4, ARG5 a5 )
|
||||||
{
|
{
|
||||||
|
HINT(pMemory != 0);
|
||||||
return ::new( pMemory ) T( a1, a2, a3, a4, a5 );
|
return ::new( pMemory ) T( a1, a2, a3, a4, a5 );
|
||||||
}
|
}
|
||||||
|
|
||||||
template <class T, class P>
|
template <class T, class P>
|
||||||
inline void ConstructOneArg( T* pMemory, P const& arg)
|
inline void ConstructOneArg( T* pMemory, P const& arg)
|
||||||
{
|
{
|
||||||
|
HINT(pMemory != 0);
|
||||||
::new( pMemory ) T(arg);
|
::new( pMemory ) T(arg);
|
||||||
}
|
}
|
||||||
|
|
||||||
template <class T, class P1, class P2 >
|
template <class T, class P1, class P2 >
|
||||||
inline void ConstructTwoArg( T* pMemory, P1 const& arg1, P2 const& arg2)
|
inline void ConstructTwoArg( T* pMemory, P1 const& arg1, P2 const& arg2)
|
||||||
{
|
{
|
||||||
|
HINT(pMemory != 0);
|
||||||
::new( pMemory ) T(arg1, arg2);
|
::new( pMemory ) T(arg1, arg2);
|
||||||
}
|
}
|
||||||
|
|
||||||
template <class T, class P1, class P2, class P3 >
|
template <class T, class P1, class P2, class P3 >
|
||||||
inline void ConstructThreeArg( T* pMemory, P1 const& arg1, P2 const& arg2, P3 const& arg3)
|
inline void ConstructThreeArg( T* pMemory, P1 const& arg1, P2 const& arg2, P3 const& arg3)
|
||||||
{
|
{
|
||||||
|
HINT(pMemory != 0);
|
||||||
::new( pMemory ) T(arg1, arg2, arg3);
|
::new( pMemory ) T(arg1, arg2, arg3);
|
||||||
}
|
}
|
||||||
|
|
||||||
template <class T>
|
template <class T>
|
||||||
inline T* CopyConstruct( T* pMemory, T const& src )
|
inline T* CopyConstruct( T* pMemory, T const& src )
|
||||||
{
|
{
|
||||||
|
HINT(pMemory != 0);
|
||||||
return ::new( pMemory ) T(src);
|
return ::new( pMemory ) T(src);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef VALVE_RVALUE_REFS
|
||||||
|
template <class T>
|
||||||
|
inline void CopyConstruct(T* pMemory, T&& src)
|
||||||
|
{
|
||||||
|
HINT(pMemory != 0);
|
||||||
|
::new(pMemory)T(std::forward<T>(src));
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
template <class T>
|
template <class T>
|
||||||
inline void Destruct( T* pMemory )
|
inline void Destruct( T* pMemory )
|
||||||
{
|
{
|
||||||
|
@ -245,7 +245,7 @@ void CUtlSortVector<T, LessFunc, BaseVector>::QuickSort( LessFunc& less, int nLo
|
|||||||
ctx.m_pLessContext = m_pLessContext;
|
ctx.m_pLessContext = m_pLessContext;
|
||||||
ctx.m_pLessFunc = &less;
|
ctx.m_pLessFunc = &less;
|
||||||
|
|
||||||
qsort_s( Base(), Count(), sizeof(T), (QSortCompareFunc_t)&CUtlSortVector<T, LessFunc>::CompareHelper, &ctx );
|
qsort_s( this->Base(), this->Count(), sizeof(T), (QSortCompareFunc_t)&CUtlSortVector<T, LessFunc>::CompareHelper, &ctx );
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
typedef int (__cdecl *QSortCompareFunc_t)( const void *, const void *);
|
typedef int (__cdecl *QSortCompareFunc_t)( const void *, const void *);
|
||||||
|
@ -186,7 +186,7 @@ public:
|
|||||||
if( !m_bSwapBytes || ( sizeof(T) == 1 ) )
|
if( !m_bSwapBytes || ( sizeof(T) == 1 ) )
|
||||||
{
|
{
|
||||||
// If we were just going to swap in place then return.
|
// If we were just going to swap in place then return.
|
||||||
if( !inputBuffer )
|
if( inputBuffer == outputBuffer )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// Otherwise copy the inputBuffer to the outputBuffer:
|
// Otherwise copy the inputBuffer to the outputBuffer:
|
||||||
|
@ -139,7 +139,7 @@ class IForceVirtualInheritancePanel
|
|||||||
// This is designed as an easy-access to the vgui-functionality; for more
|
// This is designed as an easy-access to the vgui-functionality; for more
|
||||||
// low-level access to vgui functions use the IPanel/IClientPanel interfaces directly
|
// low-level access to vgui functions use the IPanel/IClientPanel interfaces directly
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
class Panel : public IClientPanel, virtual IForceVirtualInheritancePanel
|
class Panel : public IClientPanel, public virtual IForceVirtualInheritancePanel
|
||||||
{
|
{
|
||||||
DECLARE_CLASS_SIMPLE_NOBASE( Panel );
|
DECLARE_CLASS_SIMPLE_NOBASE( Panel );
|
||||||
|
|
||||||
@ -1011,7 +1011,7 @@ public:
|
|||||||
|
|
||||||
|
|
||||||
void VguiPanelGetSortedChildPanelList( Panel *pParentPanel, void *pSortedPanels );
|
void VguiPanelGetSortedChildPanelList( Panel *pParentPanel, void *pSortedPanels );
|
||||||
void VguiPanelGetSortedChildButtonList( Panel *pParentPanel, void *pSortedPanels, char *pchFilter = NULL, int nFilterType = 0 );
|
void VguiPanelGetSortedChildButtonList( Panel *pParentPanel, void *pSortedPanels, const char *pchFilter = NULL, int nFilterType = 0 );
|
||||||
int VguiPanelNavigateSortedChildButtonList( void *pSortedPanels, int nDir );
|
int VguiPanelNavigateSortedChildButtonList( void *pSortedPanels, int nDir );
|
||||||
|
|
||||||
|
|
||||||
|
@ -828,6 +828,8 @@ enum ScriptStatus_t
|
|||||||
class IScriptVM
|
class IScriptVM
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
virtual ~IScriptVM() {}
|
||||||
|
|
||||||
virtual bool Init() = 0;
|
virtual bool Init() = 0;
|
||||||
virtual void Shutdown() = 0;
|
virtual void Shutdown() = 0;
|
||||||
|
|
||||||
|
@ -425,11 +425,11 @@ void RayTracingEnvironment::Trace4Rays(const FourRays &rays, fltx4 TMin, fltx4 T
|
|||||||
MulSIMD(
|
MulSIMD(
|
||||||
SubSIMD(ReplicateX4(CurNode->SplittingPlaneValue),
|
SubSIMD(ReplicateX4(CurNode->SplittingPlaneValue),
|
||||||
rays.origin[split_plane_number]),OneOverRayDir[split_plane_number]);
|
rays.origin[split_plane_number]),OneOverRayDir[split_plane_number]);
|
||||||
fltx4 active=CmpLeSIMD(TMin,TMax); // mask of which rays are active
|
fltx4 activeLocl=CmpLeSIMD(TMin,TMax); // mask of which rays are active
|
||||||
|
|
||||||
// now, decide how to traverse children. can either do front,back, or do front and push
|
// now, decide how to traverse children. can either do front,back, or do front and push
|
||||||
// back.
|
// back.
|
||||||
fltx4 hits_front=AndSIMD(active,CmpGeSIMD(dist_to_sep_plane,TMin));
|
fltx4 hits_front=AndSIMD(activeLocl,CmpGeSIMD(dist_to_sep_plane,TMin));
|
||||||
if (! IsAnyNegative(hits_front))
|
if (! IsAnyNegative(hits_front))
|
||||||
{
|
{
|
||||||
// missed the front. only traverse back
|
// missed the front. only traverse back
|
||||||
@ -440,7 +440,7 @@ void RayTracingEnvironment::Trace4Rays(const FourRays &rays, fltx4 TMin, fltx4 T
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
fltx4 hits_back=AndSIMD(active,CmpLeSIMD(dist_to_sep_plane,TMax));
|
fltx4 hits_back=AndSIMD(activeLocl,CmpLeSIMD(dist_to_sep_plane,TMax));
|
||||||
if (! IsAnyNegative(hits_back) )
|
if (! IsAnyNegative(hits_back) )
|
||||||
{
|
{
|
||||||
// missed the back - only need to traverse front node
|
// missed the back - only need to traverse front node
|
||||||
|
@ -155,14 +155,14 @@ void RayTracingEnvironment::RenderScene(
|
|||||||
fltx4 MaxT=ldir.length();
|
fltx4 MaxT=ldir.length();
|
||||||
ldir.VectorNormalizeFast();
|
ldir.VectorNormalizeFast();
|
||||||
// now, compute shadow flag
|
// now, compute shadow flag
|
||||||
FourRays myrays;
|
FourRays myraysLocl;
|
||||||
myrays.origin=surface_pos;
|
myraysLocl.origin=surface_pos;
|
||||||
FourVectors epsilon=ldir;
|
FourVectors epsilon=ldir;
|
||||||
epsilon*=0.01;
|
epsilon*=0.01;
|
||||||
myrays.origin+=epsilon;
|
myraysLocl.origin+=epsilon;
|
||||||
myrays.direction=ldir;
|
myraysLocl.direction=ldir;
|
||||||
RayTracingResult shadowtest;
|
RayTracingResult shadowtest;
|
||||||
Trace4Rays(myrays,Four_Zeros,MaxT, &shadowtest);
|
Trace4Rays(myraysLocl,Four_Zeros,MaxT, &shadowtest);
|
||||||
fltx4 unshadowed=CmpGtSIMD(shadowtest.HitDistance,MaxT);
|
fltx4 unshadowed=CmpGtSIMD(shadowtest.HitDistance,MaxT);
|
||||||
if (! (IsAllZeros(unshadowed)))
|
if (! (IsAllZeros(unshadowed)))
|
||||||
{
|
{
|
||||||
|
@ -1357,13 +1357,13 @@ int64 bf_read::ReadLongLong()
|
|||||||
|
|
||||||
float bf_read::ReadFloat()
|
float bf_read::ReadFloat()
|
||||||
{
|
{
|
||||||
float ret;
|
float retLocl;
|
||||||
Assert( sizeof(ret) == 4 );
|
Assert( sizeof(retLocl) == 4 );
|
||||||
ReadBits(&ret, 32);
|
ReadBits(&retLocl, 32);
|
||||||
|
|
||||||
// Swap the float, since ReadBits reads raw data
|
// Swap the float, since ReadBits reads raw data
|
||||||
LittleFloat( &ret, &ret );
|
LittleFloat( &retLocl, &retLocl );
|
||||||
return ret;
|
return retLocl;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool bf_read::ReadBytes(void *pOut, int nBytes)
|
bool bf_read::ReadBytes(void *pOut, int nBytes)
|
||||||
|
@ -138,7 +138,7 @@ class LogMessage {
|
|||||||
class LogMessageCrash : public LogMessage {
|
class LogMessageCrash : public LogMessage {
|
||||||
public:
|
public:
|
||||||
LogMessageCrash() { }
|
LogMessageCrash() { }
|
||||||
#if _MSC_VER == 1700 || _MSC_VER == 1800
|
#if _MSC_VER >= 1700
|
||||||
// Bogus warning from VS 2012 and VS 2013:
|
// Bogus warning from VS 2012 and VS 2013:
|
||||||
// warning C4722: 'snappy::LogMessageCrash::~LogMessageCrash' : destructor never returns, potential memory leak
|
// warning C4722: 'snappy::LogMessageCrash::~LogMessageCrash' : destructor never returns, potential memory leak
|
||||||
#pragma warning(push)
|
#pragma warning(push)
|
||||||
|
@ -14,7 +14,8 @@ $Configuration
|
|||||||
$Compiler
|
$Compiler
|
||||||
{
|
{
|
||||||
$AdditionalIncludeDirectories "$BASE,..\common,$SRCDIR\game\shared,.\"
|
$AdditionalIncludeDirectories "$BASE,..\common,$SRCDIR\game\shared,.\"
|
||||||
$PreprocessorDefinitions "$BASE;captioncompiler"
|
$PreprocessorDefinitions "$BASE;PROTECTED_THINGS_DISABLE;captioncompiler" [$VS2019]
|
||||||
|
$PreprocessorDefinitions "$BASE;captioncompiler" [!$VS2019]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8510,7 +8510,7 @@ void VguiPanelGetSortedChildPanelList( Panel *pParentPanel, void *pSortedPanels
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void VguiPanelGetSortedChildButtonList( Panel *pParentPanel, void *pSortedPanels, char *pchFilter /*= NULL*/, int nFilterType /*= 0*/ )
|
void VguiPanelGetSortedChildButtonList( Panel *pParentPanel, void *pSortedPanels, const char *pchFilter /*= NULL*/, int nFilterType /*= 0*/ )
|
||||||
{
|
{
|
||||||
CUtlSortVector< SortedPanel_t, CSortedPanelYLess > *pList = reinterpret_cast< CUtlSortVector< SortedPanel_t, CSortedPanelYLess >* >( pSortedPanels );
|
CUtlSortVector< SortedPanel_t, CSortedPanelYLess > *pList = reinterpret_cast< CUtlSortVector< SortedPanel_t, CSortedPanelYLess >* >( pSortedPanels );
|
||||||
|
|
||||||
|
@ -18,7 +18,9 @@
|
|||||||
#include <vgui_controls/ScrollBarSlider.h>
|
#include <vgui_controls/ScrollBarSlider.h>
|
||||||
#include <vgui_controls/Controls.h>
|
#include <vgui_controls/Controls.h>
|
||||||
|
|
||||||
|
#if _MSC_VER < 1900
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
// memdbgon must be the last include file in a .cpp file!!!
|
// memdbgon must be the last include file in a .cpp file!!!
|
||||||
#include <tier0/memdbgon.h>
|
#include <tier0/memdbgon.h>
|
||||||
|
@ -6,8 +6,8 @@
|
|||||||
// and implement another button here.
|
// and implement another button here.
|
||||||
//=============================================================================//
|
//=============================================================================//
|
||||||
|
|
||||||
#include <math.h>
|
//#include <math.h>
|
||||||
#define PROTECTED_THINGS_DISABLE
|
//#define PROTECTED_THINGS_DISABLE
|
||||||
|
|
||||||
#include <vgui/IInput.h>
|
#include <vgui/IInput.h>
|
||||||
#include <vgui/ISystem.h>
|
#include <vgui/ISystem.h>
|
||||||
|
@ -418,7 +418,7 @@ class TreeNode : public Panel
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
TreeNode(Panel *parent, TreeView *pTreeView);
|
TreeNode(Panel *parent, TreeView *pTreeView);
|
||||||
~TreeNode();
|
virtual ~TreeNode();
|
||||||
void SetText(const char *pszText);
|
void SetText(const char *pszText);
|
||||||
void SetFont(HFont font);
|
void SetFont(HFont font);
|
||||||
void SetKeyValues(KeyValues *data);
|
void SetKeyValues(KeyValues *data);
|
||||||
|
@ -16,17 +16,15 @@
|
|||||||
//$Conditional TF_BETA "1"
|
//$Conditional TF_BETA "1"
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
// Mapbase conditional, equivalent to (and required for) our MAPBASE preprocessor defined below
|
|
||||||
$Conditional MAPBASE "1"
|
|
||||||
|
|
||||||
// Toggles Mapbase's RPC implementation
|
$Conditional VS2019 "1" // Toggles Visual Studio 2019 toolset (NOTE: This makes the solution incompatible with Visual Studio 2013)
|
||||||
$Conditional MAPBASE_RPC "1"
|
|
||||||
|
|
||||||
// Toggles VScript implementation (note: interfaces still exist, just the provided implementation is not present)
|
// Mapbase functionality conditionals
|
||||||
$Conditional MAPBASE_VSCRIPT "1"
|
$Conditional MAPBASE "1" // Equivalent to (and required for) our MAPBASE preprocessor defined below
|
||||||
|
$Conditional MAPBASE_RPC "1" // Toggles Mapbase's Rich Presence Client implementations
|
||||||
|
$Conditional MAPBASE_VSCRIPT "1" // Toggles VScript implementation (note: interfaces still exist, just the provided implementation is not present)
|
||||||
|
$Conditional NEW_RESPONSE_SYSTEM "1" // Toggles the new Response System library based on the Alien Swarm SDK
|
||||||
|
|
||||||
// Toggles the new Response System library based on the Alien Swarm SDK.
|
|
||||||
$Conditional NEW_RESPONSE_SYSTEM "1"
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
$Configuration "Debug"
|
$Configuration "Debug"
|
||||||
|
@ -39,12 +39,14 @@ $Configuration
|
|||||||
|
|
||||||
$Compiler [$WIN32]
|
$Compiler [$WIN32]
|
||||||
{
|
{
|
||||||
$EnableEnhancedInstructionSet "Streaming SIMD Extensions (/arch:SSE)"
|
$EnableEnhancedInstructionSet "Streaming SIMD Extensions (/arch:SSE)" [!$VS2019]
|
||||||
|
$EnableEnhancedInstructionSet "Streaming SIMD Extensions 2 (/arch:SSE2)" [$VS2019]
|
||||||
}
|
}
|
||||||
|
|
||||||
$Linker
|
$Linker
|
||||||
{
|
{
|
||||||
$AdditionalDependencies "$BASE shell32.lib user32.lib advapi32.lib gdi32.lib comdlg32.lib ole32.lib" [$WIN32||$WIN64]
|
$AdditionalDependencies "$BASE shell32.lib user32.lib advapi32.lib gdi32.lib comdlg32.lib ole32.lib" [($WIN32||$WIN64) && !$VS2019]
|
||||||
|
$AdditionalDependencies "$BASE shell32.lib user32.lib advapi32.lib gdi32.lib comdlg32.lib ole32.lib legacy_stdio_definitions.lib" [($WIN32||$WIN64) && $VS2019]
|
||||||
$TargetMachine "MachineX86 (/MACHINE:X86)" [$WIN32]
|
$TargetMachine "MachineX86 (/MACHINE:X86)" [$WIN32]
|
||||||
$TargetMachine "MachineX64 (/MACHINE:X64)" [$WIN64]
|
$TargetMachine "MachineX64 (/MACHINE:X64)" [$WIN64]
|
||||||
// Suppress this pointless warning using the undocumented /ignore linker switch
|
// Suppress this pointless warning using the undocumented /ignore linker switch
|
||||||
@ -69,7 +71,7 @@ $Configuration
|
|||||||
"if ERRORLEVEL 1 goto BuildEventFailed" "\n" \
|
"if ERRORLEVEL 1 goto BuildEventFailed" "\n" \
|
||||||
"if exist $QUOTE$(TargetDir)$(TargetName).map$QUOTE copy $QUOTE$(TargetDir)$(TargetName).map$QUOTE $OUTBINDIR\$(TargetName).map" "\n"
|
"if exist $QUOTE$(TargetDir)$(TargetName).map$QUOTE copy $QUOTE$(TargetDir)$(TargetName).map$QUOTE $OUTBINDIR\$(TargetName).map" "\n"
|
||||||
$CommandLine "$BASE" "call $SRCDIR\vpc_scripts\valve_p4_edit.cmd $QUOTE$OUTBINDIR\$(TargetName).pdb$QUOTE $SRCDIR" "\n" [!$SOURCESDK]
|
$CommandLine "$BASE" "call $SRCDIR\vpc_scripts\valve_p4_edit.cmd $QUOTE$OUTBINDIR\$(TargetName).pdb$QUOTE $SRCDIR" "\n" [!$SOURCESDK]
|
||||||
$CommandLine "$BASE" "copy $QUOTE$(TargetDir)$(TargetName).pdb$QUOTE $OUTBINDIR\$(TargetName).pdb" "\n" \
|
$CommandLine "$BASE" "copy $QUOTE$(TargetDir)$(TargetName).pdb$QUOTE $QUOTE$OUTBINDIR\$(TargetName).pdb$QUOTE" "\n" \
|
||||||
"if ERRORLEVEL 1 goto BuildEventFailed" "\n" \
|
"if ERRORLEVEL 1 goto BuildEventFailed" "\n" \
|
||||||
"goto BuildEventOK" "\n" \
|
"goto BuildEventOK" "\n" \
|
||||||
":BuildEventFailed" "\n" \
|
":BuildEventFailed" "\n" \
|
||||||
@ -114,7 +116,8 @@ $Project
|
|||||||
$CustomBuildStep
|
$CustomBuildStep
|
||||||
{
|
{
|
||||||
// General
|
// General
|
||||||
$CommandLine "$QUOTE$(VCInstallDir)bin\ml.exe$QUOTE /safeseh /c /Cp /Zi /Fo$QUOTE$(IntDir)\$(InputName).obj$QUOTE $QUOTE$(InputPath)$QUOTE"
|
$CommandLine "$QUOTE$(VCInstallDir)bin\ml.exe$QUOTE /safeseh /c /Cp /Zi /Fo$QUOTE$(IntDir)\$(InputName).obj$QUOTE $QUOTE$(InputPath)$QUOTE" [!$VS2019]
|
||||||
|
$CommandLine "$QUOTE$(VC_ExecutablePath_x64_x86)bin\ml.exe$QUOTE /safeseh /c /Cp /Zi /Fo$QUOTE$(IntDir)\$(InputName).obj$QUOTE $QUOTE$(InputPath)$QUOTE" [$VS2019]
|
||||||
$Description "Compiling pointeroverride.asm"
|
$Description "Compiling pointeroverride.asm"
|
||||||
$Outputs "$(IntDir)\$(InputName).obj"
|
$Outputs "$(IntDir)\$(InputName).obj"
|
||||||
}
|
}
|
||||||
|
@ -39,7 +39,8 @@ $Configuration
|
|||||||
|
|
||||||
$Compiler [$WIN32]
|
$Compiler [$WIN32]
|
||||||
{
|
{
|
||||||
$EnableEnhancedInstructionSet "Streaming SIMD Extensions (/arch:SSE)"
|
$EnableEnhancedInstructionSet "Streaming SIMD Extensions (/arch:SSE)" [!$VS2019]
|
||||||
|
$EnableEnhancedInstructionSet "Streaming SIMD Extensions 2 (/arch:SSE2)" [$VS2019]
|
||||||
}
|
}
|
||||||
|
|
||||||
$Linker
|
$Linker
|
||||||
@ -66,7 +67,8 @@ $Configuration
|
|||||||
|
|
||||||
$PostBuildEvent [!$ANALYZE]
|
$PostBuildEvent [!$ANALYZE]
|
||||||
{
|
{
|
||||||
$CommandLine "call $SRCDIR\vpc_scripts\valve_p4_edit.cmd $OUTBINDIR\$(TargetFileName) $SRCDIR" "\n" [!$SOURCESDK]
|
$CommandLine "call $SRCDIR\vpc_scripts\valve_p4_edit.cmd $OUTBINDIR\$(TargetFileName) $SRCDIR" "\n" [!$SOURCESDK && !$VS2019]
|
||||||
|
$CommandLine "if not exist $QUOTE$OUTBINDIR$QUOTE mkdir $QUOTE$OUTBINDIR$QUOTE" "\n" [!$SOURCESDK && $VS2019]
|
||||||
$CommandLine "$BASE" "copy $QUOTE$(TargetDir)$QUOTE$(TargetFileName) $OUTBINDIR\$(TargetFileName) >nul" "\n" \
|
$CommandLine "$BASE" "copy $QUOTE$(TargetDir)$QUOTE$(TargetFileName) $OUTBINDIR\$(TargetFileName) >nul" "\n" \
|
||||||
"if ERRORLEVEL 1 goto BuildEventFailed" "\n" \
|
"if ERRORLEVEL 1 goto BuildEventFailed" "\n" \
|
||||||
"if exist $QUOTE$(TargetDir)$QUOTE$(TargetName).map copy $QUOTE$(TargetDir)$QUOTE$(TargetName).map $OUTBINDIR\$(TargetName).map >nul" "\n"
|
"if exist $QUOTE$(TargetDir)$QUOTE$(TargetName).map copy $QUOTE$(TargetDir)$QUOTE$(TargetName).map $OUTBINDIR\$(TargetName).map >nul" "\n"
|
||||||
@ -109,7 +111,8 @@ $Project
|
|||||||
$CustomBuildStep
|
$CustomBuildStep
|
||||||
{
|
{
|
||||||
// General
|
// General
|
||||||
$CommandLine "$QUOTE$(VCInstallDir)bin\ml.exe$QUOTE /c /Cp /Zi /Fo$QUOTE$(IntDir)\$(InputName).obj$QUOTE $QUOTE$(InputPath)$QUOTE"
|
$CommandLine "$QUOTE$(VCInstallDir)bin\ml.exe$QUOTE /c /Cp /Zi /Fo$QUOTE$(IntDir)\$(InputName).obj$QUOTE $QUOTE$(InputPath)$QUOTE" [!$VS2019]
|
||||||
|
$CommandLine "$QUOTE$(VC_ExecutablePath_x64_x86)\ml.exe$QUOTE /c /Cp /Zi /Fo$QUOTE$(IntDir)\$(InputName).obj$QUOTE $QUOTE$(InputPath)$QUOTE" [$VS2019]
|
||||||
$Description "Compiling pointeroverride.asm"
|
$Description "Compiling pointeroverride.asm"
|
||||||
$Outputs "$(IntDir)\$(InputName).obj"
|
$Outputs "$(IntDir)\$(InputName).obj"
|
||||||
}
|
}
|
||||||
|
@ -38,7 +38,8 @@ $Configuration
|
|||||||
|
|
||||||
$Compiler [$WIN32]
|
$Compiler [$WIN32]
|
||||||
{
|
{
|
||||||
$EnableEnhancedInstructionSet "Streaming SIMD Extensions (/arch:SSE)"
|
$EnableEnhancedInstructionSet "Streaming SIMD Extensions (/arch:SSE)" [!$VS2019]
|
||||||
|
$EnableEnhancedInstructionSet "Streaming SIMD Extensions 2 (/arch:SSE2)" [$VS2019]
|
||||||
}
|
}
|
||||||
|
|
||||||
$PreBuildEvent
|
$PreBuildEvent
|
||||||
|
@ -8,10 +8,11 @@ $Configuration
|
|||||||
$General
|
$General
|
||||||
{
|
{
|
||||||
// Request a specific compiler toolset.
|
// Request a specific compiler toolset.
|
||||||
$PlatformToolset "v110_xp" [$VS2012 && !$ANALYZE] // VS 2012 targeting Windows XP - http://msdn.microsoft.com/en-us/library/vstudio/jj851139.aspx
|
$PlatformToolset "v110_xp" [$VS2012 && !$ANALYZE && !$VS2019] // VS 2012 targeting Windows XP - http://msdn.microsoft.com/en-us/library/vstudio/jj851139.aspx
|
||||||
$PlatformToolset "v110" [$VS2012 && $ANALYZE] // VS 2012 for /analyze
|
$PlatformToolset "v110" [$VS2012 && $ANALYZE && !$VS2019] // VS 2012 for /analyze
|
||||||
$PlatformToolset "v120_xp" [$VS2013 && !$ANALYZE] // VS 2013 targeting Windows XP - http://msdn.microsoft.com/en-us/library/vstudio/jj851139.aspx
|
$PlatformToolset "v120_xp" [$VS2013 && !$ANALYZE && !$VS2019] // VS 2013 targeting Windows XP - http://msdn.microsoft.com/en-us/library/vstudio/jj851139.aspx
|
||||||
$PlatformToolset "v120" [$VS2013 && $ANALYZE] // VS 2013 for /analyze
|
$PlatformToolset "v120" [$VS2013 && $ANALYZE && !$VS2019] // VS 2013 for /analyze
|
||||||
|
$PlatformToolset "v142" [$VS2019] // VS 2019
|
||||||
}
|
}
|
||||||
|
|
||||||
$General
|
$General
|
||||||
@ -32,6 +33,10 @@ $Configuration
|
|||||||
// warning C4316: object allocated on the heap may not be aligned 16
|
// warning C4316: object allocated on the heap may not be aligned 16
|
||||||
$DisableSpecificWarnings "$BASE;4316" [$VS2013]
|
$DisableSpecificWarnings "$BASE;4316" [$VS2013]
|
||||||
|
|
||||||
|
// warning C4838: conversion requires a narrowing conversion
|
||||||
|
// warning C4456-4459: variable shadowing. TODO: fix those!
|
||||||
|
$DisableSpecificWarnings "$BASE;4316;4838;4456;4457;4458;4459" [$VS2019]
|
||||||
|
|
||||||
// Having lots of warnings makes it harder to notice new, and possibly
|
// Having lots of warnings makes it harder to notice new, and possibly
|
||||||
// important warnings, both on buildbot and in the output window. Lots
|
// important warnings, both on buildbot and in the output window. Lots
|
||||||
// of warnings also makes it harder to skip through errors in the output
|
// of warnings also makes it harder to skip through errors in the output
|
||||||
|
Loading…
Reference in New Issue
Block a user