Aria 2.0.0
C++23 MVVM framework (C++20 minimum) — reactive, coroutine-first, ABI-layered
Loading...
Searching...
No Matches
aria::reactive::GraphInspector::FlushEvent Struct Reference

A single event emitted by the Graph during flush. More...

#include <inspector.hpp>

Public Types

enum class  Phase {
  FlushBegin , RoundBegin , Pull , SkipClean ,
  Recomputed , RoundEnd , FlushEnd
}

Public Attributes

Phase phase
const Nodenode = nullptr
 null for FlushBegin / FlushEnd / Round boundaries
int round = 0
 1-based round index
bool changed = false
 valid for Phase::Recomputed
long long duration_us = 0
 Elapsed wall-clock microseconds between the matching Pull and this Recomputed event.

Detailed Description

A single event emitted by the Graph during flush.

Phase describes when the event fires; fields are populated per the phase.

Member Enumeration Documentation

◆ Phase

Enumerator
FlushBegin 

entering Graph::flush

RoundBegin 

starting a topological round

Pull 

about to pull node

SkipClean 

node became Clean via an earlier pull

Recomputed 

pull ran; changed = whether value moved

RoundEnd 

round completed

FlushEnd 

Graph::flush returning cleanly.

Member Data Documentation

◆ phase

Phase aria::reactive::GraphInspector::FlushEvent::phase

◆ node

const Node* aria::reactive::GraphInspector::FlushEvent::node = nullptr

null for FlushBegin / FlushEnd / Round boundaries

◆ round

int aria::reactive::GraphInspector::FlushEvent::round = 0

1-based round index

◆ changed

bool aria::reactive::GraphInspector::FlushEvent::changed = false

valid for Phase::Recomputed

◆ duration_us

long long aria::reactive::GraphInspector::FlushEvent::duration_us = 0

Elapsed wall-clock microseconds between the matching Pull and this Recomputed event.

Zero for all other phases. Useful for "which nodes are expensive to pull?" and for feeding a real-time perf overlay.


The documentation for this struct was generated from the following file: