struct <RoutineInterface-Namespace>::<RoutineInterface>::<RoutineInterface6>StartOutput
struct <RoutineInterface6>StartOutput {...};
Structure wrapping the out arguments for a Start
| Header-Datei | #include "<RoutineInterfaceDirectoryPath>/<RoutineInterfaceShortname>.h" |
|---|---|
| Forwarding-Header | #include "<RoutineInterfaceDirectoryPath>/<RoutineInterfaceShortname>/<RoutineInterfaceShortname>_fwd.h" |
| Scope | class <RoutineInterface-Namespace>::<RoutineInterface> |
User GuideKI-GENERIERT
Kapselt die Ausgabeparameter für den Start einer Diagnose-Routine zur Übergabe an die adaptive Plattform.
Kapselt die Ausgabeparameter für den Start einer Diagnose-Routine zur Übergabe an die adaptive Plattform.
Die Struktur <RoutineInterface6>StartOutput aus dem Modul diag der AUTOSAR Adaptive Platform kapselt alle Ausgabeargumente für die Start-Operation einer Diagnose-Routine. Bei Eintreffen einer Start-Anforderung befüllt die anwendungsspezifische Routine-Implementierung die Datenfelder der Struktur mit den resultierenden Werten und übergibt die Instanz vermutlich eingebettet in ein asynchrones Rückgabeobjekt an die Plattform. Frage (offen) Fehlerzustände werden dabei interpretationsgemäß nicht in der Datenstruktur selbst, sondern über separate Fehlercodes signalisiert, weshalb vor der Rückgabe stets alle geforderten Ausgabeparameter vollständig und konsistent initialisiert sein müssen.
Kontext
Die Struktur <RoutineInterface6>StartOutput ist Bestandteil des Moduls diag der AUTOSAR Adaptive Platform im Release R25-11. Innerhalb dieses Diagnosemoduls dient der Typ als Datenbehälter, der die ausgehenden Argumente für die Operation zum Starten einer Diagnose-Routine zusammenfasst. Bei der Durchführung von Diagnosefunktionen über Routinensteuerung interagieren typischerweise eine anwendungsspezifische Service-Implementierung und die Diagnoseinfrastruktur der Plattform miteinander. Die Struktur fungiert hierbei an der Schnittstelle zwischen der konkreten Routine-Implementierung und der Verwaltungsschicht für Diagnoseanfragen.
In diesem Verbund übernimmt <RoutineInterface6>StartOutput die Rolle, alle Ausgangsdaten, die eine Anwendung beim Ausführen des Start-Befehls erzeugt, gebündelt bereitzustellen. Interpretation: Die Struktur dient vermutlich als reines Datenübertragungsobjekt (Data Transfer Object, DTO) ohne eigene Geschäftslogik, dessen spezifische Member-Felder den im Schnittstellenmodell definierten Ausgangsparametern der Routine entsprechen. Frage Q-99209f0267b43982 (offen) Durch diese Kapselung wird gewährleistet, dass die aufrufende Diagnoseverwaltung die Rückgabewerte geschlossen entgegennehmen und für die weitere Verarbeitung oder die Rückmeldung an externe Diagnosetester aufbereiten kann.
Lebenszyklus
Der Lebenszyklus von <RoutineInterface6>StartOutput ist eng an den Ausführungskontext der Start-Operation der Diagnose-Routine gekoppelt. Eine Instanz dieser Struktur wird von der ausführenden Routine-Implementierung der Anwendung instanziiert, sobald eine Anfrage zum Starten der Routine verarbeitet wird. Während der Bearbeitung belegt die Anwendung die einzelnen Attribute der Struktur mit den resultierenden Daten des Startvorgangs.
Hinsichtlich der Besitzverhältnisse liegt die Hoheit über das Objekt zunächst lokal bei der ausführenden Routine. Dürfte die Rückgabe an die Diagnoseverwaltung erfolgen, geschieht dies typischerweise durch Wertübergabe oder Move-Semantik, beispielsweise im Kontext asynchroner Rückgabestrukturen der Plattform. Frage (offen) Nach der Übernahme durch die Plattform-Laufzeitumgebung und der Weiterleitung der Daten an die Diagnoseprotokollschicht endet der Lebenszyklus des Objekts, woraufhin die Struktur zerstört und der belegte Speicher freigegeben wird. Da die Struktur als reiner Datencontainer konzipiert ist, besitzt sie keine eigene interne Zustandsmaschine; Lebensphasen beschränken sich auf Erzeugung, Befüllung, Rückgabe und Freigabe.
Nutzungspfad
Der typische Ablauf zur Verwendung von <RoutineInterface6>StartOutput gliedert sich in eine feste Folge von Schritten innerhalb der Routine-Bearbeitung:
- Initialisierung: Bei Eintreffen einer Start-Anforderung instanziiert die bereitstellende Anwendung eine Instanz von
<RoutineInterface6>StartOutputauf dem Stack oder innerhalb des zuständigen Ausführungskontexts. - Befüllung der Datenfelder: Die Anwendung führt die fachlichen Prüfungen und Aktionen zum Anlaufen der Routine durch. Die dabei ermittelten Ausgabedaten werden den Feldern der Struktur zugewiesen.
- Rückmeldung: Die vollständig befüllte Struktur wird als Funktionsergebnis an das Diagnosesystem zurückgegeben. Vermutlich erfolgt die Rückgabe eingebettet in einen typisierten Container wie
ara::core::Resultoderara::core::Future, um die asynchrone Schnittstellenkonvention der Adaptive Platform einzuhalten. Frage Q-08976b247fab2180 (offen) - Verarbeitung durch die Plattform: Die Plattform liest die enthaltenen Werte aus, überführt sie in das entsprechende Diagnoseantwort-Telegramm und schließt den Bearbeitungsvorgang ab.
Für Entwickler von Diagnoseanwendungen besteht die Hauptaufgabe darin, die korrekte und vollständige Zuweisung aller geforderten Ausgangswerte vor dem Verlassen der Methode sicherzustellen.
Fehlerszenarien
Da <RoutineInterface6>StartOutput als Datenstruktur für reguläre Ausgabeparameter definiert ist, kapselt sie selbst keine Fehlercodes oder Ausnahmebehandlungen. Fehlerszenarien treten vor allem dann auf, wenn die Routine nicht ordnungsgemäß gestartet werden kann oder ungültige Ausgangswerte generiert werden.
Interpretation: Schlägt die Ausführung der Start-Operation fehl, dürften die resultierenden Diagnosefehler nicht über Felder dieser Struktur transportiert werden, sondern über das Fehlermodell der Plattform, beispielsweise mittels standardisierter Fehlercodes in ara::core::ErrorCode. Frage Q-fe76c79ba073f321 (offen) Vorbedingung für die erfolgreiche Verwendung der Struktur ist, dass die auslösende Start-Aktion zulässig war und die geforderten Bedingungen zur Routinenausführung erfüllt sind. Als Nachbedingung gilt, dass alle in der Schnittstelle deklarierten Ausgabeparameter der Struktur in einem gültigen und konsistenten Zustand hinterlassen werden, bevor die Übergabe an das Diagnosesystem erfolgt.
Dieser Klassen-Leitfaden basiert auf den Spezifikationsdaten des Moduls diag in AUTOSAR Adaptive (Release R25-11).
gemini-3.8-flash-medium· 2026-10-13