1 #ifndef MHO_ClassIdentityMap_HH__
2 #define MHO_ClassIdentityMap_HH__
55 std::string name = MHO_ClassIdentity::ClassName< XClassType >();
80 template<
typename XClassType >
void AddClassType(
const XClassType& obj)
122 std::map< MHO_UUID, std::string >::const_iterator it =
fUUID2ClassName.find(uuid);
125 return std::string(it->second);
129 return std::string(
"unknown");
157 std::string name = MHO_ClassIdentity::ClassName< XClassType >();
Class MHO_ClassIdentityMap.
Definition: MHO_ClassIdentityMap.hh:30
void AddClassType(const XClassType &obj)
Function AddClassType, overload provided for passing object reference.
Definition: MHO_ClassIdentityMap.hh:80
std::string GetClassNameFromObject(const XClassType &obj)
Getter for class name from object.
Definition: MHO_ClassIdentityMap.hh:108
std::map< MHO_UUID, MHO_JSONConverter * > fJSONConverterMap
Definition: MHO_ClassIdentityMap.hh:217
MHO_UUID GetUUIDFromClassName(const std::string &name) const
Getter for uuid from class name.
Definition: MHO_ClassIdentityMap.hh:139
MHO_UUID GetUUIDFor() const
Getter for uuid for a class type.
Definition: MHO_ClassIdentityMap.hh:155
std::map< MHO_UUID, std::string > fUUID2ClassName
Definition: MHO_ClassIdentityMap.hh:214
MHO_MD5HashGenerator fMD5Generator
Definition: MHO_ClassIdentityMap.hh:211
std::map< MHO_UUID, MHO_SerializableObjectFactory * > fFactoryMap
Definition: MHO_ClassIdentityMap.hh:216
void AddToMap(const MHO_UUID &type_uuid, const std::string &name)
Adds an entry to the UUID-name map and its reverse map.
Definition: MHO_ClassIdentityMap.hh:207
std::map< std::string, MHO_UUID > fClassName2UUID
Definition: MHO_ClassIdentityMap.hh:215
void AddClassType()
Function AddClassType, adds a class of a particular type to the identity map.
Definition: MHO_ClassIdentityMap.hh:52
std::string GetClassNameFromUUID(const MHO_UUID &uuid) const
Getter for class name from uuid.
Definition: MHO_ClassIdentityMap.hh:120
virtual ~MHO_ClassIdentityMap()
Definition: MHO_ClassIdentityMap.hh:34
bool IsTypePresent(const MHO_UUID &uuid) const
Checks if a UUID is present in the class name map.
Definition: MHO_ClassIdentityMap.hh:167
MHO_ClassIdentityMap()
Definition: MHO_ClassIdentityMap.hh:32
MHO_Serializable * GenerateContainerFromUUID(const MHO_UUID &uuid)
Generates a container from a UUID and returns a ptr to MHO_Serializable if found in factory map.
Definition: MHO_ClassIdentityMap.hh:187
Class MHO_ContainerJSONConverter.
Definition: MHO_ContainerJSONConverter.hh:194
Class MHO_MD5HashGenerator declares the concrete class which does the work for file streams.
Definition: MHO_MD5HashGenerator.hh:135
void Finalize()
Finalizes the MD5 hash calculation and stores the result in fDigest.
Definition: MHO_MD5HashGenerator.hh:156
MHO_UUID GetDigestAsUUID()
Getter for digest as uuid.
Definition: MHO_MD5HashGenerator.hh:182
void Initialize()
Recursive function to initialize a game state.
Definition: MHO_MD5HashGenerator.hh:144
Class MHO_SerializableObjectFactorySpecific.
Definition: MHO_SerializableObjectFactory.hh:68
Class MHO_Serializable.
Definition: MHO_Serializable.hh:26
Class MHO_UUID - a class for a 16 byte UUID (for object and type identification)
Definition: MHO_UUID.hh:27
Definition: MHO_ChannelLabeler.hh:17
static std::string ClassName()
Returns the class name as a string.
Definition: MHO_ClassIdentity.hh:36