summaryrefslogtreecommitdiff
path: root/game/client/cdll_client_int.h
diff options
context:
space:
mode:
authorFluorescentCIAAfricanAmerican <[email protected]>2020-04-22 12:56:21 -0400
committerFluorescentCIAAfricanAmerican <[email protected]>2020-04-22 12:56:21 -0400
commit3bf9df6b2785fa6d951086978a3e66f49427166a (patch)
tree2c0f1f0c63c4832882bc93814ebd2c2b1c6224e5 /game/client/cdll_client_int.h
downloadarchived-source-engine-2018-hl2-src-master.tar.xz
archived-source-engine-2018-hl2-src-master.zip
Diffstat (limited to 'game/client/cdll_client_int.h')
-rw-r--r--game/client/cdll_client_int.h180
1 files changed, 180 insertions, 0 deletions
diff --git a/game/client/cdll_client_int.h b/game/client/cdll_client_int.h
new file mode 100644
index 0000000..c245633
--- /dev/null
+++ b/game/client/cdll_client_int.h
@@ -0,0 +1,180 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+// $NoKeywords: $
+//===========================================================================//
+
+#ifndef CDLL_CLIENT_INT_H
+#define CDLL_CLIENT_INT_H
+#ifdef _WIN32
+#pragma once
+#endif
+
+#include "iclientnetworkable.h"
+#include "utllinkedlist.h"
+#include "cdll_int.h"
+#include "eiface.h"
+
+
+class IVModelRender;
+class IVEngineClient;
+class IVModelRender;
+class IVEfx;
+class IVRenderView;
+class IVDebugOverlay;
+class IMaterialSystem;
+class IMaterialSystemStub;
+class IDataCache;
+class IMDLCache;
+class IVModelInfoClient;
+class IEngineVGui;
+class ISpatialPartition;
+class IBaseClientDLL;
+class ISpatialPartition;
+class IFileSystem;
+class IStaticPropMgrClient;
+class IShadowMgr;
+class IEngineSound;
+class IMatSystemSurface;
+class IMaterialSystemHardwareConfig;
+class ISharedGameRules;
+class IEngineTrace;
+class IGameUIFuncs;
+class IGameEventManager2;
+class IPhysicsGameTrace;
+class CGlobalVarsBase;
+class IClientTools;
+class C_BaseAnimating;
+class IColorCorrectionSystem;
+class IInputSystem;
+class ISceneFileCache;
+class IXboxSystem; // Xbox 360 only
+class IMatchmaking;
+class IVideoServices;
+class CSteamAPIContext;
+class IClientReplayContext;
+class IReplayManager;
+class IEngineReplay;
+class IEngineClientReplay;
+class IReplayScreenshotManager;
+class CSteamID;
+
+//=============================================================================
+// HPE_BEGIN
+// [dwenger] Necessary for stats display
+//=============================================================================
+
+class AchievementsAndStatsInterface;
+
+//=============================================================================
+// HPE_END
+//=============================================================================
+
+extern IVModelRender *modelrender;
+extern IVEngineClient *engine;
+extern IVModelRender *modelrender;
+extern IVEfx *effects;
+extern IVRenderView *render;
+extern IVDebugOverlay *debugoverlay;
+extern IMaterialSystem *materials;
+extern IMaterialSystemStub *materials_stub;
+extern IMaterialSystemHardwareConfig *g_pMaterialSystemHardwareConfig;
+extern IDataCache *datacache;
+extern IMDLCache *mdlcache;
+extern IVModelInfoClient *modelinfo;
+extern IEngineVGui *enginevgui;
+extern ISpatialPartition* partition;
+extern IBaseClientDLL *clientdll;
+extern IFileSystem *filesystem;
+extern IStaticPropMgrClient *staticpropmgr;
+extern IShadowMgr *shadowmgr;
+extern IEngineSound *enginesound;
+extern IMatSystemSurface *g_pMatSystemSurface;
+extern IEngineTrace *enginetrace;
+extern IGameUIFuncs *gameuifuncs;
+extern IGameEventManager2 *gameeventmanager;
+extern IPhysicsGameTrace *physgametrace;
+extern CGlobalVarsBase *gpGlobals;
+extern IClientTools *clienttools;
+extern IInputSystem *inputsystem;
+extern ISceneFileCache *scenefilecache;
+extern IXboxSystem *xboxsystem; // Xbox 360 only
+extern IMatchmaking *matchmaking;
+extern IVideoServices *g_pVideo;
+extern IUploadGameStats *gamestatsuploader;
+extern CSteamAPIContext *steamapicontext;
+extern IReplaySystem *g_pReplay;
+extern IClientReplayContext *g_pClientReplayContext;
+extern IReplayManager *g_pReplayManager;
+extern IReplayScreenshotManager *g_pReplayScreenshotManager;
+extern IEngineReplay *g_pEngineReplay;
+extern IEngineClientReplay *g_pEngineClientReplay;
+
+//=============================================================================
+// HPE_BEGIN
+// [dwenger] Necessary for stats display
+//=============================================================================
+
+extern AchievementsAndStatsInterface* g_pAchievementsAndStatsInterface;
+
+//=============================================================================
+// HPE_END
+//=============================================================================
+
+// Set to true between LevelInit and LevelShutdown.
+extern bool g_bLevelInitialized;
+extern bool g_bTextMode;
+
+// Kyle says: this is here to obsfucate our accessing of the g_bTextMode variable and for no other purpose.
+// See the mess of TF_ANTI_IDLEBOT_VERIFICATION code. If that code doesn't exist anymore, this
+// probably also doesn't need to exist anymore.
+//
+// On a suggestion from Joe, we also point it to an incomplete type.
+extern class IClientPurchaseInterfaceV2 *g_pClientPurchaseInterface;
+
+
+// Returns true if a new OnDataChanged event is registered for this frame.
+bool AddDataChangeEvent( IClientNetworkable *ent, DataUpdateType_t updateType, int *pStoredEvent );
+
+void ClearDataChangedEvent( int iStoredEvent );
+
+//-----------------------------------------------------------------------------
+// Precaches a material
+//-----------------------------------------------------------------------------
+void PrecacheMaterial( const char *pMaterialName );
+
+//-----------------------------------------------------------------------------
+// Converts a previously precached material into an index
+//-----------------------------------------------------------------------------
+int GetMaterialIndex( const char *pMaterialName );
+
+//-----------------------------------------------------------------------------
+// Converts precached material indices into strings
+//-----------------------------------------------------------------------------
+const char *GetMaterialNameFromIndex( int nIndex );
+
+//-----------------------------------------------------------------------------
+// Precache-related methods for particle systems
+//-----------------------------------------------------------------------------
+void PrecacheParticleSystem( const char *pParticleSystemName );
+int GetParticleSystemIndex( const char *pParticleSystemName );
+const char *GetParticleSystemNameFromIndex( int nIndex );
+
+
+//-----------------------------------------------------------------------------
+// Called during bone setup to test perf
+//-----------------------------------------------------------------------------
+void TrackBoneSetupEnt( C_BaseAnimating *pEnt );
+
+bool IsEngineThreaded();
+
+#ifndef NO_STEAM
+
+/// Returns Steam ID, given player index. Returns an invalid SteamID upon
+/// failure
+extern CSteamID GetSteamIDForPlayerIndex( int iPlayerIndex );
+
+#endif
+
+#endif // CDLL_CLIENT_INT_H