Skip to main content

Graph Class

The assembly stage — turns a list of Nodes into a runnable, deterministic pipeline. More...

Declaration

class simaai::neat::Graph { ... }

Included Headers

#include <Graph.h>

Public Member Typedefs Index

usingTensorCallback = std::function< bool(const simaai::neat::Tensor &)>

Callback signature used by source-mode pipelines (no input pushed; pipeline produces tensors continuously). More...

Enumerations Index

enum classCompositionEdgeKind { ... }
enum classSinkRequirement : int { ... }

Friends Index

structsimaai::neat::internal::ModelAccess

Public Constructors Index

Graph (const GraphOptions &opt={})

Construct an empty Graph with the given options (or defaults). More...

Graph (std::string name, const GraphOptions &opt={})

Construct an empty Graph with a label used for diagnostics, save/load, and visualization. More...

Graph (const Graph &)=delete

Non-copyable. More...

Graph (Graph &&) noexcept

Move-constructible. More...

Public Destructor Index

~Graph () noexcept

Destroy the Graph, stopping any running pipeline. More...

Public Operators Index

Graph &operator= (const Graph &)=delete

Non-copyable. More...

Graph &operator= (Graph &&) noexcept

Move-assignable. More...

Public Member Functions Index

Graph &set_name (std::string name)

Set the Graph label used for diagnostics, save/load, and visualization. More...

const std::string &name () const noexcept

Return the Graph label, if one was provided. More...

std::vector< std::string >inputs () const

Return public logical input endpoint names declared by this Graph. More...

std::vector< std::string >outputs () const

Return public logical output endpoint names declared by this Graph. More...

Graph &add (std::shared_ptr< Node > node)

Append a single Node to the Graph. More...

Graph &add (const Graph &fragment)

Append another Graph as a linear fragment. More...

Graph &add (Graph &&fragment)

Append another Graph as a linear fragment. More...

Graph &add (const Model &model)

Append a model route as a linear graph fragment. More...

Graph &connect (std::string_view from_endpoint, std::string_view to_endpoint)

Connect named endpoints or reusable fragments through the public Graph compiler. More...

Graph &connect (const Graph &from, const Graph &to)
Graph &connect (std::shared_ptr< Node > from, std::shared_ptr< Node > to)
Graph &connect (const Graph &from, std::shared_ptr< Node > to)
Graph &connect (std::shared_ptr< Node > from, const Graph &to)
Graph &connect (const Model &from, const Model &to)
Graph &connect (const Model &from, const Graph &to)
Graph &connect (const Graph &from, const Model &to)
Graph &connect (const Model &from, std::shared_ptr< Node > to)
Graph &connect (std::shared_ptr< Node > from, const Model &to)
Graph &custom (std::string fragment)

Splice a raw GStreamer launch fragment into the pipeline. More...

Graph &custom (std::string fragment, InputRole role)

Variant that declares the fragment's role (e.g., source vs. sink). More...

voidrun ()

Run a source-mode pipeline (no inputs pushed; producer Nodes drive the flow). More...

TensorListrun (const std::vector< cv::Mat > &inputs, const RunOptions &opt={})

One-shot synchronous push+pull from cv::Mat inputs. More...

TensorListrun (const TensorList &inputs, const RunOptions &opt={})

One-shot synchronous push+pull from Tensor inputs. More...

Samplerun (const Sample &inputs, const RunOptions &opt={})

One-shot synchronous push+pull from Sample inputs (carries per-buffer metadata). More...

Runbuild (const std::vector< cv::Mat > &inputs, RunMode mode=RunMode::Async, const RunOptions &opt={})

Build a long-lived Run handle, seeding caps from cv::Mat inputs. More...

Runbuild (const TensorList &inputs, RunMode mode=RunMode::Async, const RunOptions &opt={})

Build variant seeded with Tensor inputs. More...

Runbuild (const Sample &inputs, RunMode mode=RunMode::Async, const RunOptions &opt={})

Build variant seeded with full Sample inputs (with per-buffer metadata). More...

