> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/german/funktionsblocke/blocks-reference/data-logic/flow-control/subsystem-out.md).

# Subsystem Out

Dieser Funktionsblock stellt innerhalb eines Subsystems einen einzelnen Exportpunkt bereit. Verwenden Sie ihn, um Daten aus dem lokalen Subsystem-Kontext in die übergeordnete (Haupt-)Szene oder andere Teile Ihres Szenarios zu übertragen. Er wird typischerweise paarweise verwendet — jeder Exportpunkt wird auf einen entsprechenden Entry-Punkt in der übergeordneten Szene abgebildet.

## 📥 Eingänge

`Generic`\
Dieser Eingang akzeptiert beliebige Datentypen, die Sie außerhalb des Subsystems sichtbar machen möchten (Bilder, Zahlen, Listen, Dictionaries usw.).

## 📤 Ausgänge

Dieser Funktionsblock erzeugt in seiner lokalen Ansicht keine direkten Ausgänge — stattdessen macht er den verbundenen Eingang im übergeordneten Kontext verfügbar, wo entsprechende Entry-Punkte ihn empfangen.

## 🕹️ Steuerungen

Dieser Block hat keine interaktiven Steuerelemente.\
Wenn er innerhalb eines Subsystems verwendet wird, zeigt der Block einen kleinen numerischen Titel/Index an, der seine Exportposition relativ zu anderen Exportpunkten kennzeichnet.

## 🎨 Funktionen

* `Expose Local Data`\
  Erlaubt, jeden Wert aus einem Subsystem für die übergeordnete Szene verfügbar zu machen.
* `Multiple Exports`\
  Mehrere dieser Blöcke in einem Subsystem erzeugen mehrere, geordnete Exportkanäle. Der angezeigte Index hilft bei der Zuordnung.
* `Type Syncing`\
  Der Exportpunkt passt sich dem Datentyp der verbundenen Eingabe an, sodass der entsprechende Parent-Entry denselben Datentyp erwartet.
* `Safe Use in Main Scene`\
  Wird der Block in der Hauptszene platziert, leitet er seinen Eingabewert als normale Durchreich-Ausgabe weiter — praktisch zum Testen oder wenn das Subsystem geöffnet ist.

## 📝 Nutzungshinweise

1. Fügen Sie einen Subsystem-Container hinzu (verwenden Sie den Block `Subsystem`) und arbeiten Sie innerhalb dieses Containers.
2. Platzieren Sie einen oder mehrere `Subsystem Out`-Blöcke an den Stellen im Subsystem, an denen Sie Werte exportieren möchten.
3. Verbinden Sie Ihre internen Verarbeitungsergebnisse mit dem `Generic`-Eingang jedes `Subsystem Out`-Blocks.
4. Fügen Sie in der übergeordneten Szene entsprechende Entry-Punkte hinzu, um die exportierten Daten zu empfangen. Die numerische Beschriftung jedes `Subsystem Out` hilft beim Abgleich der richtigen Parent-Eingänge.

## 📊 Bewertung

Beim Ausführen des Szenarios macht dieser Block den aktuellen Wert, der an seinem `Generic`-Eingang anliegt, im äußeren (übergeordneten) Kontext verfügbar. Mehrere Exportblöcke erzeugen eine geordnete Liste exportierter Werte, die die Parent-Szene in derselben Reihenfolge konsumieren kann.

## 💡 Tipps und Tricks

* Kombinieren Sie mit `Subsystem In`, um exportierte Werte innerhalb Ihrer Hauptszene oder eines anderen Subsystems zu empfangen.
* Verwenden Sie `Subsystem Enabled`, um zu steuern, ob ein Subsystem aktiv ist und somit seine Exporte zu einem bestimmten Zeitpunkt relevant sind.
* Wenn Sie mehrere heterogene Werte über einen einzelnen Exportkanal bereitstellen müssen, verwenden Sie `Mux` im Subsystem, um Werte zu bündeln, und `Demux` oder Entpacken in der Parent-Szene.
* Für persistentes Teilen oder bei Rückkopplungsschleifen ziehen Sie `Data Write Local` und `Data Read Local` in Betracht, um Daten außerhalb der direkten Export-/Import-Zuordnung zu speichern und zu lesen.
* Beim Debugging leiten Sie exportierte Daten zu `Debug Input` oder zu Logging-/Export-Blöcken wie `CSV Export` oder `Image Logger` (für Bilddaten), um zu überprüfen, was das Subsystem produziert.
* Achten Sie auf die Exportreihenfolge: Fügen Sie Exportblöcke im Subsystem vorsichtig hinzu oder entfernen Sie sie — die Parent-Zuordnung folgt der Reihenfolge der Exportpunkte, und der numerische Titel hilft bei der Verifikation.

## 🛠️ Fehlersuche

* Wenn die übergeordnete Szene nicht den erwarteten Wert erhält, prüfen Sie, ob die Anzahl der Exportblöcke im Subsystem mit der Anzahl der entsprechenden Entry-Punkte in der Parent-Szene übereinstimmt.
* Wenn Datentypen nicht übereinstimmen, stellen Sie sicher, dass der an `Generic` angeschlossene Wert dem vom Parent erwarteten Typ entspricht (verwenden Sie `Data Type Converter` oder `Mux`, um die Daten vor dem Export zu normalisieren).
* Beim Experimentieren können Sie den Block in der Hauptszene platzieren, um Ausgaben direkt zu betrachten, und ihn erst nach Stabilisierung des Flusses in ein Subsystem verschieben.
