TrinityCore
|
#include <LFGQueue.h>
Public Member Functions | |
std::string | GetDetailedMatchRoles (GuidList const &check) const |
void | AddToQueue (ObjectGuid guid, bool reAdd=false) |
void | RemoveFromQueue (ObjectGuid guid) |
void | AddQueueData (ObjectGuid guid, time_t joinTime, LfgDungeonSet const &dungeons, LfgRolesMap const &rolesMap) |
void | RemoveQueueData (ObjectGuid guid) |
void | UpdateWaitTimeAvg (int32 waitTime, uint32 dungeonId) |
void | UpdateWaitTimeTank (int32 waitTime, uint32 dungeonId) |
void | UpdateWaitTimeHealer (int32 waitTime, uint32 dungeonId) |
void | UpdateWaitTimeDps (int32 waitTime, uint32 dungeonId) |
void | UpdateQueueTimers (uint8 queueId, time_t currTime) |
time_t | GetJoinTime (ObjectGuid guid) const |
uint8 | FindGroups () |
std::string | DumpQueueInfo () const |
std::string | DumpCompatibleInfo (bool full=false) const |
Private Member Functions | |
void | SetQueueUpdateData (std::string const &strGuids, LfgRolesMap const &proposalRoles) |
void | AddToNewQueue (ObjectGuid guid) |
void | AddToCurrentQueue (ObjectGuid guid) |
void | AddToFrontCurrentQueue (ObjectGuid guid) |
void | RemoveFromNewQueue (ObjectGuid guid) |
void | RemoveFromCurrentQueue (ObjectGuid guid) |
void | SetCompatibles (std::string const &key, LfgCompatibility compatibles) |
LfgCompatibility | GetCompatibles (std::string const &key) |
void | RemoveFromCompatibles (ObjectGuid guid) |
void | SetCompatibilityData (std::string const &key, LfgCompatibilityData const &compatibles) |
LfgCompatibilityData * | GetCompatibilityData (std::string const &key) |
void | FindBestCompatibleInQueue (LfgQueueDataContainer::iterator itrQueue) |
void | UpdateBestCompatibleInQueue (LfgQueueDataContainer::iterator itrQueue, std::string const &key, LfgRolesMap const &roles) |
LfgCompatibility | FindNewGroups (GuidList &check, GuidList &all) |
LfgCompatibility | CheckCompatibility (GuidList check) |
Private Attributes | |
LfgQueueDataContainer | QueueDataStore |
Queued groups. More... | |
LfgCompatibleContainer | CompatibleMapStore |
Compatible dungeons. More... | |
LfgWaitTimesContainer | waitTimesAvgStore |
Average wait time to find a group queuing as multiple roles. More... | |
LfgWaitTimesContainer | waitTimesTankStore |
Average wait time to find a group queuing as tank. More... | |
LfgWaitTimesContainer | waitTimesHealerStore |
Average wait time to find a group queuing as healer. More... | |
LfgWaitTimesContainer | waitTimesDpsStore |
Average wait time to find a group queuing as dps. More... | |
GuidList | currentQueueStore |
Ordered list. Used to find groups. More... | |
GuidList | newToQueueStore |
New groups to add to queue. More... | |
Stores all data related to queue
Definition at line 85 of file LFGQueue.h.
void lfg::LFGQueue::AddQueueData | ( | ObjectGuid | guid, |
time_t | joinTime, | ||
LfgDungeonSet const & | dungeons, | ||
LfgRolesMap const & | rolesMap | ||
) |
Definition at line 188 of file LFGQueue.cpp.
|
private |
|
private |
|
private |
void lfg::LFGQueue::AddToQueue | ( | ObjectGuid | guid, |
bool | reAdd = false |
||
) |
Definition at line 123 of file LFGQueue.cpp.
|
private |
Check compatibilities between groups. If group is Matched proposal will be created
[in] | check | List of guids to check compatibilities |
Definition at line 358 of file LFGQueue.cpp.
std::string lfg::LFGQueue::DumpCompatibleInfo | ( | bool | full = false | ) | const |
std::string lfg::LFGQueue::DumpQueueInfo | ( | ) | const |
|
private |
Definition at line 695 of file LFGQueue.cpp.
uint8 lfg::LFGQueue::FindGroups | ( | ) |
|
private |
Checks que main queue to try to form a Lfg group. Returns first match found (if any)
[in] | check | List of guids trying to match with other groups |
[in] | all | List of all other guids in main queue to match against |
Definition at line 320 of file LFGQueue.cpp.
|
private |
Definition at line 279 of file LFGQueue.cpp.
|
private |
Get the compatibility of a group of guids
[in] | key | String concatenation of guids (| used as separator) |
Definition at line 270 of file LFGQueue.cpp.
std::string lfg::LFGQueue::GetDetailedMatchRoles | ( | GuidList const & | check | ) | const |
Definition at line 86 of file LFGQueue.cpp.
time_t lfg::LFGQueue::GetJoinTime | ( | ObjectGuid | guid | ) | const |
|
private |
Remove from cached compatible dungeons any entry that contains the given guid
[in] | guid | Guid to remove from compatible cache |
Definition at line 234 of file LFGQueue.cpp.
|
private |
|
private |
void lfg::LFGQueue::RemoveFromQueue | ( | ObjectGuid | guid | ) |
Definition at line 138 of file LFGQueue.cpp.
void lfg::LFGQueue::RemoveQueueData | ( | ObjectGuid | guid | ) |
Definition at line 194 of file LFGQueue.cpp.
|
private |
|
private |
Stores the compatibility of a list of guids
[in] | key | String concatenation of guids (| used as separator) |
[in] | compatibles | type of compatibility |
Definition at line 253 of file LFGQueue.cpp.
|
private |
|
private |
Definition at line 708 of file LFGQueue.cpp.
void lfg::LFGQueue::UpdateQueueTimers | ( | uint8 | queueId, |
time_t | currTime | ||
) |
|
private |
Compatible dungeons.
Definition at line 136 of file LFGQueue.h.
|
private |
Ordered list. Used to find groups.
Definition at line 142 of file LFGQueue.h.
|
private |
New groups to add to queue.
Definition at line 143 of file LFGQueue.h.
|
private |
Queued groups.
Definition at line 135 of file LFGQueue.h.
|
private |
Average wait time to find a group queuing as multiple roles.
Definition at line 138 of file LFGQueue.h.
|
private |
Average wait time to find a group queuing as dps.
Definition at line 141 of file LFGQueue.h.
|
private |
Average wait time to find a group queuing as healer.
Definition at line 140 of file LFGQueue.h.
|
private |
Average wait time to find a group queuing as tank.
Definition at line 139 of file LFGQueue.h.