GraphReportvalidate (const ValidateOptions &opt, const cv::Mat &input) const

Validate the Graph against a real input sample without running the pipeline. More...

RtspServerHandlerun_rtsp (const RtspServerOptions &opt)

Build the Graph and run it as an RTSP server. More...

GraphReportvalidate (const ValidateOptions &opt={}) const

Validate the Graph structurally without running. More...

Graph &add_output_tensor (const OutputTensorOptions &opt={})

Append a tensor-friendly output (auto-inserts convert/scale/caps + sink). More...

std::stringdescribe (const GraphPrinter::Options &opt={}) const

Returns a hierarchical, human-readable view of the Nodes added so far. More...

std::stringdescribe_backend (bool insert_boundaries=false) const

Returns the GStreamer launch string the Graph would emit at build(). More...

voidset_guard (std::shared_ptr< void > guard)

Attach an external lifetime guard (used by externally-managed runtimes). More...

voidset_tensor_callback (TensorCallback cb)

Set the per-tensor callback used by source-mode run(). More...

voidsave (const std::string &path) const

Save the Graph's Node list, options, and topology to a JSON file at path. More...

Runbuild (const RunOptions &opt={})

Build a Graph as an asynchronous runner without seeding inputs. More...

const std::string &last_pipeline () const

Returns the GStreamer launch string from the most recent build() call. More...

Private Member Functions Index

voidinvalidate_built_ () noexcept

Drop the built pipeline (if any) and any cached runner. More...

PreparedSourceprepare_source_ (RunMode mode, const RunOptions &opt, SinkRequirement sink_req, const char *where)

Shared "build a source-mode pipeline to PAUSED" body for build(RunOptions) and build_cached_source(). More...

voidmark_composition_changed ()
std::pair< std::size_t, std::size_t >append_linear_fragment_ (const Graph &fragment, const char *where)
std::pair< std::size_t, std::size_t >import_composition_fragment_ (const Graph &fragment, const char *where)
std::pair< std::size_t, std::size_t >import_or_reuse_composition_fragment_ (const Graph &fragment, const char *where)
boolis_output_collection_fragment_ (const Graph &fragment) const
std::pair< std::size_t, std::size_t >import_output_collection_fragment_ (const Graph &fragment, const char *where)
std::pair< std::size_t, std::size_t >import_or_reuse_output_collection_fragment_ (const Graph &fragment, const char *where)
std::pair< std::size_t, std::size_t >import_or_reuse_node_fragment_ (std::shared_ptr< Node > node, const char *where)
std::pair< std::size_t, std::size_t >import_or_reuse_model_fragment_ (const Model &model, const char *where)
voidconnect_imported_ranges_ (std::pair< std::size_t, std::size_t > from_range, std::string_view from_name, std::pair< std::size_t, std::size_t > to_range, std::string_view to_name, const char *where)
std::vector< std::shared_ptr< Node > >linear_nodes_snapshot (const char *where) const
voidbuild_cached_source ()

Private Member Attributes Index

std::unique_ptr< CompositionGraph >composition_
std::vector< GroupMeta >groups_
std::stringlast_pipeline_
std::shared_ptr< void >guard_
std::shared_ptr< void >verbose_guard_
GraphOptionsopt_ {}
std::stringendpoint_name_
TensorCallbacktensor_cb_
uint64_tgraph_id_ = 0
std::atomic< uint64_t >nodes_version_ {0}
std::unique_ptr< BuiltState >built_
std::unique_ptr< RunCache >run_cache_
uint64_tbuilt_version_ = 0
std::shared_ptr< const pipeline_internal::InputRouteProcessor >input_route_processor_

Public Static Functions Index

static Graphload (const std::string &path)

Reconstruct a Graph from a previously-saved JSON file. More...

Description

The assembly stage — turns a list of Nodes into a runnable, deterministic pipeline.

