Team Fortress 2 Source Code as on 22/4/2020
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.
|
|
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================//
#ifndef NETWORKSTRINGTABLECONTAINERSERVER_H
#define NETWORKSTRINGTABLECONTAINERSERVER_H
#ifdef _WIN32
#pragma once
#endif
#include "inetworkstringtableserver.h"
#include "utlvector.h"
#include "bitbuf.h"
class CNetworkStringTableServer; class client_t; class bf_write_t;
//-----------------------------------------------------------------------------
// Purpose: Implements game .dll string table interface
//-----------------------------------------------------------------------------
class CNetworkStringTableContainerServer : public INetworkStringTableServer { public: // Contstruction
CNetworkStringTableContainerServer( void ); ~CNetworkStringTableContainerServer( void );
// Implement INetworkStringTableServer
virtual TABLEID CreateStringTable( const char *tableName, int maxentries ); virtual int GetNumStrings( TABLEID stringTable ); virtual int GetMaxStrings( TABLEID stringTable );
virtual int AddString( TABLEID stringTable, const char *value, int length = 0, const void *userdata = 0 ); virtual void SetString( TABLEID stringTable, int stringNumber, const char *value ); virtual void SetStringUserData( TABLEID stringTable, int stringNumber, int length = 0, const void *userdata = 0 ); virtual const char *GetString( TABLEID stringTable, int stringNumber ); virtual const void *GetStringUserData( TABLEID stringTable, int stringNumber, int *length = 0 );
virtual int FindStringIndex( TABLEID stringTable, char const *string );
virtual const char *GetTableName( TABLEID stringTable );
// Table accessors
TABLEID FindTable( const char *tableName ); CNetworkStringTableServer *GetTable( TABLEID stringTable );
// Delete all tables
void RemoveAllTables( void );
// Guards so game .dll can't create tables at the wrong time
void AllowCreation( void ); void DisallowCreation( void );
// Print table data to console
void Dump( void );
private: // Guard
bool m_bAllowCreation;
CUtlVector < CNetworkStringTableServer * > m_Tables; };
extern CNetworkStringTableContainerServer *networkStringTableContainerServer;
#endif // NETWORKSTRINGTABLECONTAINERSERVER_H
|