2#include "Manager/MemoryMgr.h"
3#include "Manager/EngineCore.h"
4#include "Util/MoreString.h"
15 memoryMgr->Register(
this);
18SObject::SObject(
bool isRegister) {
20 if (isRegister) memoryMgr->Register(
this);
23SObject::~SObject() =
default;
26void SObject::SetUndestroyable(
bool enable) {
27 isUndestroyable = enable;
30void SObject::Destroy() {
31 memoryMgr->ReleaseObject(
this);
35void SObject::GenerateHashString() {
36 std::random_device rd;
37 std::mt19937 gen(rd());
38 std::uniform_int_distribution<> dis(0, 61);
44 m_hash = GetRandomHash(16);
45 }
while (memoryMgr->HasHash(m_hash));
48void SObject::SetHash(std::string& hash) {
49 const std::string prevHash = std::string(m_hash);
52 memoryMgr->ChangeHash(prevHash, m_hash);
56 memoryMgr->ChangeHash(prevHash, hash);