A Graph does five jobs when you call build():

  1. Composition — collects Nodes and Graph fragments in the order you added them.
  2. Validation — runs structural contracts (no empty pipeline, no null nodes, sink last, etc.) and surfaces issues as a structured GraphReport.
  3. Compilation — translates the Node sequence into a deterministic GStreamer pipeline string with stable element names like n3_videoconvert.
  4. Negotiation — hands the pipeline to GStreamer, which negotiates caps between adjacent elements (formats, resolutions, framerates, memory layouts).
  5. Materialization — instantiates the actual GStreamer elements, transitions through NULL → READY → PAUSED state, and returns a Run handle.
 sima::Graph graph;
 graph.add(sima::nodes::groups::RtspDecodedInput({.url = "rtsp://camera/stream"}));
 graph.add(model);
 graph.add(sima::nodes::Output("classes"));
 auto run = graph.build();

Graphs are non-copyable but movable. They are not thread-safe — build a Graph on one thread, then hand the resulting Run to wherever it's needed.

See Also

Run for the runtime handle this produces

See Also

Model — the simplified entry point that wraps a Graph for users who don't need composition flexibility

See Also

GraphReport for the structured error/diagnostics surface

See Also

RtspServerHandle for server-mode Graphs

Definition at line 160 of file Graph.h.

Public Member Typedefs

TensorCallback

using simaai::neat::Graph::TensorCallback = std::function<bool(const simaai::neat::Tensor&)>

Callback signature used by source-mode pipelines (no input pushed; pipeline produces tensors continuously).

Definition at line 164 of file Graph.h.

164 using TensorCallback = std::function<bool(const simaai::neat::Tensor&)>;

Enumerations

CompositionEdgeKind

enum class simaai::neat::Graph::CompositionEdgeKind
strong
Enumeration values
ImplicitLinear
RuntimePort
PublicEndpoint

Definition at line 375 of file Graph.h.

375 enum class CompositionEdgeKind {
376 ImplicitLinear,
377 RuntimePort,
378 PublicEndpoint,
379 };

SinkRequirement

enum class simaai::neat::Graph::SinkRequirement : int
strong
Enumeration values
Required
OptionalIfPresent

Definition at line 415 of file Graph.h.

415 enum class SinkRequirement : int { Required, OptionalIfPresent };

Friends

simaai::neat::internal::ModelAccess

friend struct simaai::neat::internal::ModelAccess

Definition at line 367 of file Graph.h.

Public Constructors

Graph()

simaai::neat::Graph::Graph (const GraphOptions & opt={})
explicit

Construct an empty Graph with the given options (or defaults).

Definition at line 167 of file Graph.h.

Graph()

simaai::neat::Graph::Graph (std::string name, const GraphOptions & opt={})
explicit

Construct an empty Graph with a label used for diagnostics, save/load, and visualization.

Public I/O endpoints are declared by nodes::Input("name"), nodes::Output("name"), or model route boundary hints, not by the Graph label.

Definition at line 171 of file Graph.h.

Graph()

simaai::neat::Graph::Graph (const Graph &)
delete

Non-copyable.

Definition at line 176 of file Graph.h.

Graph()

simaai::neat::Graph::Graph (Graph &&)
noexcept

Move-constructible.

Definition at line 178 of file Graph.h.

Public Destructor

~Graph()

simaai::neat::Graph::~Graph ()
noexcept

Destroy the Graph, stopping any running pipeline.

Never throws — all GStreamer teardown happens via RAII handles inside BuiltState whose deleters swallow (and log) any rare exception so that destruction is always safe.

Definition at line 175 of file Graph.h.

Public Operators

operator=()

Graph & simaai::neat::Graph::operator= (const Graph &)
delete

Non-copyable.

Definition at line 177 of file Graph.h.

operator=()

Graph & simaai::neat::Graph::operator= (Graph &&)
noexcept

Move-assignable.

Definition at line 179 of file Graph.h.

Public Member Functions

add()

Graph & simaai::neat::Graph::add (std::shared_ptr< Node > node)

Append a single Node to the Graph.

Parameters
node

Shared pointer (typically returned by a Node factory like sima::nodes::common::Queue()).

