namespace Components { class StringTable : public Component { public: StringTable(); ~StringTable(); #if defined(DEBUG) || defined(FORCE_UNIT_TESTS) const char* getName() { return "StringTable"; }; #endif private: static Utils::Memory::Allocator MemAllocator; static std::unordered_map StringTableMap; static int Hash(const char* data); static Game::StringTable* LoadObject(std::string filename); }; }