AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
ActivePoolData Class Reference

#include "PoolMgr.h"

Public Member Functions

template<typename T >
bool IsActiveObject (uint32 db_guid_or_pool_id) const
 
uint32 GetActiveObjectCount (uint32 pool_id) const
 
template<typename T >
void ActivateObject (uint32 db_guid_or_pool_id, uint32 pool_id)
 
template<typename T >
void RemoveObject (uint32 db_guid_or_pool_id, uint32 pool_id)
 
ActivePoolObjects GetActiveQuests () const
 
template<>
bool IsActiveObject (uint32 db_guid) const
 
template<>
bool IsActiveObject (uint32 db_guid) const
 
template<>
bool IsActiveObject (uint32 sub_pool_id) const
 
template<>
bool IsActiveObject (uint32 quest_id) const
 
template<>
void ActivateObject (uint32 db_guid, uint32 pool_id)
 
template<>
void ActivateObject (uint32 db_guid, uint32 pool_id)
 
template<>
void ActivateObject (uint32 sub_pool_id, uint32 pool_id)
 
template<>
void ActivateObject (uint32 quest_id, uint32 pool_id)
 
template<>
void RemoveObject (uint32 db_guid, uint32 pool_id)
 
template<>
void RemoveObject (uint32 db_guid, uint32 pool_id)
 
template<>
void RemoveObject (uint32 sub_pool_id, uint32 pool_id)
 
template<>
void RemoveObject (uint32 quest_id, uint32 pool_id)
 

Private Attributes

ActivePoolObjects mSpawnedCreatures
 
ActivePoolObjects mSpawnedGameobjects
 
ActivePoolObjects mActiveQuests
 
ActivePoolPools mSpawnedPools
 

Detailed Description

Member Function Documentation

◆ ActivateObject() [1/5]

template<>
void ActivePoolData::ActivateObject ( uint32  db_guid,
uint32  pool_id 
)
65{
66 mSpawnedCreatures.insert(db_guid);
67 ++mSpawnedPools[pool_id];
68}
ActivePoolObjects mSpawnedCreatures
Definition: PoolMgr.h:61
ActivePoolPools mSpawnedPools
Definition: PoolMgr.h:64

References mSpawnedCreatures, and mSpawnedPools.

◆ ActivateObject() [2/5]

template<>
void ActivePoolData::ActivateObject ( uint32  db_guid,
uint32  pool_id 
)
72{
73 mSpawnedGameobjects.insert(db_guid);
74 ++mSpawnedPools[pool_id];
75}
ActivePoolObjects mSpawnedGameobjects
Definition: PoolMgr.h:62

References mSpawnedGameobjects, and mSpawnedPools.

◆ ActivateObject() [3/5]

template<typename T >
void ActivePoolData::ActivateObject ( uint32  db_guid_or_pool_id,
uint32  pool_id 
)

◆ ActivateObject() [4/5]

template<>
void ActivePoolData::ActivateObject ( uint32  quest_id,
uint32  pool_id 
)
86{
87 mActiveQuests.insert(quest_id);
88 ++mSpawnedPools[pool_id];
89}
ActivePoolObjects mActiveQuests
Definition: PoolMgr.h:63

References mActiveQuests, and mSpawnedPools.

◆ ActivateObject() [5/5]

template<>
void ActivePoolData::ActivateObject ( uint32  sub_pool_id,
uint32  pool_id 
)
79{
80 mSpawnedPools[sub_pool_id] = 0;
81 ++mSpawnedPools[pool_id];
82}

References mSpawnedPools.

◆ GetActiveObjectCount()

uint32 ActivePoolData::GetActiveObjectCount ( uint32  pool_id) const
30{
31 ActivePoolPools::const_iterator itr = mSpawnedPools.find(pool_id);
32 return itr != mSpawnedPools.end() ? itr->second : 0;
33}

References mSpawnedPools.

Referenced by PoolGroup< T >::SpawnObject().

◆ GetActiveQuests()

ActivePoolObjects ActivePoolData::GetActiveQuests ( ) const
inline
59{ return mActiveQuests; } // a copy of the set

References mActiveQuests.

Referenced by PoolGroup< T >::SpawnObject().

◆ IsActiveObject() [1/5]

template<>
bool ActivePoolData::IsActiveObject ( uint32  db_guid) const
38{
39 return mSpawnedCreatures.find(db_guid) != mSpawnedCreatures.end();
40}

References mSpawnedCreatures.

◆ IsActiveObject() [2/5]

template<>
bool ActivePoolData::IsActiveObject ( uint32  db_guid) const
45{
46 return mSpawnedGameobjects.find(db_guid) != mSpawnedGameobjects.end();
47}

References mSpawnedGameobjects.

◆ IsActiveObject() [3/5]

template<typename T >
bool ActivePoolData::IsActiveObject ( uint32  db_guid_or_pool_id) const

◆ IsActiveObject() [4/5]

template<>
bool ActivePoolData::IsActiveObject ( uint32  quest_id) const
59{
60 return mActiveQuests.find(quest_id) != mActiveQuests.end();
61}

References mActiveQuests.

◆ IsActiveObject() [5/5]

template<>
bool ActivePoolData::IsActiveObject ( uint32  sub_pool_id) const
52{
53 return mSpawnedPools.find(sub_pool_id) != mSpawnedPools.end();
54}

References mSpawnedPools.

◆ RemoveObject() [1/5]

template<>
void ActivePoolData::RemoveObject ( uint32  db_guid,
uint32  pool_id 
)
93{
94 mSpawnedCreatures.erase(db_guid);
95 uint32& val = mSpawnedPools[pool_id];
96 if (val > 0)
97 --val;
98}
std::uint32_t uint32
Definition: Define.h:108

References mSpawnedCreatures, and mSpawnedPools.

◆ RemoveObject() [2/5]

template<>
void ActivePoolData::RemoveObject ( uint32  db_guid,
uint32  pool_id 
)
102{
103 mSpawnedGameobjects.erase(db_guid);
104 uint32& val = mSpawnedPools[pool_id];
105 if (val > 0)
106 --val;
107}

References mSpawnedGameobjects, and mSpawnedPools.

◆ RemoveObject() [3/5]

template<typename T >
void ActivePoolData::RemoveObject ( uint32  db_guid_or_pool_id,
uint32  pool_id 
)

◆ RemoveObject() [4/5]

template<>
void ActivePoolData::RemoveObject ( uint32  quest_id,
uint32  pool_id 
)
120{
121 mActiveQuests.erase(quest_id);
122 uint32& val = mSpawnedPools[pool_id];
123 if (val > 0)
124 --val;
125}

References mActiveQuests, and mSpawnedPools.

◆ RemoveObject() [5/5]

template<>
void ActivePoolData::RemoveObject ( uint32  sub_pool_id,
uint32  pool_id 
)
111{
112 mSpawnedPools.erase(sub_pool_id);
113 uint32& val = mSpawnedPools[pool_id];
114 if (val > 0)
115 --val;
116}

References mSpawnedPools.

Member Data Documentation

◆ mActiveQuests

ActivePoolObjects ActivePoolData::mActiveQuests
private

◆ mSpawnedCreatures

ActivePoolObjects ActivePoolData::mSpawnedCreatures
private

◆ mSpawnedGameobjects

ActivePoolObjects ActivePoolData::mSpawnedGameobjects
private

◆ mSpawnedPools

ActivePoolPools ActivePoolData::mSpawnedPools
private