Returns

*this to allow chaining.

Definition at line 197 of file Graph.h.

add()

Graph & simaai::neat::Graph::add (const Graph & fragment)

Append another Graph as a linear fragment.

A connected fragment may only initialize an empty Graph; compose non-linear topology with connect().

Definition at line 200 of file Graph.h.

add()

Graph & simaai::neat::Graph::add (Graph && fragment)

Append another Graph as a linear fragment.

A connected fragment may only initialize an empty Graph; compose non-linear topology with connect().

Definition at line 203 of file Graph.h.

add()

Graph & simaai::neat::Graph::add (const Model & model)

Append a model route as a linear graph fragment.

Definition at line 205 of file Graph.h.

add_output_tensor()

Graph & simaai::neat::Graph::add_output_tensor (const OutputTensorOptions & opt={})

Append a tensor-friendly output (auto-inserts convert/scale/caps + sink).

Convenience for "I want my output as a Tensor in a specific format/shape." Equivalent to adding VideoConvert, VideoScale, Caps, and Output Nodes manually but encapsulated.

Returns

*this to allow chaining.

Definition at line 326 of file Graph.h.

build()

Run simaai::neat::Graph::build (const std::vector< cv::Mat > & inputs, RunMode mode=RunMode::Async, const RunOptions & opt={})

Build a long-lived Run handle, seeding caps from cv::Mat inputs.

Parameters
inputs

One Mat per ingress port; used for build-time adaptation.

mode

Async (default; pipeline runs continuously) or Sync.

opt

Runtime options (queue depth, overflow policy).

Exceptions
<a href="/reference/cppapi/classes/simaai-neat-neaterror">NeatError</a>

on validation or build failure.

Definition at line 278 of file Graph.h.

build()

Run simaai::neat::Graph::build (const TensorList & inputs, RunMode mode=RunMode::Async, const RunOptions & opt={})

Build variant seeded with Tensor inputs.

Definition at line 281 of file Graph.h.

build()

Run simaai::neat::Graph::build (const Sample & inputs, RunMode mode=RunMode::Async, const RunOptions & opt={})

Build variant seeded with full Sample inputs (with per-buffer metadata).

Definition at line 283 of file Graph.h.

build()

Run simaai::neat::Graph::build (const RunOptions & opt={})

Build a Graph as an asynchronous runner without seeding inputs.

Use this for source pipelines (Graphs whose first Node is a producer like RTSPInput or StillImageInput — no push() from user code needed). Push pipelines should prefer build(inputs, ...) so caps can be derived from the actual input.

Definition at line 359 of file Graph.h.

connect()

Graph & simaai::neat::Graph::connect (std::string_view from_endpoint, std::string_view to_endpoint)

Connect named endpoints or reusable fragments through the public Graph compiler.

add() means linear splicing. connect() means explicit graph topology. Endpoints are declared with existing nodes::Input("name") / nodes::Output("name") boundary nodes or by model route boundary hints. Graph("name") is only a label/debug name and does not create an endpoint. All overloads lower through the same ExecutionGraphPlan/RunCore path, preserving named endpoints for diagnostics, save/load, visualization, and named Run::push() / Run::pull().

Definition at line 218 of file Graph.h.

connect()

Graph & simaai::neat::Graph::connect (const Graph & from, const Graph & to)

Definition at line 219 of file Graph.h.

connect()

Graph & simaai::neat::Graph::connect (std::shared_ptr< Node > from, std::shared_ptr< Node > to)

Definition at line 220 of file Graph.h.

connect()

Graph & simaai::neat::Graph::connect (const Graph & from, std::shared_ptr< Node > to)

Definition at line 221 of file Graph.h.

connect()

Graph & simaai::neat::Graph::connect (std::shared_ptr< Node > from, const Graph & to)

Definition at line 222 of file Graph.h.

connect()

Graph & simaai::neat::Graph::connect (const Model & from, const Model & to)

Definition at line 223 of file Graph.h.

connect()

