Skip to main content

Runtime graph

Actor-style runtime DAG, named-port stages, and the GraphSession/GraphRun pair. More...

Topics Index

 Runtime graph nodes

Stage, fan-out, join, scheduler, and adapter nodes for runtime graphs. More...

 Runtime graph internals

Queue and mailbox primitives used by runtime graph execution. More...

Classes Index

structEdgeSpec

Per-edge spec captured by the compiler — the propagated OutputSpec and a completeness flag. More...

structCompiledPipelineSegment

Compiled view of a contiguous pipeline-backend segment in the runtime graph. More...

structCompiledStageNode

Compiled record for a single stage-backend node in the runtime graph. More...

structCompiledGraph

Result produced by Compiler::compile: pipelines, stages, edges, specs, and port names. More...

classCompiler

Runtime-graph compiler that partitions a Graph into pipeline segments and stages. More...

classGraph

Directed acyclic graph of hybrid nodes with named ports. More...

structPortRef

Handle to a specific port on a node within a runtime Graph, used by the DSL. More...

structNodeRef

Handle to a node within a runtime Graph, used by the fluent DSL. More...

structStreamMetadataDefaults

Defaults applied to a Sample by the StreamMetadata stage. More...

classGraphPrinter

Pretty-printer for runtime Graph instances; emits text, dot, or mermaid. More...

structOptions

Render options controlling which fields and labels are emitted. More...

structGraphRunOptions

Tuning knobs for a GraphRun — queue capacities, push/pull timeouts, verbosity. More...

structGraphRunStats

Per-node, per-stream telemetry collector for a running GraphRun. More...

structGraphRunPullOptions

Tuning knobs for GraphRun::pull_until() / PullSession::run(). More...

classGraphRun

Live runtime handle for a compiled Graph. More...

classGraphSession

Builder for a runtime graph — compile a Graph into a runnable GraphRun. More...

structFanOutOptions

Configuration for a FanOut stage executor. More...

classFanOut

Stage executor that duplicates each incoming sample to multiple output ports. More...

structJoinBundleOptions

Configuration for a JoinBundle stage executor. More...

classJoinBundle

Stage executor that joins samples from multiple input ports into a single bundled output. More...

structJoinEncodedWithMetaOptions

Configuration for a JoinEncodedWithMeta stage executor. More...

classJoinEncodedWithMeta

Stage executor that bundles an encoded payload (e.g., H.264) with associated metadata. More...

classLambdaStage

Generic stage executor whose behavior is supplied by user-provided callbacks. More...

classPipelineNode

Runtime-graph node that wraps a builder-side NodeGroup (or single Node) as a pipeline-backend node. More...

structStageModelExecutorOptions

Configuration for a StageModelExecutor stage. More...

classStageModelExecutor

Stage executor that runs a Model's inference pipeline as a runtime-graph stage. More...

structStageNodeOptions

Options controlling how a StageNode is instantiated and scheduled by the runtime. More...

classStageNode

Generic runtime-graph node that adapts a StageExecutor factory into a Node. More...

classStampFrameId

Stage executor that assigns a monotonically-increasing frame id per stream. More...

classStreamMetadata

Stage executor that fills in stream metadata defaults on passing samples. More...

structStreamSchedulerOptions

Configuration for a StreamScheduler stage. More...

classStreamScheduler

Stage executor that round-robin-schedules samples across multiple streams. More...

classBlockingQueue<T>

Thread-safe bounded blocking queue used by the runtime mailboxes. More...

structStageMailbox

Single thread-safe inbox the runtime delivers messages into for one stage. More...

structStageMsg

A single input message handed to a StageExecutor. More...

structStageOutMsg

A single output message produced by a StageExecutor. More...

classStageEmitter

Runtime-owned output handle for stages that stream while on_input() is active. More...

structStagePorts

Resolved port-id table for a stage — populated by the runtime before start(). More...

classStageExecutor

Actor-style executor base class — implement to add a new runtime-graph stage. More...

classPendingVideoStore

Per-stream store of video frames awaiting their matching detection metadata. More...

classYoloTokenStore

Per-stream queue of yolo (or other detection) tokens awaiting a matching frame. More...

classReleasePacer

Paces downstream releases of paired samples to a target frame rate. More...

Enumerations Index

enum classJoinKeyPolicy { ... }

Selects how the JoinBundle stage groups samples coming from different inputs. More...

enum classStageKeyBy { ... }

Selects how the runtime keys messages for a stage node's instance assignment. More...

enum classStreamDropPolicy { ... }

Policy used by StreamScheduler when a per-stream queue overflows. More...

Description

Actor-style runtime DAG, named-port stages, and the GraphSession/GraphRun pair.

Enumerations

JoinKeyPolicy

enum class simaai::neat::graph::nodes::JoinKeyPolicy
strong

Selects how the JoinBundle stage groups samples coming from different inputs.

Enumeration values
StreamFrameJoin on (stream_id, frame_id) (= 0)
StreamPtsJoin on (stream_id, pts)

The chosen policy determines the join key used to decide which samples belong to the same emitted bundle (e.g., match by stream id + frame id, or by stream id + presentation timestamp).

Definition at line 32 of file JoinBundle.h.

32enum class JoinKeyPolicy {
33 StreamFrame = 0,
35};

StageKeyBy

enum class simaai::neat::graph::nodes::StageKeyBy
strong

Selects how the runtime keys messages for a stage node's instance assignment.

Enumeration values
NoneNo keying — round-robin or unconstrained dispatch (= 0)
StreamIdKey on Sample::stream_id so all messages for a stream go to the same instance

Used by StageNodeOptions::key_by to pick a deterministic assignment policy when a node has multiple executor instances.

Definition at line 32 of file StageNode.h.

32enum class StageKeyBy {
33 None = 0,
35};

StreamDropPolicy

enum class simaai::neat::graph::nodes::StreamDropPolicy
strong

Policy used by StreamScheduler when a per-stream queue overflows.

Enumeration values
DropOldestDrop the oldest queued sample when full (= 0)
DropNewestDrop the newly arrived sample when full

Selects which sample is dropped to make room when an incoming sample arrives at a full per-stream queue.

Definition at line 31 of file StreamScheduler.h.

31enum class StreamDropPolicy {
32 DropOldest = 0,
34};

Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.