Deterministic, callback-free port of PcgTask's delayed task queue. 更多...
#include <PcgTaskQueue.h>
Public 成员函数 | |
| Result< std::uint64_t > | add (double waitSeconds=0.25) |
| Append a task with Pcg's default 0.25-second delay unless overridden. | |
| Result< PcgTaskQueueStatus > | tick (double deltaSeconds) |
| Advance injected time and publish at most one due task. | |
| Result< PcgTaskQueueStatus > | resolveReady (bool finished) |
| Resolve the ready task; finished tasks are removed, unfinished tasks await their next pass. | |
| PcgTaskQueueStatus | cancelAll () noexcept |
| Cancel every queued task and return Idle. | |
| std::uint64_t | readyTaskId () const noexcept |
| Return the ready task ID, or zero when none is ready. | |
| int | queueSize () const noexcept |
| Return the number of queued tasks. | |
| PcgTaskQueueStatus | status () const noexcept |
| Return current queue state. | |
详细描述
Deterministic, callback-free port of PcgTask's delayed task queue.
tick() only publishes a ready task ID. The caller executes work outside the queue and calls resolveReady(). @thread Owning thread only; no pointers or callbacks are retained.
在文件 PcgTaskQueue.h 第 16 行定义.
成员函数说明
◆ add()
| Result< std::uint64_t > eve::procgen::PcgTaskQueue::add | ( | double | waitSeconds = 0.25 | ) |
Append a task with Pcg's default 0.25-second delay unless overridden.
在文件 PcgTaskQueue.cpp 第 8 行定义.
引用了 eve::Diagnostic::error(), eve::Result< T >::failure(), id, eve::procgen::Idle, eve::InvalidArgument, eve::Result< T >::success() , 以及 eve::procgen::Waiting.
◆ cancelAll()
|
noexcept |
◆ queueSize()
|
inlinenoexcept |
Return the number of queued tasks.
在文件 PcgTaskQueue.h 第 29 行定义.
◆ readyTaskId()
|
inlinenoexcept |
Return the ready task ID, or zero when none is ready.
在文件 PcgTaskQueue.h 第 27 行定义.
◆ resolveReady()
| Result< PcgTaskQueueStatus > eve::procgen::PcgTaskQueue::resolveReady | ( | bool | finished | ) |
Resolve the ready task; finished tasks are removed, unfinished tasks await their next pass.
在文件 PcgTaskQueue.cpp 第 26 行定义.
引用了 eve::Diagnostic::error(), eve::Result< T >::failure(), eve::procgen::Idle, eve::InvalidArgument, eve::procgen::Ready, eve::Result< T >::success() , 以及 eve::procgen::Waiting.
◆ status()
|
inlinenoexcept |
Return current queue state.
在文件 PcgTaskQueue.h 第 31 行定义.
◆ tick()
| Result< PcgTaskQueueStatus > eve::procgen::PcgTaskQueue::tick | ( | double | deltaSeconds | ) |
Advance injected time and publish at most one due task.
在文件 PcgTaskQueue.cpp 第 15 行定义.
引用了 eve::Diagnostic::error(), eve::Result< T >::failure(), eve::procgen::Idle, eve::InvalidArgument, eve::procgen::Ready, eve::Result< T >::success() , 以及 eve::procgen::Waiting.
该类的文档由以下文件生成:
- src/modules/procgen/PcgTaskQueue.h
- src/modules/procgen/PcgTaskQueue.cpp