Graph & simaai::neat::Graph::connect (const Model & from, const Graph & to)

Definition at line 224 of file Graph.h.

connect()

Graph & simaai::neat::Graph::connect (const Graph & from, const Model & to)

Definition at line 225 of file Graph.h.

connect()

Graph & simaai::neat::Graph::connect (const Model & from, std::shared_ptr< Node > to)

Definition at line 226 of file Graph.h.

connect()

Graph & simaai::neat::Graph::connect (std::shared_ptr< Node > from, const Model & to)

Definition at line 227 of file Graph.h.

custom()

Graph & simaai::neat::Graph::custom (std::string fragment)

Splice a raw GStreamer launch fragment into the pipeline.

Useful for one-off experiments, third-party plugins NEAT doesn't wrap, or GStreamer features (tee, selector, dynamic pads) that are awkward to model as Nodes. The trade-off: you lose deterministic naming for the spliced fragment. Use sparingly.

Parameters
fragment

Raw GStreamer launch string (e.g., "identity silent=false ! videocrop ...").

Returns

*this to allow chaining.

Definition at line 251 of file Graph.h.

custom()

Graph & simaai::neat::Graph::custom (std::string fragment, InputRole role)

Variant that declares the fragment's role (e.g., source vs. sink).

Definition at line 253 of file Graph.h.

describe()

std::string simaai::neat::Graph::describe (const GraphPrinter::Options & opt={})

Returns a hierarchical, human-readable view of the Nodes added so far.

Definition at line 330 of file Graph.h.

describe_backend()

std::string simaai::neat::Graph::describe_backend (bool insert_boundaries=false)

Returns the GStreamer launch string the Graph would emit at build().

Paste into gst-launch-1.0 to reproduce the pipeline outside the framework — invaluable for debugging caps issues or isolating "is this NEAT's bug or GStreamer's?"

Parameters
insert_boundaries

If true, inserts diagnostic identity probes between Nodes.

Definition at line 339 of file Graph.h.

inputs()

std::vector< std::string > simaai::neat::Graph::inputs ()

Return public logical input endpoint names declared by this Graph.

Definition at line 186 of file Graph.h.

last_pipeline()

const std::string & simaai::neat::Graph::last_pipeline ()
inline

Returns the GStreamer launch string from the most recent build() call.

Definition at line 362 of file Graph.h.

362 const std::string& last_pipeline() const {
363 return last_pipeline_;
364 }

name()

const std::string & simaai::neat::Graph::name ()
noexcept

Return the Graph label, if one was provided.

Definition at line 184 of file Graph.h.

outputs()

std::vector< std::string > simaai::neat::Graph::outputs ()

Return public logical output endpoint names declared by this Graph.

Definition at line 188 of file Graph.h.

run()

void simaai::neat::Graph::run ()

Run a source-mode pipeline (no inputs pushed; producer Nodes drive the flow).

Used in conjunction with set_tensor_callback(). The pipeline runs until end-of-stream or until the callback returns false.

Exceptions
<a href="/reference/cppapi/classes/simaai-neat-neaterror">NeatError</a>

on validation or runtime failure (with structured GraphReport).

Definition at line 264 of file Graph.h.

run()

TensorList simaai::neat::Graph::run (const std::vector< cv::Mat > & inputs, const RunOptions & opt={})

One-shot synchronous push+pull from cv::Mat inputs.

Definition at line 266 of file Graph.h.

run()

TensorList simaai::neat::Graph::run (const TensorList & inputs, const RunOptions & opt={})

One-shot synchronous push+pull from Tensor inputs.

Definition at line 268 of file Graph.h.

run()

Sample simaai::neat::Graph::run (const Sample & inputs, const RunOptions & opt={})

One-shot synchronous push+pull from Sample inputs (carries per-buffer metadata).

Definition at line 270 of file Graph.h.

run_rtsp()

RtspServerHandle simaai::neat::Graph::run_rtsp (const RtspServerOptions & opt)

Build the Graph and run it as an RTSP server.

