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

#include "UpdateTime.h"

Inheritance diagram for WorldUpdateTime:
UpdateTime

Public Member Functions

 WorldUpdateTime ()
 
void LoadFromConfig ()
 
void SetRecordUpdateTimeInterval (Milliseconds t)
 
void RecordUpdateTime (Milliseconds gameTimeMs, uint32 diff, uint32 sessionCount)
 
void RecordUpdateTimeDuration (std::string const &text)
 
- Public Member Functions inherited from UpdateTime
uint32 GetAverageUpdateTime () const
 
uint32 GetTimeWeightedAverageUpdateTime () const
 
uint32 GetMaxUpdateTime () const
 
uint32 GetMaxUpdateTimeOfCurrentTable () const
 
uint32 GetLastUpdateTime () const
 
void UpdateWithDiff (uint32 diff)
 
void RecordUpdateTimeReset ()
 

Private Attributes

Milliseconds _recordUpdateTimeInverval
 
Milliseconds _recordUpdateTimeMin
 
Milliseconds _lastRecordTime
 

Additional Inherited Members

- Protected Member Functions inherited from UpdateTime
 UpdateTime ()
 

Detailed Description

Constructor & Destructor Documentation

◆ WorldUpdateTime()

WorldUpdateTime::WorldUpdateTime ( )
inline
UpdateTime()
Definition: UpdateTime.cpp:26
Milliseconds _recordUpdateTimeInverval
Definition: UpdateTime.h:68
Milliseconds _recordUpdateTimeMin
Definition: UpdateTime.h:69
Milliseconds _lastRecordTime
Definition: UpdateTime.h:70

Member Function Documentation

◆ LoadFromConfig()

void WorldUpdateTime::LoadFromConfig ( )
104{
105 _recordUpdateTimeInverval = Milliseconds(sConfigMgr->GetOption<uint32>("RecordUpdateTimeDiffInterval", 60000));
106 _recordUpdateTimeMin = Milliseconds(sConfigMgr->GetOption<uint32>("MinRecordUpdateTimeDiff", 100));
107}
#define sConfigMgr
Definition: Config.h:95
std::uint32_t uint32
Definition: Define.h:108
std::chrono::milliseconds Milliseconds
Milliseconds shorthand typedef.
Definition: Duration.h:27

References _recordUpdateTimeInverval, _recordUpdateTimeMin, and sConfigMgr.

Referenced by World::LoadConfigSettings().

◆ RecordUpdateTime()

void WorldUpdateTime::RecordUpdateTime ( Milliseconds  gameTimeMs,
uint32  diff,
uint32  sessionCount 
)
115{
116 if (_recordUpdateTimeInverval > 0s && diff > _recordUpdateTimeMin.count())
117 {
119 {
120 LOG_INFO("time.update", "Update time diff: {}. Players online: {}.", GetAverageUpdateTime(), sessionCount);
121 _lastRecordTime = gameTimeMs;
122 }
123 }
124}
#define LOG_INFO(filterType__,...)
Definition: Log.h:165
Milliseconds GetMSTimeDiff(Milliseconds oldMSTime, Milliseconds newMSTime)
Definition: Timer.h:91
uint32 GetAverageUpdateTime() const
Definition: UpdateTime.cpp:38

References _lastRecordTime, _recordUpdateTimeInverval, _recordUpdateTimeMin, UpdateTime::GetAverageUpdateTime(), GetMSTimeDiff(), and LOG_INFO.

Referenced by World::Update().

◆ RecordUpdateTimeDuration()

void WorldUpdateTime::RecordUpdateTimeDuration ( std::string const &  text)

◆ SetRecordUpdateTimeInterval()

void WorldUpdateTime::SetRecordUpdateTimeInterval ( Milliseconds  t)
110{
112}

References _recordUpdateTimeInverval.

Member Data Documentation

◆ _lastRecordTime

Milliseconds WorldUpdateTime::_lastRecordTime
private

Referenced by RecordUpdateTime().

◆ _recordUpdateTimeInverval

Milliseconds WorldUpdateTime::_recordUpdateTimeInverval
private

◆ _recordUpdateTimeMin

Milliseconds WorldUpdateTime::_recordUpdateTimeMin
private

Referenced by LoadFromConfig(), and RecordUpdateTime().