core/ADTFactory.h
author Scott Ehlert <ds@alliedmods.net>
Sun Jul 15 08:00:26 2007 +0000 (2007-07-15)
changeset 1116 40cc5e9f0f1b
parent 1057 de136462a416
child 1231 17badaf66ce4
permissions -rw-r--r--
Removed strange debugging code
dvander@1028
     1
#include <IADTFactory.h>
dvander@1028
     2
#include "sm_globals.h"
dvander@1028
     3
#include "sm_trie.h"
dvander@1028
     4
dvander@1028
     5
using namespace SourceMod;
dvander@1028
     6
dvander@1028
     7
class BaseTrie : public IBasicTrie
dvander@1028
     8
{
dvander@1028
     9
public:
dvander@1028
    10
	BaseTrie();
dvander@1028
    11
	virtual ~BaseTrie();
dvander@1028
    12
	virtual bool Insert(const char *key, void *value);
dvander@1057
    13
	virtual bool Replace(const char *key, void *value);
dvander@1028
    14
	virtual bool Retrieve(const char *key, void **value);
dvander@1028
    15
	virtual bool Delete(const char *key);
dvander@1028
    16
	virtual void Clear();
dvander@1028
    17
	virtual void Destroy();
dvander@1028
    18
private:
dvander@1028
    19
	Trie *m_pTrie;
dvander@1028
    20
};
dvander@1028
    21
dvander@1028
    22
class ADTFactory : 
dvander@1028
    23
	public SMGlobalClass,
dvander@1028
    24
	public IADTFactory
dvander@1028
    25
{
dvander@1028
    26
public: //SMInterface
dvander@1028
    27
	const char *GetInterfaceName();
dvander@1028
    28
	unsigned int GetInterfaceVersion();
dvander@1028
    29
public: //SMGlobalClass
dvander@1028
    30
	void OnSourceModAllInitialized();
dvander@1028
    31
public: //IADTFactory
dvander@1028
    32
	IBasicTrie *CreateBasicTrie();
dvander@1028
    33
};
dvander@1028
    34