Plasma Engine  2.0
Loading...
Searching...
No Matches
plTagRegistry Class Reference

The tag registry for tags in tag sets. More...

#include <TagRegistry.h>

Public Member Functions

const plTagRegisterTag (plStringView sTagString)
 Ensures the tag with the given name exists and returns a pointer to it.
 
const plTagRegisterTag (const plHashedString &sTagString)
 Ensures the tag with the given name exists and returns a pointer to it.
 
const plTagGetTagByName (const plTempHashedString &sTagString) const
 Searches for a tag with the given name and returns a pointer to it.
 
const plTagGetTagByMurmurHash (plUInt32 uiMurmurHash) const
 Searches for a tag with the given murmur hash. This function is only for backwards compatibility.
 
const plTagGetTagByIndex (plUInt32 uiIndex) const
 Returns the tag with the given index.
 
plUInt32 GetNumTags () const
 Returns the number of registered tags.
 
plResult Load (plStreamReader &inout_stream)
 Loads the saved state and integrates it into this registry. Does not discard previously registered tag information. This function is only for backwards compatibility.
 

Static Public Member Functions

static plTagRegistryGetGlobalRegistry ()
 

Protected Attributes

plMutex m_TagRegistryMutex
 
plMap< plTempHashedString, plTagm_RegisteredTags
 
plDeque< plTag * > m_TagsByIndex
 

Detailed Description

The tag registry for tags in tag sets.

Normal usage of the tag registry is to get the global tag registry instance via plTagRegistry::GetGlobalRegistry() and to use this instance to register and get tags. Certain special cases (e.g. tests) may actually need their own instance of the tag registry. Note however that tags which were registered with one registry shouldn't be used with tag sets filled with tags from another registry since there may be conflicting tag assignments. The tag registry registration and tag retrieval functions are thread safe due to a mutex.


The documentation for this class was generated from the following files: