flowRS Open the IDE

Knowledge graph

Every pillar of the node library, and the media types that let them connect. An arc runs from one pillar to another when the first produces a value the second accepts — the same rule the editor applies when you drag a wire. Hover a pillar to isolate it. Node counts include any seams (nodes whose generated Rust compiles and then panics) and stand-ins (nodes that run a deterministic substitute for the model or device they are named after), and the neuroscience nodes the editor installs. The node reference marks the seams and the stand-ins.

35
pillars
322
nodes
250
connections
129
media types
neuro → dsp: Vec<f64>@{unit=$T}, bool, f64@{unit=Hz}neuro → stats: Vec<f64>@{unit=$T}neuro → ml: Vec<f64>neuro → embedded: boolneuro → gen: Stringneuro → neural: Stringneuro → vec3: f64@{unit=$T}neuro → math: f64@{unit=$T}neuro → record: String, f64neuro → cloud: Stringneuro → logic: bool, f64@{unit=$T}neuro → text: List@{values=text}, Stringneuro → instrument: Stringneuro → flow: List@{values=text}, Stringneuro → mavlink: Vec<f64>, bool, f64neuro → ai: Stringneuro → clock: f64neuro → unit: f64dsp → gen: Stringdsp → neural: Stringdsp → record: Stringdsp → cloud: Stringdsp → text: Stringdsp → instrument: Stringdsp → flow: Stringdsp → ai: Stringimage → embedded: f32@{unit=1}image → vision: DynamicImage@[y:h, x:w]image → video: DynamicImage@[y:?, x:?]stats → data: DataFramestats → ml: DataFrame, Vec<f64>stats → vec3: f64@{unit=$T}stats → math: f64@{unit=$T}stats → record: f64stats → logic: f64@{unit=$T}stats → mavlink: Vec<f64>, f64stats → ros: Anystats → clock: f64stats → unit: f64data → dsp: f32@{unit=Hz}data → stats: DataFramedata → ml: DataFrame, Vec<f64>data → gen: Stringdata → neural: Stringdata → record: String, f64data → cloud: Stringdata → text: Stringdata → instrument: Stringdata → flow: Stringdata → mavlink: Vec<f64>, f64data → ai: Stringdata → clock: f64data → unit: f64ml → gen: String, Tensorml → neural: Model, String, Tensor, Tensor@{unit=$T}, Tensor@{unit=1}ml → record: Stringml → cloud: Stringml → text: Stringml → instrument: Stringml → flow: Stringml → ai: Stringaudio → vision: Vec<Detection>audio → neural: Vec<Detection>audio → video: Vec<Detection>embedded → dsp: Vec<u8>, boolembedded → ml: Vec<u8>embedded → logic: Trigger, boolembedded → mavlink: boolembedded → imu: Vec<u8>vision → image: DynamicImage@[y:h, x:w]vision → ml: Tensor@{unit=1}vision → neural: Tensor@{unit=1}, Vec<Detection>vision → video: Vec<Detection>decode → gen: Stringdecode → neural: Stringdecode → record: Stringdecode → cloud: Stringdecode → text: Stringdecode → instrument: Stringdecode → flow: Stringdecode → ai: Stringgen → ml: Tensorgen → vision: DynamicImagegen → neural: DynamicImage, String, Tensorgen → record: Stringgen → cloud: Stringgen → text: Stringgen → instrument: Stringgen → flow: Stringgen → ai: DynamicImage, Stringneural → ml: Model, Tensor, Tensor@{unit=1}neural → vision: Vec<Detection>neural → gen: Mask, Tensorneural → video: Vec<Detection>vec3 → math: f64@{unit=$T}vec3 → logic: f64@{unit=$T}video → dsp: f64@{unit=Hz}video → vision: Vec<Detection>video → neural: Vec<Detection>math → vec3: f64@{unit=$T}math → logic: f64@{unit=$T}record → dsp: boolrecord → embedded: boolrecord → gen: Stringrecord → neural: Stringrecord → cloud: Stringrecord → logic: boolrecord → text: Stringrecord → instrument: Stringrecord → flow: Stringrecord → mavlink: boolrecord → ai: Stringcloud → dsp: boolcloud → stats: DataFramecloud → data: DataFramecloud → ml: DataFramecloud → embedded: boolcloud → gen: Stringcloud → neural: Stringcloud → record: String, f64cloud → logic: boolcloud → text: Stringcloud → instrument: Stringcloud → flow: Stringcloud → mavlink: bool, f64cloud → ai: Stringcloud → ros: Anycloud → clock: f64cloud → unit: f64logic → dsp: boollogic → embedded: boollogic → msg: T@{unit=$T}logic → flow: Any@{unit=$T}logic → mavlink: boollogic → io: Any@{unit=$T}text → dsp: booltext → embedded: booltext → gen: Stringtext → neural: Stringtext → record: Stringtext → cloud: Stringtext → logic: booltext → instrument: Stringtext → flow: List@{values=text}, Stringtext → mavlink: booltext → ai: Stringinstrument → dsp: boolinstrument → embedded: boolinstrument → gen: Stringinstrument → neural: Stringinstrument → record: Octets, Runs, Stringinstrument → cloud: Stringinstrument → logic: boolinstrument → text: Stringinstrument → msg: Recordinstrument → flow: Stringinstrument → mavlink: boolinstrument → ai: Stringlist → logic: T@{unit=$T}list → msg: T@{unit=$T}msg → text: List@{values=text}msg → flow: List@{values=text}flow → dsp: boolflow → embedded: boolflow → gen: Stringflow → neural: Stringflow → record: Stringflow → cloud: Stringflow → logic: boolflow → text: List@{values=text}, Stringflow → instrument: Stringflow → list: List@{unit=$T}flow → mavlink: boolflow → ai: Stringlive → neuro: Timeseries@[time:?, channel:?]live → gen: Stringlive → neural: Stringlive → record: Stringlive → cloud: Stringlive → text: List@{values=text}, Stringlive → instrument: Stringlive → flow: List@{values=text}, Stringlive → ai: Stringmavlink → dsp: boolmavlink → embedded: boolmavlink → gen: Stringmavlink → neural: Stringmavlink → record: String, f64mavlink → cloud: Stringmavlink → logic: boolmavlink → text: Stringmavlink → instrument: Stringmavlink → flow: Stringmavlink → ai: Stringmavlink → clock: f64mavlink → unit: f64ai → vision: Vec<Detection>ai → gen: Stringai → neural: String, Vec<Detection>ai → video: Vec<Detection>ai → record: Stringai → cloud: Stringai → text: Stringai → instrument: Stringai → flow: Stringio → gen: Stringio → neural: Stringio → record: Stringio → cloud: Stringio → text: Stringio → instrument: Stringio → flow: Stringio → ai: Stringros → gen: Stringros → neural: Stringros → record: Stringros → cloud: Stringros → text: Stringros → instrument: Stringros → flow: Stringros → ai: Stringcapture → dsp: f64@{unit=Hz}capture → decode: Capturecapture → gen: Stringcapture → neural: Stringcapture → record: Stringcapture → cloud: Stringcapture → text: List@{values=text}, Stringcapture → instrument: Stringcapture → flow: List@{values=text}, Stringcapture → ai: Stringclock → record: f64clock → mavlink: f64clock → unit: f64signal → embedded: f32@{unit=1}twin → dsp: bool, f32@{unit=Hz}twin → embedded: booltwin → gen: Stringtwin → neural: Stringtwin → record: Stringtwin → cloud: Stringtwin → logic: booltwin → text: Stringtwin → instrument: Stringtwin → flow: Stringtwin → mavlink: booltwin → ai: Stringunit → record: f64unit → mavlink: f64unit → clock: f6449neuroneuro: 49 nodes — produces ConnectivityMatrix, FeatureRows, IcaMixing@[channel:?, component:?], IcaUnmixing@[component:?, channel:?], List, List@{values=text}, SpdMatrices, Spectrum@{unit=$T^2/Hz}, String, Timeseries, Timeseries@[epoch:?, time:?, channel:?], Timeseries@[epoch:?, time:?, channel:?]@{unit=$T}, Timeseries@[time:?, channel:?], Timeseries@[time:?, channel:?]@{unit=$T}, Vec<f64>, Vec<f64>@{unit=$T^2}, Vec<f64>@{unit=$T}, Vec<f64>@{unit=1}, Vec<f64>@{unit=Hz}, Vec<f64>@{unit={dB}}, Vec<f64>@{unit={power}}, bool, f64, f64@{unit=$T^2}, f64@{unit=$T}, f64@{unit=Hz}, f64@{unit=s}, i32, i32@{unit={count}}; accepts IcaMixing@[channel:?, component:?], IcaUnmixing@[component:?, channel:?], List, SpdMatrices, Timeseries, Timeseries@[epoch:?, time:?, channel:?], Timeseries@[epoch:?, time:?, channel:?]@{unit=$T}, Timeseries@[time:?, channel:?], Timeseries@[time:?, channel:?]@{unit=$T}24dspdsp: 24 nodes — produces String, Vec<f64>@[freq:?]@{unit=$T}, Vec<f64>@[freq:?]@{unit=rad}, Vec<f64>@[time:?]@{unit=$A.$B}, Vec<f64>@[time:?]@{unit=$T}, Vec<f64>@[time:?]@{unit=1}, Vec<f64>@[time:n]@{unit=$T}, Vec<f64>@{unit=s}, f32@{unit=$T}, f64@{unit=Hz}, i64@{unit=1}, i64@{unit={count}}; accepts Vec<f64>@[freq:n]@{unit=$T}, Vec<f64>@[freq:n]@{unit=rad}, Vec<f64>@[time:?]@{unit=$B}, Vec<f64>@[time:n]@{unit=$A}, Vec<f64>@[time:n]@{unit=$T}, Vec<f64>@{unit=$T}, Vec<u8>, bool, f32@{unit=Hz}, f32@{unit=rad}, f64@{unit=Hz}22imageimage: 22 nodes — produces DynamicImage@[y:?, x:?], DynamicImage@[y:h, x:w], Vec<u32>@[bin:256]@{unit={count}}, f32@{unit=1}, i32@{unit=flowrs:pixel}; accepts DynamicImage@[y:?, x:?], DynamicImage@[y:h, x:w]21statsstats: 21 nodes — produces Any, DataFrame, Vec<f64>, Vec<i64>@{unit={count}}, f64, f64@{unit=$T}, f64@{unit=1}, i64@{unit={count}}; accepts DataFrame, Vec<f64>@{unit=$T}20datadata: 20 nodes — produces DataFrame, String, Vec<f64>, f32@{unit=Hz}, f64, i32@{unit={count}}, i64@{unit=ms, clock=utc}; accepts DataFrame15mlml: 15 nodes — produces Model, String, Tensor, Tensor@{unit=$A.$B}, Tensor@{unit=$T}, Tensor@{unit=1}, Vec<f32>, f64@{unit=1}, i32@{unit=1}, u32@{unit=By}; accepts DataFrame, Model, Tensor, Tensor@{unit=$A.$B}, Tensor@{unit=$A}, Tensor@{unit=$B}, Tensor@{unit=$T}, Tensor@{unit=1}, Vec<f64>, Vec<u8>14audioaudio: 14 nodes — produces AudioBuffer@[time:?]@{unit=$T}, AudioBuffer@[time:?]@{unit=1}, AudioBuffer@[time:n]@{unit=$T}, Tensor@[frame:?, coeff:?]@{unit=1}, Tensor@[frame:?, freq:?]@{unit=$T}, Tensor@[frame:?, mel:?]@{unit=$T^2}, Vec<Detection>, Vec<f32>@[frame:?]@{unit=Hz}, Vec<f32>@[time:n]@{unit=$T}; accepts AudioBuffer@[time:n]@{unit=$T}12embeddedembedded: 12 nodes — produces Trigger, Vec<f64>@{unit=V}, Vec<u8>, bool, f32@{unit=V}, u16@{unit=flowrs:LSB}, u32@{unit={count}}; accepts Trigger, Vec<u8>, bool, f32@{unit=1}, u8@{unit=1}11visionvision: 11 nodes — produces DynamicImage@[y:h, x:w], Mask@[y:h, x:w], Tensor@[keypoint:?, descriptor:32]@{unit=1}, Tensor@{unit=1}, Tensor@{unit=flowrs:pixel}, Vec<Detection>, u32@{unit={count}}; accepts DynamicImage, DynamicImage@[y:h, x:w], Frame, Mask@[y:h, x:w], Vec<Detection>10decodedecode: 10 nodes — produces Capture, String, Vec<f64>@{unit=1}, Vec<f64>@{unit=flowrs:LSB}, i32@{unit={count}}; accepts Capture10gengen: 10 nodes — produces DynamicImage, Embedding, String, Tensor; accepts AudioBuffer@{unit=1}, DynamicImage, Mask, String, Tensor10neuralneural: 10 nodes — produces Embedding, Mask, Model, Tensor, Tensor@{unit=1}, Vec<Detection>, u32@{unit=1}; accepts DynamicImage, Model, String, Tensor, Tensor@{unit=$T}, Tensor@{unit=1}, Vec<Detection>10vec3vec3: 10 nodes — produces [f32; 3]@{unit=$A.$B}, [f32; 3]@{unit=$A/$B}, [f32; 3]@{unit=$T}, [f32; 3]@{unit=1}, f64@{unit=$T}; accepts [f32; 3]@{unit=$A}, [f32; 3]@{unit=$B}, [f32; 3]@{unit=$T}, [f32; 3]@{unit=1}, f64@{unit=$T}10videovideo: 10 nodes — produces Frame@[y:?, x:?], Vec<Detection>, VideoStream@[frame:?], VideoStream@[frame:n], f64@{unit=Hz}; accepts DynamicImage@[y:?, x:?], Vec<Detection>, VideoStream@[frame:n]8mathmath: 8 nodes — produces f64@{unit=$A.$B}, f64@{unit=$A/$B}, f64@{unit=$T}; accepts f64@{unit=$A}, f64@{unit=$B}, f64@{unit=$T}8recordrecord: 8 nodes — produces Measurement, Measurements, Octets, Runs, String, TestRun, bool, f64@{unit=%}, f64@{unit=1}, i32@{unit=By}, i32@{unit={count}}; accepts Measurement, Measurements, Octets, Runs, String, TestRun, f647cloudcloud: 7 nodes — produces Any, DataFrame, Detections, String, bool, f64, f64@{unit=1}, u32@{unit={count}}; accepts String7logiclogic: 7 nodes — produces Any@{unit=$T}, T@{unit=$T}, bool; accepts Any@{unit=$T}, T@{unit=$T}, Trigger, bool, f64@{unit=$T}7texttext: 7 nodes — produces List@{values=text}, String, bool, i64@{unit={count}}; accepts List@{values=text}, String6instrumentinstrument: 6 nodes — produces Octets, Record, Runs, Signal, String, bool, f64@{unit=%}, f64@{unit=1}, i32@{unit=By}, i32@{unit={count}}; accepts String6listlist: 6 nodes — produces List@{unit=$T}, T@{unit=$T}, i64@{unit={count}}; accepts List@{unit=$T}6msgmsg: 6 nodes — produces List@{values=text}, Record, T; accepts Record, T@{unit=$T}5flowflow: 5 nodes — produces List@{unit=$T}, List@{values=text}, String, bool, f64@{unit=s}; accepts Any@{unit=$T}, List@{values=text}, String, f64@{unit=ms}, f64@{unit={count}}4livelive: 4 nodes — produces Float@{unit=Hz}, List@{values=text}, Signal, Signal@{unit=s}, String, Timeseries@[time:?, channel:?]; accepts 4mavlinkmavlink: 4 nodes — produces String, bool, f64; accepts Vec<f64>, bool, f643aiai: 3 nodes — produces String, Vec<Detection>; accepts DynamicImage, String3ioio: 3 nodes — produces String; accepts Any@{unit=$T}2imuimu: 2 nodes — produces Vec<f64>@{unit=m/s2}, Vec<f64>@{unit=rad/s}, f64@{unit=Cel}, f64@{unit=deg}; accepts Vec<u8>, f64@{unit=deg}2rosros: 2 nodes — produces Any, String; accepts Any1capturecapture: 1 nodes — produces Capture, List@{values=text}, String, f64@{unit=Hz}, f64@{unit=s}, i32@{unit={count}}; accepts 1clockclock: 1 nodes — produces f64; accepts f641microphonemicrophone: 1 nodes — produces Vec<f32>@{unit=1}; accepts 1signalsignal: 1 nodes — produces f32@{unit=1}; accepts 1twintwin: 1 nodes — produces String, Vec<f64>@[time:?], bool, f32@{unit=Hz}; accepts 1unitunit: 1 nodes — produces f64; accepts f64