The Graph must terminate in an H.264 encoded stream. The returned handle owns a live RTSP server publishing the pipeline's output to network clients. Stop the server by calling handle.stop() or letting the handle go out of scope.

Parameters
opt

RTSP server options (mount point, port, RTP port range).

Returns

Live RtspServerHandle exposing the broadcast URL.

Definition at line 304 of file Graph.h.

save()

void simaai::neat::Graph::save (const std::string & path)

Save the Graph's Node list, options, and topology to a JSON file at path.

Definition at line 348 of file Graph.h.

set_guard()

void simaai::neat::Graph::set_guard (std::shared_ptr< void > guard)

Attach an external lifetime guard (used by externally-managed runtimes).

Definition at line 342 of file Graph.h.

set_name()

Graph & simaai::neat::Graph::set_name (std::string name)

Set the Graph label used for diagnostics, save/load, and visualization.

Definition at line 182 of file Graph.h.

set_tensor_callback()

void simaai::neat::Graph::set_tensor_callback (TensorCallback cb)

Set the per-tensor callback used by source-mode run().

Definition at line 345 of file Graph.h.

validate()

GraphReport simaai::neat::Graph::validate (const ValidateOptions & opt, const cv::Mat & input)

Validate the Graph against a real input sample without running the pipeline.

Runs structural contracts AND build-time adaptation against the input. Reports whether the pipeline would accept this input shape/format and what conversions would be needed. Useful in CI to catch shape mismatches before deploying.

Definition at line 291 of file Graph.h.

validate()

GraphReport simaai::neat::Graph::validate (const ValidateOptions & opt={})

Validate the Graph structurally without running.

Runs all built-in contracts (NonEmptyPipeline, NoNullNodes, SinkLastForRun, etc.) and returns a structured GraphReport. Cheaper than build() because it doesn't instantiate GStreamer state. Useful in unit tests and CI.

Returns

GraphReport carrying any contract failures, with error_code and repro_note.

Definition at line 315 of file Graph.h.

Private Member Functions

append_linear_fragment_()

std::pair< std::size_t, std::size_t > simaai::neat::Graph::append_linear_fragment_ (const Graph & fragment, const char * where)

Definition at line 473 of file Graph.h.

build_cached_source()

void simaai::neat::Graph::build_cached_source ()

Definition at line 500 of file Graph.h.

connect_imported_ranges_()

void simaai::neat::Graph::connect_imported_ranges_ (std::pair< std::size_t, std::size_t > from_range, std::string_view from_name, std::pair< std::size_t, std::size_t > to_range, std::string_view to_name, const char * where)

Definition at line 488 of file Graph.h.

import_composition_fragment_()

std::pair< std::size_t, std::size_t > simaai::neat::Graph::import_composition_fragment_ (const Graph & fragment, const char * where)

Definition at line 475 of file Graph.h.

import_or_reuse_composition_fragment_()

std::pair< std::size_t, std::size_t > simaai::neat::Graph::import_or_reuse_composition_fragment_ (const Graph & fragment, const char * where)

Definition at line 477 of file Graph.h.

import_or_reuse_model_fragment_()

std::pair< std::size_t, std::size_t > simaai::neat::Graph::import_or_reuse_model_fragment_ (const Model & model, const char * where)

Definition at line 486 of file Graph.h.

import_or_reuse_node_fragment_()

std::pair< std::size_t, std::size_t > simaai::neat::Graph::import_or_reuse_node_fragment_ (std::shared_ptr< Node > node, const char * where)

Definition at line 484 of file Graph.h.

import_or_reuse_output_collection_fragment_()

std::pair< std::size_t, std::size_t > simaai::neat::Graph::import_or_reuse_output_collection_fragment_ (const Graph & fragment, const char * where)

Definition at line 483 of file Graph.h.

import_output_collection_fragment_()

std::pair< std::size_t, std::size_t > simaai::neat::Graph::import_output_collection_fragment_ (const Graph & fragment, const char * where)

Definition at line 480 of file Graph.h.

invalidate_built_()

