fonction CommCtrlRequest [SWS_DM_00808] Upstream: RS_AP_00119, RS_AP_00138, RS_Diag_04170, RS_Diag_04278
virtual ara::core::Future< void > CommCtrlRequest (ComCtrlRequest ParamsType controlType, const MetaInfo &metaInfo, CancellationHandler cancellationHandler) noexcept=0;
Called for CommunicationControl (0x28) with any subfunction as subfunction value is part of the argument list.
La méthode purement virtuelle ara::diag::CommunicationControl::CommCtrlRequest ([SWS_DM_00808]) est appelée par l'instance de Diagnostic Server pour traiter les requêtes de diagnostic du service UDS 0x28 (CommunicationControl) ([SWS_DM_00865], SWS Diagnostics §7.3.2.8.10 « Service 0x28 – CommunicationControl »). Tous les paramètres de requête UDS, y compris la sous-fonction, sont transmis regroupés via la structure controlType ([SWS_DM_00808]). L'appel renvoie un ara::core::Future<void>, moyennant quoi le traitement s'effectue de manière asynchrone. Via le paramètre cancellationHandler, l'application peut interroger l'état d'interruption au moyen de IsCanceled() ou enregistrer via SetNotifier() un rappel pour l'interruption de la conversation ([SWS_DM_00808]).
Si l'application termine le traitement sans erreur, le Diagnostic Server envoie une réponse UDS positive ([SWS_DM_00199]). Si une erreur survient, celle-ci doit être signalée via ara::diag::DiagUdsNrcErrc sous forme de Negative Response Code (NRC) approprié selon l'ISO 14229-1 ([SWS_DM_00808]) ; le serveur répond alors négativement à la requête de service avec ce code d'erreur ([SWS_DM_00866]). Le serveur rejette par avance les sous-fonctions non configurées avec le NRC 0x12 (kSubFunctionNotSupported) ([SWS_DM_00252]).
La méthode est déclarée avec noexcept et sans exception ([SWS_DM_00808], SWS Diagnostics §8.7.1.1.3.1 « CommCtrlRequest »). Sa sécurité des threads est conditionnelle : le fait que la fonction doive être implémentée de manière thread-safe est déterminé via le paramètre de constructeur ConcurrencyType de l'instance ([SWS_DM_00808]). La commutation effective des modes de communication devrait s'effectuer de manière asynchrone en arrière-plan avant que le future ne soit résolu. Question Q-8a8e1bd2585fa859 (ouverte)
Ce texte a été créé et vérifié par une IA. Toutes les affirmations reposent exclusivement sur les documents de spécification d'AUTOSAR R25-11.
Guide de l'implémenteur à venir (complexité I1)
| Header-Datei | #include "ara/diag/communication_control.h" |
|---|---|
| Scope | class ara::diag::CommunicationControl |
| Exception-Sicherheit | exception safe |
| Thread-Sicherheit | conditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor |
Parameter (in)
| Parameter | Beschreibung |
|---|---|
| controlType | All UDS request parameters packed into a structure since it holds optional elements |
| metaInfo | MetaInfo of the request. |
| cancellationHandler | This parameter is used to • Query the current cancellation status by calling cancellationHandler.IsCanceled. Returns TRUE in case, the current conversation has been cancelled and FALSE otherwise. • Register a notifier function by calling cancellationHandler.SetNotifier. The registered notifier is called if the current conversation is cancelled. |
Rückgabewert
| Typ | Beschreibung |
|---|---|
| ara::core::Future< void > | Returns nothing or an error. |
Fehler
| Fehlercode | Beschreibung |
|---|---|
| Please use an applicable NRC, as defined in ISO 14229-1, using DiagUdsNrcErrc. | |
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/SWS_DM_00808- Status
- valid/unmigrated
- Version
AUTOSAR/AP/record/SWS_DM_00808@rel:R25-11#8b2b39fc- Content hash
8b2b39fc- Source
- https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00808
Status: valid/unmigrated
Version: rel:R25-11#727dd05b
Versionshistorie & Revisions (1 transition, 8 revision)
- Current State
valid/unmigrated- Reason
- mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
- Campaign
2026-08-13-status-backfill- Active Version
AUTOSAR/AP/record/SWS_DM_00808@rel:R25-11#727dd05b
Recorded Revisions (8):
- R25-11
rel:R25-11#424df4222026-09-30 - R19-11
rel:R19-11#70e59b9a2026-10-14 - R20-11
rel:R20-11#35c65b602026-10-14 - R21-11
rel:R21-11#aa3f917f2026-10-14 - R22-11
rel:R22-11#21c3e83e2026-10-14 - R23-11
rel:R23-11#62deb4992026-10-14 - R24-11
rel:R24-11#f7c711472026-10-14 - R25-11
rel:R25-11#727dd05b2026-10-14 active
Requirement Text as-of this release:
Curation Decisions:
Reachable Artifacts & Dependents:
| Date | Actor | Transition | Reason / Rationale | Campaign |
|---|---|---|---|---|
| 2026-08-13 | tool | none → valid/unmigrated | mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record | 2026-08-13-status-backfill |
gemini-3.8-flash-low· 2026-10-13 · Original allemand