Media types on ports: Any Any@{unit=$T} AudioBuffer@[time:?]@{unit=$T} AudioBuffer@[time:?]@{unit=1} AudioBuffer@[time:n]@{unit=$T} AudioBuffer@{unit=1} Capture ConnectivityMatrix DataFrame Detections DynamicImage DynamicImage@[y:?, x:?] DynamicImage@[y:h, x:w] Embedding FeatureRows Float@{unit=Hz} Frame Frame@[y:?, x:?] IcaMixing@[channel:?, component:?] IcaUnmixing@[component:?, channel:?] List List@{unit=$T} List@{values=text} Mask Mask@[y:h, x:w] Measurement Measurements Model Octets Record Runs Signal Signal@{unit=s} SpdMatrices Spectrum@{unit=$T^2/Hz} String T T@{unit=$T} Tensor Tensor@[frame:?, coeff:?]@{unit=1} Tensor@[frame:?, freq:?]@{unit=$T} Tensor@[frame:?, mel:?]@{unit=$T^2} Tensor@[keypoint:?, descriptor:32]@{unit=1} Tensor@{unit=$A.$B} Tensor@{unit=$A} Tensor@{unit=$B} Tensor@{unit=$T} Tensor@{unit=1} Tensor@{unit=flowrs:pixel} TestRun Timeseries Timeseries@[epoch:?, time:?, channel:?] Timeseries@[epoch:?, time:?, channel:?]@{unit=$T} Timeseries@[time:?, channel:?] Timeseries@[time:?, channel:?]@{unit=$T} Trigger Vec<Detection> Vec<f32> Vec<f32>@[frame:?]@{unit=Hz} Vec<f32>@[time:n]@{unit=$T} Vec<f32>@{unit=1} Vec<f64> Vec<f64>@[freq:?]@{unit=$T} Vec<f64>@[freq:?]@{unit=rad} Vec<f64>@[freq:n]@{unit=$T} Vec<f64>@[freq:n]@{unit=rad} Vec<f64>@[time:?] Vec<f64>@[time:?]@{unit=$A.$B} Vec<f64>@[time:?]@{unit=$B} Vec<f64>@[time:?]@{unit=$T} Vec<f64>@[time:?]@{unit=1} Vec<f64>@[time:n]@{unit=$A} Vec<f64>@[time:n]@{unit=$T} Vec<f64>@{unit=$T^2} Vec<f64>@{unit=$T} Vec<f64>@{unit=1} Vec<f64>@{unit=Hz} Vec<f64>@{unit=V} Vec<f64>@{unit=flowrs:LSB} Vec<f64>@{unit=m/s2} Vec<f64>@{unit=rad/s} Vec<f64>@{unit=s} Vec<f64>@{unit={dB}} Vec<f64>@{unit={power}} Vec<i64>@{unit={count}} Vec<u32>@[bin:256]@{unit={count}} Vec<u8> VideoStream@[frame:?] VideoStream@[frame:n] [f32; 3]@{unit=$A.$B} [f32; 3]@{unit=$A/$B} [f32; 3]@{unit=$A} [f32; 3]@{unit=$B} [f32; 3]@{unit=$T} [f32; 3]@{unit=1} bool f32@{unit=$T} f32@{unit=1} f32@{unit=Hz} f32@{unit=V} f32@{unit=rad} f64 f64@{unit=$A.$B} f64@{unit=$A/$B} f64@{unit=$A} f64@{unit=$B} f64@{unit=$T^2} f64@{unit=$T} f64@{unit=%} f64@{unit=1} f64@{unit=Cel} f64@{unit=Hz} f64@{unit=deg} f64@{unit=ms} f64@{unit=s} f64@{unit={count}} i32 i32@{unit=1} i32@{unit=By} i32@{unit=flowrs:pixel} i32@{unit={count}} i64@{unit=1} i64@{unit=ms, clock=utc} i64@{unit={count}} u16@{unit=flowrs:LSB} u32@{unit=1} u32@{unit=By} u32@{unit={count}} u8@{unit=1}

