sead::FixedSizeJQ class

Base classes

class JobQueue

Public types

enum class Status: int { _0 = 0, _1 = 1, _3 = 3, _5 = 5, _6 = 6 }
enum class NodeClassType { Reflexible = 0, Node = 1, Other = 2 }
enum class AllocFlg { Name = 1u << 0u, Meta = 1u << 1u }

Constructors, destructors, conversion operators

FixedSizeJQ()

Public functions

void begin() override
auto run(u32 size, u32* finished_jobs, Worker* worker) -> bool override
auto getNumJobs() const -> u32 override
void initialize(u32 size, Heap* heap)
void finalize()
auto enque(Job* job) -> bool
auto enqueSafe(Job* job) -> bool
auto deque() -> Job*
auto deque(Job** jobs, u32 count) -> u32
auto rewind() -> bool
void clear()
auto debug_IsAllJobDone() -> bool
void runAll(u32* finished_jobs)
auto isAllParticipantThrough() const -> bool
auto getGranularity(u32 core) -> u32
void setGranularity(CoreId core, u32 x)
void setGranularity(u32)
void setCoreMaskAndWaitType(CoreIdMask mask, SyncType type)
void FINISH(CoreId core)
void wait_AT_WORKER()
void wait()
auto getDescription() const -> const char*
void setDescription(const char* description)
void signalFinishEvent()
void resetFinishEvent()
auto addNumDoneJobs(u32 num) -> u32
auto getNodeClassType() const -> NodeClassType override
auto getName() const -> const SafeString&
void setName(const SafeString& name)

Protected functions

auto isDone_() -> bool virtual

Protected variables

Buffer<Job*> mJobs
u32 mNumJobs
u32 mNumProcessedJobs
bool _230
SyncType mSyncType
JobQueueLock mLock
CoreIdMask mMask
Event mFinishEvent
SafeArray<u32, 3> mGranularity
SafeArray<u32, 3> mCoreEnabled
Atomic<u32> mNumDoneJobs
Atomic<Status> mStatus
const char* mDescription

Enum documentation

enum class sead::FixedSizeJQ::NodeClassType

Enumerators
Reflexible

sead::hostio::Reflexible

Node

sead::hostio::Node

Other

Other classes.

enum class sead::FixedSizeJQ::AllocFlg

Function documentation

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

const SafeString& sead::FixedSizeJQ::getName() const

void sead::FixedSizeJQ::setName(const SafeString& name)