EntropyEngine::Core::Concurrency::NodeReadyEvent
EntropyEngine::Core::Concurrency::NodeReadyEvent
Section titled “EntropyEngine::Core::Concurrency::NodeReadyEvent”All dependencies satisfied - this node is ready to rock! More…
#include <WorkGraphEvents.h>
Inherits from EntropyEngine::Core::Concurrency::WorkGraphEvent
Public Functions
Section titled “Public Functions”| Name | |
|---|---|
| NodeReadyEvent(const WorkGraph * g, NodeHandle n) |
Public Attributes
Section titled “Public Attributes”| Name | |
|---|---|
| NodeHandle | node The node that’s ready to execute. |
Additional inherited members
Section titled “Additional inherited members”Public Functions inherited from EntropyEngine::Core::Concurrency::WorkGraphEvent
| Name | |
|---|---|
| WorkGraphEvent(const WorkGraph * g) |
Public Attributes inherited from EntropyEngine::Core::Concurrency::WorkGraphEvent
| Name | |
|---|---|
| std::chrono::steady_clock::time_point | timestamp When this event was created. |
| const WorkGraph * | graph Which graph emitted this event. |
Detailed Description
Section titled “Detailed Description”struct EntropyEngine::Core::Concurrency::NodeReadyEvent;All dependencies satisfied - this node is ready to rock!
Fired when a node transitions from Pending to Ready. This means all its parent nodes have completed successfully and it’s eligible for scheduling. The actual scheduling might be delayed if the work queue is full.
// Track scheduling latencystd::unordered_map<NodeHandle, TimePoint> readyTimes;
eventBus->subscribe<NodeReadyEvent>([&readyTimes](const auto& event) { readyTimes[event.node] = std::chrono::steady_clock::now();});
eventBus->subscribe<NodeScheduledEvent>([&readyTimes](const auto& event) { auto it = readyTimes.find(event.node); if (it != readyTimes.end()) { auto delay = std::chrono::steady_clock::now() - it->second; LOG_DEBUG("Scheduling delay: {}μs", std::chrono::duration_cast<std::chrono::microseconds>(delay).count()); }});Public Functions Documentation
Section titled “Public Functions Documentation”function NodeReadyEvent
Section titled “function NodeReadyEvent”inline NodeReadyEvent( const WorkGraph * g, NodeHandle n)Public Attributes Documentation
Section titled “Public Attributes Documentation”variable node
Section titled “variable node”NodeHandle node;The node that’s ready to execute.
Updated on 2026-01-26 at 17:14:35 -0500