---
title: "ClikaRT::runtime::ModelSchema"
sidebar_label: "ModelSchema"
description: "A model's full I/O contract."
---

<!-- Generated by tools/doxygen2mdx from Doxygen XML. Do not edit. -->

<span class="api-kind api-kind--struct">struct</span>

**Header:** `ClikaRT/runtime/schema.h`

A model's full I/O contract.

## Member functions

### find\_input() {#find_input}

<div class="api-signature">

`const` [`spec::TensorSpec`](../spec/TensorSpec.md)`*` **`find_input`**(`std::string_view` `n`) `const`

</div>

The input spec named `n`, or nullptr.

<div class="api-declared">

Declared in `ClikaRT/runtime/schema.h`, line 139

</div>

### find\_output() {#find_output}

<div class="api-signature">

`const` [`spec::TensorSpec`](../spec/TensorSpec.md)`*` **`find_output`**(`std::string_view` `n`) `const`

</div>

The output spec named `n`, or nullptr.

<div class="api-declared">

Declared in `ClikaRT/runtime/schema.h`, line 144

</div>

## Data members

### inputs {#inputs}

<div class="api-signature">

`std::vector<`[`spec::TensorSpec`](../spec/TensorSpec.md)`>` **`inputs`**

</div>

the consumed edges

<div class="api-declared">

Declared in `ClikaRT/runtime/schema.h`, line 133

</div>

### outputs {#outputs}

<div class="api-signature">

`std::vector<`[`spec::TensorSpec`](../spec/TensorSpec.md)`>` **`outputs`**

</div>

the produced edges

<div class="api-declared">

Declared in `ClikaRT/runtime/schema.h`, line 134

</div>

### stateful {#stateful}

<div class="api-signature">

`bool` **`stateful`** `= false`

</div>

true → the model carries per-session [ModelState](./ModelState.md)

<div class="api-declared">

Declared in `ClikaRT/runtime/schema.h`, line 135

</div>

### supports\_streaming {#supports_streaming}

<div class="api-signature">

`bool` **`supports_streaming`** `= false`

</div>

true → emits per-step chunks (Iterate)

<div class="api-declared">

Declared in `ClikaRT/runtime/schema.h`, line 136

</div>
