Pyrogenesis  trunk
Classes | Macros | Typedefs | Functions | Variables
CStrIntern.cpp File Reference
#include "precompiled.h"
#include "CStrIntern.h"
#include "lib/fnv_hash.h"
#include "ps/CLogger.h"
#include <boost/unordered_map.hpp>
#include "CStrInternStatic.h"
Include dependency graph for CStrIntern.cpp:

Classes

class  CStrInternInternals
 
struct  StringsKeyHash
 
struct  StringsKeyProxy
 
struct  StringsKeyProxyHash
 
struct  StringsKeyProxyEq
 

Macros

#define X(id)   CStrIntern str_##id(#id);
 
#define X2(id, str)   CStrIntern str_##id(str);
 

Typedefs

typedef std::string StringsKey
 

Functions

static CStrInternInternalsGetString (const char *str, size_t len)
 

Variables

static boost::unordered_map< StringsKey, shared_ptr< CStrInternInternals >, StringsKeyHashg_Strings
 

Macro Definition Documentation

#define X (   id)    CStrIntern str_##id(#id);
#define X2 (   id,
  str 
)    CStrIntern str_##id(str);

Typedef Documentation

typedef std::string StringsKey

Function Documentation

static CStrInternInternals* GetString ( const char *  str,
size_t  len 
)
static

Variable Documentation

boost::unordered_map<StringsKey, shared_ptr<CStrInternInternals>, StringsKeyHash> g_Strings
static