You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
1.3 KiB
35 lines
1.3 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: Pool of all per-level strings. Allocates memory for strings, |
|
// consolodating duplicates. The memory is freed on behalf of clients |
|
// at level transition. Strings are of type string_t. |
|
// |
|
// $NoKeywords: $ |
|
//=============================================================================// |
|
|
|
#ifndef GAMESTRINGPOOL_H |
|
#define GAMESTRINGPOOL_H |
|
|
|
#if defined( _WIN32 ) |
|
#pragma once |
|
#endif |
|
|
|
//----------------------------------------------------------------------------- |
|
// String allocation |
|
//----------------------------------------------------------------------------- |
|
string_t AllocPooledString( const char *pszValue ); |
|
string_t AllocPooledString_StaticConstantStringPointer( const char *pszGlobalConstValue ); |
|
string_t FindPooledString( const char *pszValue ); |
|
|
|
#define AssertIsValidString( s ) AssertMsg( s == NULL_STRING || s == FindPooledString( STRING(s) ), "Invalid string " #s ); |
|
|
|
#ifndef GC |
|
//----------------------------------------------------------------------------- |
|
// String system accessor |
|
//----------------------------------------------------------------------------- |
|
class IGameSystem; |
|
|
|
IGameSystem *GameStringSystem(); |
|
#endif // #ifndef GC |
|
|
|
#endif // GAMESTRINGPOOL_H
|
|
|