aboutsummaryrefslogtreecommitdiff
path: root/mp/src/public/vstdlib/IKeyValuesSystem.h
diff options
context:
space:
mode:
authorJohn Schoenick <[email protected]>2015-09-09 18:35:41 -0700
committerJohn Schoenick <[email protected]>2015-09-09 18:35:41 -0700
commit0d8dceea4310fde5706b3ce1c70609d72a38efdf (patch)
treec831ef32c2c801a5c5a80401736b52c7b5a528ec /mp/src/public/vstdlib/IKeyValuesSystem.h
parentUpdated the SDK with the latest code from the TF and HL2 branches. (diff)
downloadsource-sdk-2013-master.tar.xz
source-sdk-2013-master.zip
Updated the SDK with the latest code from the TF and HL2 branches.HEADmaster
Diffstat (limited to 'mp/src/public/vstdlib/IKeyValuesSystem.h')
-rw-r--r--mp/src/public/vstdlib/IKeyValuesSystem.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/mp/src/public/vstdlib/IKeyValuesSystem.h b/mp/src/public/vstdlib/IKeyValuesSystem.h
index 1bd5a8ab..e999dd81 100644
--- a/mp/src/public/vstdlib/IKeyValuesSystem.h
+++ b/mp/src/public/vstdlib/IKeyValuesSystem.h
@@ -16,6 +16,9 @@
typedef int HKeySymbol;
#define INVALID_KEY_SYMBOL (-1)
+class IBaseFileSystem;
+class KeyValues;
+
//-----------------------------------------------------------------------------
// Purpose: Interface to shared data repository for KeyValues (included in vgui_controls.lib)
// allows for central data storage point of KeyValues symbol table
@@ -39,6 +42,12 @@ public:
// for debugging, adds KeyValues record into global list so we can track memory leaks
virtual void AddKeyValuesToMemoryLeakList(void *pMem, HKeySymbol name) = 0;
virtual void RemoveKeyValuesFromMemoryLeakList(void *pMem) = 0;
+
+ // maintain a cache of KeyValues we load from disk. This saves us quite a lot of time on app startup.
+ virtual void AddFileKeyValuesToCache( const KeyValues* _kv, const char *resourceName, const char *pathID ) = 0;
+ virtual bool LoadFileKeyValuesFromCache( KeyValues* _outKv, const char *resourceName, const char *pathID, IBaseFileSystem *filesystem ) const = 0;
+ virtual void InvalidateCache( ) = 0;
+ virtual void InvalidateCacheForFile( const char *resourceName, const char *pathID ) = 0;
};
VSTDLIB_INTERFACE IKeyValuesSystem *KeyValuesSystem();