sead::Semaphore class

Base classes

class IDisposer

Public types

enum class HeapNullOption { AlwaysUseSpecifiedHeap = 0, UseSpecifiedOrContainHeap = 1, DoNotAppendDisposerIfNoHeapSpecified = 2, UseSpecifiedOrCurrentHeap = 3 }

Public static functions

static auto getListNodeOffset() -> u32

Constructors, destructors, conversion operators

Semaphore()
Semaphore(s32 initial_count) explicit
Semaphore(s32 initial_count, s32 max_count)
Semaphore(Heap* heap) explicit
Semaphore(Heap* heap, s32 initial_count)
Semaphore(Heap* heap, s32 initial_count, s32 max_count)
Semaphore(Heap* heap, HeapNullOption heap_null_option)
Semaphore(Heap* heap, HeapNullOption heap_null_option, s32 initial_count)
Semaphore(Heap* heap, HeapNullOption heap_null_option, s32 initial_count, s32 max_count)
~Semaphore() override
Semaphore(const Semaphore&) deleted

Public functions

auto operator=(const Semaphore&) -> Semaphore& deleted
void initialize(s32 initial_count)
void initialize(s32 initial_count, s32 max_count)
void lock()
auto tryLock() -> bool
void unlock()
auto try_lock() -> bool

Protected functions

auto getDisposerHeap_() const -> Heap*

Enum documentation

enum class sead::Semaphore::HeapNullOption

Function documentation

static u32 sead::Semaphore::getListNodeOffset()

Heap* sead::Semaphore::getDisposerHeap_() const protected