DEENESPTFRRUARHIKOZHNL

structure <RoutineInterface-Namespace>::<RoutineInterface>::<RoutineInterface>RequestResultOutput

[SWS_DM_00583] Upstream: RS_Diag_04169, RS_Diag_04224, RS_AP_00127, RS_AP_00128, RS_ AP_00138

struct <RoutineInterface>RequestResultOutput {...};

Structure wrapping the out arguments for a RequestResult

Header-Datei#include "<RoutineInterfaceDirectoryPath>/<RoutineInterfaceShortname>.h"
Forwarding-Header#include "<RoutineInterfaceDirectoryPath>/<RoutineInterfaceShortname>/<RoutineInterfaceShortname>_fwd.h"
Scopeclass <RoutineInterface-Namespace>::<RoutineInterface>

Guide utilisateurGÉNÉRÉ PAR IA

Regroupe les arguments de sortie pour l'interrogation du résultat d'une routine de diagnostic dans AUTOSAR Adaptive.
GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 372418a0759e Provenance Questions ouvertes (3)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Regroupe les arguments de sortie pour l'interrogation du résultat d'une routine de diagnostic dans AUTOSAR Adaptive.

La structure <RoutineInterface-Namespace>::<RoutineInterface>::<RoutineInterface>RequestResultOutput encapsule dans le module diag de l'AUTOSAR Adaptive Platform (R25-11) tous les arguments de sortie pour l'appel d'une interrogation de résultat de routine (RequestResult). Elle sert de conteneur de données typé, rempli avec les valeurs de résultat déterminées par l'implémentation de routine spécifique à l'application et transmis au framework de diagnostic. Interprétation : en tant que pur type valeur sans synchronisation propre, la structure devrait être destinée à une utilisation éphémère dans le contexte d'exécution et nécessite une protection externe en cas d'accès partagé. Question Q-3b8c63f0a0dd1c4a (ouverte)

Contexte

La structure <RoutineInterface-Namespace>::<RoutineInterface>::<RoutineInterface>RequestResultOutput fait partie du module diag de l'AUTOSAR Adaptive Platform dans la version R25-11. Selon la description de la spécification, ce type de données sert de wrapper pour encapsuler les arguments de sortie (out arguments) pour une opération RequestResult. Dans le diagnostic automobile selon l'ISO 14229 (UDS RoutineControl, service 0x31), la gestion des routines permet de démarrer, d'arrêter et d'interroger les résultats des routines diagnostiquables sur le calculateur. Lorsqu'un outil de diagnostic externe ou un composant d'application interne demande le résultat d'une routine préalablement initiée, les paramètres de sortie générés doivent être transportés de manière structurée et typée. La structure agit ainsi comme un conteneur de données dédié à l'interface entre l'implémentation de la routine côté application et l'environnement d'exécution de diagnostic. Interprétation : les variables membres concrètes de la structure devraient correspondre aux arguments de sortie définis pour cette routine dans le modèle AUTOSAR respectif de l'opération RequestResult. Question Q-bb5b79242dac75ff (ouverte)

Cycle de vie

La syntaxe struct <RoutineInterface>RequestResultOutput {...}; définit le type comme un agrégat C++ élémentaire sans logique de commande ni d'état propre. Interprétation : en ce qui concerne le cycle de vie, la structure de données devrait être conçue comme un pur type valeur (Value Type) sans gestion dynamique des ressources et suivre ainsi les conventions standard C++ pour la sémantique de valeur. Question Q-0919ad2177958d6b (ouverte) Une instance est typiquement créée au sein du contexte d'exécution de la routine dès qu'une requête d'interrogation de résultat est présente. La création a généralement lieu localement sur la pile ou au sein d'un conteneur de retour approprié de l'implémentation de routine. Après l'affectation des valeurs de sortie déterminées, l'instance est transmise au framework de diagnostic sous-jacent via les mécanismes standard de copie ou de déplacement. La durée de vie de l'instance se termine avec l'achèvement de la transmission et de la sérialisation des données de réponse. Comme la structure n'implémente aucun mécanisme de synchronisation interne, l'accès concurrentiel à partir de plusieurs threads sans protection externe n'est pas sûr pour les accès concurrents.

Parcours d'utilisation

Le déroulement typique lors de l'utilisation de cette structure se divise en traitement de l'interrogation, mise à disposition des données et notification consécutive à l'appelant. Le chemin d'utilisation commence lorsque le framework de diagnostic transmet une requête pour une opération RequestResult à l'interface <RoutineInterface>. L'implémentation spécifique à l'application de la routine traite cet appel et détermine les données de sortie internes actuelles. Interprétation : l'implémentation de routine devrait ensuite créer une instance de <RoutineInterface>RequestResultOutput et renseigner ses variables membres avec les valeurs de résultat déterminées. Question (ouverte) La structure entièrement remplie est ensuite renvoyée au framework de diagnostic en tant que résultat de l'opération. Enfin, le framework extrait et sérialise les arguments de sortie contenus dans la structure afin de construire le message de réponse de diagnostic positive et de l'envoyer au testeur. Après la prise en charge réussie des données, l'instance temporaire est régulièrement libérée.

Ce guide est basé sur les spécifications de l'AUTOSAR Adaptive Platform pour le module diag dans la version R25-11.