sead::ThreadMgr class

Base classes

class Node

Public types

enum class NodeClassType { Reflexible = 0, Node = 1, Other = 2 }
enum class AllocFlg { Name = 1u << 0u, Meta = 1u << 1u }

Public static functions

static void waitDoneMultipleThread(Thread*const* threads, s32 num)
static void quitAndWaitDoneMultipleThread(Thread** threads, s32 num, bool is_jam)
static void checkCurrentThreadStackOverFlow(const char* source_file, s32 source_line)
static void checkCurrentThreadStackEndCorruption(const char* source_file, s32 source_line)
static void checkCurrentThreadStackPointerOverFlow(const char* source_file, s32 source_line)

Constructors, destructors, conversion operators

ThreadMgr()
~ThreadMgr() virtual

Public functions

void initialize(Heap* heap)
void destroy()
auto isMainThread() const -> bool
auto getMainThread() const -> Thread*
auto getCurrentThread() const -> Thread*
auto getListCS() -> CriticalSection*
auto tryRemoveFromFindContainHeapCache(Heap* heap) -> bool
auto getNodeClassType() const -> NodeClassType override

Protected static functions

static auto getCurrentThreadID_() -> u32

Protected functions

void addThread_(Thread* thread)
void removeThread_(Thread* thread)
void initMainThread_(Heap* heap)
void destroyMainThread_()

Enum documentation

enum class sead::ThreadMgr::NodeClassType

Enumerators
Reflexible

sead::hostio::Reflexible

Node

sead::hostio::Node

Other

Other classes.

enum class sead::ThreadMgr::AllocFlg

Function documentation

NodeClassType sead::ThreadMgr::getNodeClassType() const override