Pillars

PillarNodesProducesAccepts
neuro49ConnectivityMatrix, FeatureRows, IcaMixing@[channel:?, component:?], IcaUnmixing@[component:?, channel:?], List, List@{values=text}, SpdMatrices, Spectrum@{unit=$T^2/Hz}, String, Timeseries, Timeseries@[epoch:?, time:?, channel:?], Timeseries@[epoch:?, time:?, channel:?]@{unit=$T}, Timeseries@[time:?, channel:?], Timeseries@[time:?, channel:?]@{unit=$T}, Vec<f64>, Vec<f64>@{unit=$T^2}, Vec<f64>@{unit=$T}, Vec<f64>@{unit=1}, Vec<f64>@{unit=Hz}, Vec<f64>@{unit={dB}}, Vec<f64>@{unit={power}}, bool, f64, f64@{unit=$T^2}, f64@{unit=$T}, f64@{unit=Hz}, f64@{unit=s}, i32, i32@{unit={count}}IcaMixing@[channel:?, component:?], IcaUnmixing@[component:?, channel:?], List, SpdMatrices, Timeseries, Timeseries@[epoch:?, time:?, channel:?], Timeseries@[epoch:?, time:?, channel:?]@{unit=$T}, Timeseries@[time:?, channel:?], Timeseries@[time:?, channel:?]@{unit=$T}
dsp24String, Vec<f64>@[freq:?]@{unit=$T}, Vec<f64>@[freq:?]@{unit=rad}, Vec<f64>@[time:?]@{unit=$A.$B}, Vec<f64>@[time:?]@{unit=$T}, Vec<f64>@[time:?]@{unit=1}, Vec<f64>@[time:n]@{unit=$T}, Vec<f64>@{unit=s}, f32@{unit=$T}, f64@{unit=Hz}, i64@{unit=1}, i64@{unit={count}}Vec<f64>@[freq:n]@{unit=$T}, Vec<f64>@[freq:n]@{unit=rad}, Vec<f64>@[time:?]@{unit=$B}, Vec<f64>@[time:n]@{unit=$A}, Vec<f64>@[time:n]@{unit=$T}, Vec<f64>@{unit=$T}, Vec<u8>, bool, f32@{unit=Hz}, f32@{unit=rad}, f64@{unit=Hz}
image22DynamicImage@[y:?, x:?], DynamicImage@[y:h, x:w], Vec<u32>@[bin:256]@{unit={count}}, f32@{unit=1}, i32@{unit=flowrs:pixel}DynamicImage@[y:?, x:?], DynamicImage@[y:h, x:w]
stats21Any, DataFrame, Vec<f64>, Vec<i64>@{unit={count}}, f64, f64@{unit=$T}, f64@{unit=1}, i64@{unit={count}}DataFrame, Vec<f64>@{unit=$T}
data20DataFrame, String, Vec<f64>, f32@{unit=Hz}, f64, i32@{unit={count}}, i64@{unit=ms, clock=utc}DataFrame
ml15Model, String, Tensor, Tensor@{unit=$A.$B}, Tensor@{unit=$T}, Tensor@{unit=1}, Vec<f32>, f64@{unit=1}, i32@{unit=1}, u32@{unit=By}DataFrame, Model, Tensor, Tensor@{unit=$A.$B}, Tensor@{unit=$A}, Tensor@{unit=$B}, Tensor@{unit=$T}, Tensor@{unit=1}, Vec<f64>, Vec<u8>
audio14AudioBuffer@[time:?]@{unit=$T}, AudioBuffer@[time:?]@{unit=1}, AudioBuffer@[time:n]@{unit=$T}, Tensor@[frame:?, coeff:?]@{unit=1}, Tensor@[frame:?, freq:?]@{unit=$T}, Tensor@[frame:?, mel:?]@{unit=$T^2}, Vec<Detection>, Vec<f32>@[frame:?]@{unit=Hz}, Vec<f32>@[time:n]@{unit=$T}AudioBuffer@[time:n]@{unit=$T}
embedded12Trigger, Vec<f64>@{unit=V}, Vec<u8>, bool, f32@{unit=V}, u16@{unit=flowrs:LSB}, u32@{unit={count}}Trigger, Vec<u8>, bool, f32@{unit=1}, u8@{unit=1}
vision11DynamicImage@[y:h, x:w], Mask@[y:h, x:w], Tensor@[keypoint:?, descriptor:32]@{unit=1}, Tensor@{unit=1}, Tensor@{unit=flowrs:pixel}, Vec<Detection>, u32@{unit={count}}DynamicImage, DynamicImage@[y:h, x:w], Frame, Mask@[y:h, x:w], Vec<Detection>
decode10Capture, String, Vec<f64>@{unit=1}, Vec<f64>@{unit=flowrs:LSB}, i32@{unit={count}}Capture
gen10DynamicImage, Embedding, String, TensorAudioBuffer@{unit=1}, DynamicImage, Mask, String, Tensor
neural10Embedding, Mask, Model, Tensor, Tensor@{unit=1}, Vec<Detection>, u32@{unit=1}DynamicImage, Model, String, Tensor, Tensor@{unit=$T}, Tensor@{unit=1}, Vec<Detection>
vec310[f32; 3]@{unit=$A.$B}, [f32; 3]@{unit=$A/$B}, [f32; 3]@{unit=$T}, [f32; 3]@{unit=1}, f64@{unit=$T}[f32; 3]@{unit=$A}, [f32; 3]@{unit=$B}, [f32; 3]@{unit=$T}, [f32; 3]@{unit=1}, f64@{unit=$T}
video10Frame@[y:?, x:?], Vec<Detection>, VideoStream@[frame:?], VideoStream@[frame:n], f64@{unit=Hz}DynamicImage@[y:?, x:?], Vec<Detection>, VideoStream@[frame:n]
math8f64@{unit=$A.$B}, f64@{unit=$A/$B}, f64@{unit=$T}f64@{unit=$A}, f64@{unit=$B}, f64@{unit=$T}
record8Measurement, Measurements, Octets, Runs, String, TestRun, bool, f64@{unit=%}, f64@{unit=1}, i32@{unit=By}, i32@{unit={count}}Measurement, Measurements, Octets, Runs, String, TestRun, f64
cloud7Any, DataFrame, Detections, String, bool, f64, f64@{unit=1}, u32@{unit={count}}String
logic7Any@{unit=$T}, T@{unit=$T}, boolAny@{unit=$T}, T@{unit=$T}, Trigger, bool, f64@{unit=$T}
text7List@{values=text}, String, bool, i64@{unit={count}}List@{values=text}, String
instrument6Octets, Record, Runs, Signal, String, bool, f64@{unit=%}, f64@{unit=1}, i32@{unit=By}, i32@{unit={count}}String
list6List@{unit=$T}, T@{unit=$T}, i64@{unit={count}}List@{unit=$T}
msg6List@{values=text}, Record, TRecord, T@{unit=$T}
flow5List@{unit=$T}, List@{values=text}, String, bool, f64@{unit=s}Any@{unit=$T}, List@{values=text}, String, f64@{unit=ms}, f64@{unit={count}}
live4Float@{unit=Hz}, List@{values=text}, Signal, Signal@{unit=s}, String, Timeseries@[time:?, channel:?]
mavlink4String, bool, f64Vec<f64>, bool, f64
ai3String, Vec<Detection>DynamicImage, String
io3StringAny@{unit=$T}
imu2Vec<f64>@{unit=m/s2}, Vec<f64>@{unit=rad/s}, f64@{unit=Cel}, f64@{unit=deg}Vec<u8>, f64@{unit=deg}
ros2Any, StringAny
capture1Capture, List@{values=text}, String, f64@{unit=Hz}, f64@{unit=s}, i32@{unit={count}}
clock1f64f64
microphone1Vec<f32>@{unit=1}
signal1f32@{unit=1}
twin1String, Vec<f64>@[time:?], bool, f32@{unit=Hz}
unit1f64f64