rodecomp/Source/UI/Cooldowns/CooldownOwner.cpp
ragnarok-clanker 07897c8bea Maintenance: Annotation cleanup, no code change (resubmission of 10984). Every // FUNCTION: line now has // OFFSET: <its address from
Batch #11163 by ragnarok-clanker: no function's compiled code changes; checked with 226 compiled unit(s), including every includer of Source/Client/Application/UnhandledExceptionHandler.h, Source/Contents/ReputeMgrLoad.inl, Source/Render/RenderSystemBase.h, Source/UI/Lists/UIListBoxTemplate.h, Source/Utility/Async/NRecycleObject.h.
2026-11-04 21:29:46 +00:00

61 lines
1.4 KiB
C++

#include "UI/Cooldowns/CooldownOwner.h"
// INLINED
CooldownOwner::CooldownOwner() : m_initialized(false) {
this->m_drawing.normal.clear();
this->m_drawing.reverse.clear();
this->m_values.clear();
this->m_initialized = true;
}
// OFFSET: 0x00CA61A0
// FUNCTION: fn_20957
void CooldownOwner::Register(unsigned id, std::uint32_t duration, std::uint32_t start, std::uint32_t elapsed) {
this->m_values.erase(id);
this->m_values.emplace(id, CooldownState(0, 0, 0, duration, start, elapsed, 1));
}
// OFFSET: 0x00CA64B0
// FUNCTION: fn_20959
void CooldownOwner::ClearReverseCommands() {
this->m_drawing.reverse.clear();
}
// INLINED
CooldownState* CooldownOwner::Find(unsigned id) {
const auto entry = this->m_values.find(id);
return entry == this->m_values.end() ? nullptr : &entry->second;
}
// INLINED
void CooldownOwner::Erase(unsigned id) {
this->m_values.erase(id);
}
// STATIC: 0x0171DD1C
// GLOBAL: gl_24487
CooldownOwner* g_cooldownOwner = nullptr;
// OFFSET: 0x00CA64C0
// FUNCTION: fn_20960
bool CreateCooldownOwner() {
if (g_cooldownOwner) {
return false;
}
g_cooldownOwner = new (std::nothrow) CooldownOwner;
if (!g_cooldownOwner) {
return false;
}
return true;
}
// OFFSET: 0x00CA6610
// FUNCTION: fn_20961
void DestroyCooldownOwner() {
if (g_cooldownOwner) {
delete g_cooldownOwner;
g_cooldownOwner = nullptr;
}
}