void simaai::neat::Graph::invalidate_built_ ()
noexcept

Drop the built pipeline (if any) and any cached runner.

Tears down GStreamer resources via RAII; safe to call when there is no built state. Never throws.

Definition at line 426 of file Graph.h.

is_output_collection_fragment_()

bool simaai::neat::Graph::is_output_collection_fragment_ (const Graph & fragment)

Definition at line 479 of file Graph.h.

linear_nodes_snapshot()

std::vector< std::shared_ptr< Node > > simaai::neat::Graph::linear_nodes_snapshot (const char * where)

Definition at line 499 of file Graph.h.

mark_composition_changed()

void simaai::neat::Graph::mark_composition_changed ()

Definition at line 472 of file Graph.h.

prepare_source_()

PreparedSource simaai::neat::Graph::prepare_source_ (RunMode mode, const RunOptions & opt, SinkRequirement sink_req, const char * where)

Shared "build a source-mode pipeline to PAUSED" body for build(RunOptions) and build_cached_source().

Validates, materializes, compiles, attaches all probes, resolves the sink, and drives to GST_STATE_PAUSED. Callers add the state transition step (PLAYING for live build, or stay at PAUSED to cache).

Definition at line 432 of file Graph.h.

Private Member Attributes

built_

std::unique_ptr<BuiltState> simaai::neat::Graph::built_

Definition at line 467 of file Graph.h.

467 std::unique_ptr<BuiltState> built_;

built_version_

uint64_t simaai::neat::Graph::built_version_ = 0

Definition at line 469 of file Graph.h.

469 uint64_t built_version_ = 0;

composition_

std::unique_ptr<CompositionGraph> simaai::neat::Graph::composition_

Definition at line 457 of file Graph.h.

457 std::unique_ptr<CompositionGraph> composition_;

endpoint_name_

std::string simaai::neat::Graph::endpoint_name_

Definition at line 463 of file Graph.h.

463 std::string endpoint_name_;

graph_id_

uint64_t simaai::neat::Graph::graph_id_ = 0

Definition at line 465 of file Graph.h.

465 uint64_t graph_id_ = 0;

groups_

std::vector<GroupMeta> simaai::neat::Graph::groups_

Definition at line 458 of file Graph.h.

458 std::vector<GroupMeta> groups_;

guard_

std::shared_ptr<void> simaai::neat::Graph::guard_

Definition at line 460 of file Graph.h.

460 std::shared_ptr<void> guard_;

input_route_processor_

std::shared_ptr<const pipeline_internal::InputRouteProcessor> simaai::neat::Graph::input_route_processor_

Definition at line 470 of file Graph.h.

470 std::shared_ptr<const pipeline_internal::InputRouteProcessor> input_route_processor_;

last_pipeline_

std::string simaai::neat::Graph::last_pipeline_

Definition at line 459 of file Graph.h.

459 std::string last_pipeline_;

nodes_version_

std::atomic<uint64_t> simaai::neat::Graph::nodes_version_ {0}

Definition at line 466 of file Graph.h.

466 std::atomic<uint64_t> nodes_version_{0};

opt_

GraphOptions simaai::neat::Graph::opt_ {}

Definition at line 462 of file Graph.h.

462 GraphOptions opt_{};

run_cache_

std::unique_ptr<RunCache> simaai::neat::Graph::run_cache_

Definition at line 468 of file Graph.h.

468 std::unique_ptr<RunCache> run_cache_;

tensor_cb_

TensorCallback simaai::neat::Graph::tensor_cb_

Definition at line 464 of file Graph.h.

464 TensorCallback tensor_cb_;

verbose_guard_

std::shared_ptr<void> simaai::neat::Graph::verbose_guard_

Definition at line 461 of file Graph.h.

461 std::shared_ptr<void> verbose_guard_;

Public Static Functions

load()

Graph simaai::neat::Graph::load (const std::string & path)
static

Reconstruct a Graph from a previously-saved JSON file.

Definition at line 350 of file Graph.h.


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


Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.