mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-19 03:45:43 +00:00
Refactoring part 2 [W.I.P]
This commit is contained in:
@@ -1,27 +0,0 @@
|
||||
#ifndef __SAVINGSYSTEM_H
|
||||
#define __SAVINGSYSTEM_H
|
||||
|
||||
#include "Common.h"
|
||||
|
||||
// to evenly distribute saving players to db
|
||||
|
||||
class SavingSystemMgr
|
||||
{
|
||||
public:
|
||||
static void Update(uint32 diff);
|
||||
|
||||
static uint32 GetSavingCurrentValue() { return m_savingCurrentValue; } // modified only during single thread
|
||||
static uint32 GetSavingMaxValue() { return m_savingMaxValueAssigned; } // modified only during single thread
|
||||
static void IncreaseSavingCurrentValue(uint32 inc) { m_savingCurrentValue += inc; } // used and modified only during single thread
|
||||
static uint32 IncreaseSavingMaxValue(uint32 inc) { TRINITY_GUARD(ACE_Thread_Mutex, _savingLock); return (m_savingMaxValueAssigned += inc); }
|
||||
static void InsertToSavingSkipListIfNeeded(uint32 id) { if (id > m_savingCurrentValue) { TRINITY_GUARD(ACE_Thread_Mutex, _savingLock); m_savingSkipList.push_back(id); } }
|
||||
|
||||
protected:
|
||||
static uint32 m_savingCurrentValue;
|
||||
static uint32 m_savingMaxValueAssigned;
|
||||
static uint32 m_savingDiffSum;
|
||||
static std::list<uint32> m_savingSkipList;
|
||||
static ACE_Thread_Mutex _savingLock;
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user