Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
HashMapHolder< T > Class Template Reference

#include <ObjectAccessor.h>

Public Types

typedef UNORDERED_MAP< uint64, T * > MapType

Static Public Member Functions

static T * Find (uint64 guid)
static MapTypeGetContainer ()
static SF_SHARED_MUTEXGetLock ()
static void Insert (T *o)
static void Remove (T *o)

Private Member Functions

 HashMapHolder ()

Static Private Attributes

static SF_SHARED_MUTEX i_lock
static MapType m_objectMap

Detailed Description

template<class T>
class HashMapHolder< T >

Definition at line 33 of file ObjectAccessor.h.

Member Typedef Documentation

◆ MapType

template<class T>
typedef UNORDERED_MAP<uint64, T*> HashMapHolder< T >::MapType

Definition at line 36 of file ObjectAccessor.h.

Constructor & Destructor Documentation

◆ HashMapHolder()

template<class T>
HashMapHolder< T >::HashMapHolder ( )
inlineprivate

Definition at line 51 of file ObjectAccessor.h.

Member Function Documentation

◆ Find()

◆ GetContainer()

template<class T>
auto HashMapHolder< T >::GetContainer ( )
static

◆ GetLock()

◆ Insert()

template<class T>
void HashMapHolder< T >::Insert ( T * o)
static

Definition at line 31 of file ObjectAccessor.cpp.

References GetContainer(), GetLock(), and SF_UNIQUE_GUARD.

Referenced by ObjectAccessor::AddObject().

◆ Remove()

template<class T>
void HashMapHolder< T >::Remove ( T * o)
static

Definition at line 38 of file ObjectAccessor.cpp.

References GetContainer(), GetLock(), and SF_UNIQUE_GUARD.

Referenced by ObjectAccessor::RemoveObject().

Member Data Documentation

◆ i_lock

template<class T>
SF_SHARED_MUTEX HashMapHolder< T >::i_lock
staticprivate

Definition at line 52 of file ObjectAccessor.h.

Referenced by GetLock().

◆ m_objectMap

template<class T>
MapType HashMapHolder< T >::m_objectMap
staticprivate

Definition at line 53 of file ObjectAccessor.h.

Referenced by GetContainer().


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