EntropyEngine::Core::Concurrency::NodeCompletedEvent
EntropyEngine::Core::Concurrency::NodeCompletedEvent
Section titled “EntropyEngine::Core::Concurrency::NodeCompletedEvent”Success! More…
#include <WorkGraphEvents.h>
Inherits from EntropyEngine::Core::Concurrency::WorkGraphEvent
Public Functions
Section titled “Public Functions”| Name | |
|---|---|
| NodeCompletedEvent(const WorkGraph * g, NodeHandle n, std::chrono::steady_clock::duration duration ={}) |
Public Attributes
Section titled “Public Attributes”| Name | |
|---|---|
| NodeHandle | node The successful node. |
| std::chrono::steady_clock::duration | executionTime How long it took. |
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::NodeCompletedEvent;Success!
A node finished without throwing
This is your “mission accomplished” notification. The node ran to completion without exceptions. Includes execution time for performance analysis - though this might be zero if timing wasn’t tracked.
// Performance monitoringeventBus->subscribe<NodeCompletedEvent>([](const auto& event) { auto ms = std::chrono::duration_cast<std::chrono::milliseconds>( event.executionTime).count(); LOG_INFO("Node {} completed in {}ms", event.node.getData()->name, ms);
if (ms > 1000) { LOG_WARN("Slow node detected!"); }});Public Functions Documentation
Section titled “Public Functions Documentation”function NodeCompletedEvent
Section titled “function NodeCompletedEvent”inline NodeCompletedEvent( const WorkGraph * g, NodeHandle n, std::chrono::steady_clock::duration duration ={})Public Attributes Documentation
Section titled “Public Attributes Documentation”variable node
Section titled “variable node”NodeHandle node;The successful node.
variable executionTime
Section titled “variable executionTime”std::chrono::steady_clock::duration executionTime;How long it took.
Updated on 2026-01-26 at 17:14:35 -0500