Skip to main content

Run.h File

Run — the live pipeline returned by Graph::build, plus runtime options and diagnostics. More...

Included Headers

#include "nodes/io/Input.h" #include "pipeline/GraphMetrics.h" #include "pipeline/PowerTelemetry.h" #include "pipeline/GraphOptions.h" #include <cstdint> #include <cstddef> #include <functional> #include <memory> #include <optional> #include <string> #include <string_view> #include <vector>

Namespaces Index

namespacecv
namespacesimaai
namespaceneat
namespacepipeline_internal
namespaceruntime

Classes Index

structRunAdvancedOptions

Advanced runtime tuning knobs (most users never set these). More...

structRunAutoExportOptions

Optional build-time Run JSON export. More...

structRunOptions

Per-Run runtime options. More...

structInputDropInfo

Diagnostic record for a dropped input frame. More...

structMeasureOptions

Options for framework-owned runtime measurement. More...

structMeasureLatencyStats

Percentile summary for a measured latency series. More...

structMeasurePluginLatency

Aggregated per-plugin/kernel timing captured during a measurement window. More...

structMeasureEdgeLatency

Aggregated handoff/queue/transport timing between plugins or runtime nodes. More...

structMeasurePathStat
structMeasurePathIdentity
structMeasurePathNodeArrival
structMeasurePathInterPluginGap
structMeasurePathOutputTail
structMeasurePathTiming
structMeasureCounters

Common input/output/drop counters captured during a measurement window. More...

structMeasureInputStats

Input-boundary telemetry captured during a measurement window. More...

structMeasureReport

Framework-owned report returned by MeasureScope::stop(). More...

classMeasureScope

Observation scope for measuring an application-owned push/pull interval. More...

classRun

Live pipeline handle: push inputs in, pull outputs out. More...

Description

Run — the live pipeline returned by Graph::build, plus runtime options and diagnostics.

Run is what a Graph becomes when built. It owns the running GStreamer pipeline, its internal threads (typically 5–15: one per element thread boundary, plus dispatcher workers, plus a bus watcher), and its bounded queues. Application code interacts with a Run by push()-ing inputs and pull()-ing outputs — or run() for a push+pull convenience call on an existing runner. Use Graph::run(...) when you want one-shot graph execution without owning a long-lived runner.

This header also defines:

  • OverflowPolicy — how push() behaves when the input queue is full.
  • RunPreset — preset bundles for common workloads (realtime, balanced, reliable).
  • RunOptions — runtime knobs (queue depth, overflow policy, output memory).
  • MeasureScope / MeasureReport — the canonical measurement surface.
See Also

Graph::build for how a Run is constructed

See Also

GraphOptions for build-time options (Run takes runtime options here)

See Also

"Runs: the live pipeline (and the timing decision)" (§0.13 of the design deep dive)


Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.