DEENESPTFRRUARHIKOZHNL

класс ara::diag::CommunicationControl

[SWS_DM_00804] Upstream: RS_Diag_04278

class CommunicationControl {...};

0x28 CommunicationControl interface

Header-Datei#include "ara/diag/communication_control.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopenamespace ara::diag

Руководство пользователяСОЗДАНО ИИ

Позволяет приложениям обрабатывать диагностические запросы службы UDS 0x28 для управления коммуникацией.
СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: ae3aac538bd3 Происхождение Открытые вопросы (1)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Позволяет приложениям обрабатывать диагностические запросы службы UDS 0x28 для управления коммуникацией.

Класс ara::diag::CommunicationControl служит в AUTOSAR Adaptive интерфейсом для обработки службы UDS 0x28 (CommunicationControl) для переключения каналов связи [SWS_DM_00808]. После модельной инстанциации через InstanceSpecifier метод Offer() активирует пересылку запросов компонентом Diagnostic Manager, которые затем асинхронно обрабатываются через CommCtrlRequest [SWS_DM_00806], [SWS_DM_00809]. Являясь строгим уникальным объектом, класс исключает операции копирования и перемещения и требует отмены регистрации через StopOffer() перед завершением работы [SWS_DM_00810].

Контекст

Класс ara::diag::CommunicationControl определяет стандартизированный интерфейс для обработки диагностической службы UDS 0x28 (CommunicationControl) в AUTOSAR Adaptive Platform AUTOSAR_AP_SWS_Diagnostics, с. 70. В качестве абстрактного базового класса он выступает посредником между Diagnostic Manager (DM) и прикладной диагностической функциональностью, с помощью которой управляется отправка или прием определенных коммуникационных сообщений в сети транспортного средства. Прикладное программное обеспечение наследуется от этого класса и реализует чисто виртуальный метод CommCtrlRequest для приема и выполнения входящих инструкций управления [SWS_DM_00808]. Привязка к системной модели AUTOSAR выполняется через ara::core::InstanceSpecifier, который ссылается на PortPrototype элемента DiagnosticComControlInterface [SWS_DM_00806].

Жизненный цикл

Экземпляр создается явно через конструктор с указанием ara::core::InstanceSpecifier, а также модели конкурентности ConcurrencyType (kConcurrent или kNotConcurrent) [SWS_DM_00806]. Класс обладает строгой семантикой уникальности и не является ни копируемым, ни перемещаемым: как конструктор копирования [SWS_DM_01677] и конструктор перемещения [SWS_DM_01678], так и оператор присваивания копированием [SWS_DM_01675] и оператор присваивания перемещением [SWS_DM_01676] удалены (=delete).

После создания экземпляр изначально остается неактивным. Только после вызова Offer() Diagnostic Manager авторизуется для пересылки входящих диагностических запросов обработчику [SWS_DM_00809]. И наоборот, StopOffer() отзывает это разрешение и отключает пересылку [SWS_DM_00810]. Уничтожение осуществляется через виртуальный деструктор [SWS_DM_00807]. Интерпретация: перед уничтожением объекта, вероятно, необходимо вызвать StopOffer(), чтобы Diagnostic Manager не поддерживал потерянные пересылки. Вопрос Q-f67e35c9fea508d8 (открытый)

В отношении конкурентности конструктор является thread-safe [SWS_DM_00806], тогда как деструктор [SWS_DM_00807], Offer() [SWS_DM_00809] и StopOffer() [SWS_DM_00810] не являются thread-safe. Выполнение CommCtrlRequest является условно thread-safe (conditional): должна ли реализация быть thread-safe, определяет заданный в конструкторе ConcurrencyType [SWS_DM_00808].

Путь использования

Штатная процедура включает инстанциацию производного класса, регистрацию службы, асинхронную обработку диагностических запросов и заключительную отмену регистрации:

  1. Инициализация: приложение инстанцирует обработчик с указанием InstanceSpecifier и желаемого ConcurrencyType [SWS_DM_00806].
  2. Предложение службы: через Offer() служба активируется в Diagnostic Manager [SWS_DM_00809].
  3. Обработка запроса: при поступлении запроса UDS для службы 0x28 с любой подфункцией Diagnostic Manager вызывает CommCtrlRequest [SWS_DM_00808]. Параметры включают в себя:
    • controlType (ComCtrlRequestParamsType): все параметры запроса UDS, включая опциональные элементы.
    • metaInfo (const MetaInfo&): метаинформация о диагностическом запросе.
    • cancellationHandler (CancellationHandler): служит для опроса состояния через IsCanceled(), а также для регистрации функции обратного вызова отмены через SetNotifier().
  4. Ответ: обработка завершается асинхронно и возвращает результат через ara::core::Future<void> [SWS_DM_00808].
  5. Отмена регистрации: перед завершением работы или выходом приложение останавливает пересылку с помощью StopOffer() [SWS_DM_00810].
Последовательность вызова и обработки для CommunicationControl (0x28)ПриложениеCommunicationControlDiagnostic ManagerKonstruktor(specifier, concurrencyType)Offer()Регистрация для UDS 0x28Подтверждение (или kAlreadyOffered)Result<void>Use Case: Diagnoseanfrage bearbeitenCommCtrlRequest(controlType, metaInfo, cancellationHandler)Verarbeitung / Abfrage cancellationHandlerFuture<void> (успех или DiagUdsNrcErrc)Use Case: Dienst deregistrierenStopOffer()Weiterleitung beenden

Диаграмма последовательности: типичный процесс от инициализации через обработку запроса UDS 0x28 до отмены регистрации. Источники: [SWS_DM_00806], [SWS_DM_00808], [SWS_DM_00809], [SWS_DM_00810].

Сценарии ошибок

Уже при конструировании несогласованности в модели AUTOSAR могут привести к нарушениям во время выполнения (violations) [SWS_DM_00806]:

  • InstanceSpecifierMappingIntegrityViolation: InstanceSpecifier не удается разрешить в контексте исполняемого файла или он не указывает на PortPrototype.
  • PortInterfaceMappingViolation: типизированный через DiagnosticComControlInterface PortPrototype не имеет ссылок со стороны DiagnosticServiceGenericMapping.
  • ProcessMappingViolation: подходящая ссылка на экземпляр существует, однако отсутствует смоделированный процесс, соответствующий текущему процессу.
  • InstanceSpecifierAlreadyInUseViolation: идентификатор уже используется другим экземпляром в том же процессе.

В процессе работы Offer() через возвращаемое значение ara::core::Result<void> сообщает об ошибке DiagOfferErrc::kAlreadyOffered, если служба уже предлагалась ранее и все еще активна [SWS_DM_00809]. Если диагностический запрос в CommCtrlRequest не может быть удовлетворен содержательно, метод через ara::core::Future<void> возвращает Negative Response Code (NRC) согласно ISO 14229-1 с помощью DiagUdsNrcErrc [SWS_DM_00808].

Настоящее руководство по классу было создано ИИ-ассистентом курации на основе AUTOSAR Adaptive R25-11.

Карта членов

Конструкторы и деструктор

2

Операторы

1

Вложенные типы

1

Диаграмма классов

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__diag__CommunicationControl599 CommunicationControl + CommunicationControl() + operator=() + ~CommunicationControl() + CommCtrlRequest() + Offer() + StopOffer()

Подробный вид

Выберите элемент в оглавлении.

Конструкторы и деструктор

CommunicationControl функция 3

Constructor of CommunicationControl.

Перегрузки CommunicationControl 3
explicit CommunicationControl (const ara::core::InstanceSpecifier &specifier, ConcurrencyType concurrencyType) noexcept; SWS_DM_00806
CommunicationControl (CommunicationControl &)=delete; SWS_DM_01677
CommunicationControl (CommunicationControl &&) noexcept=delete; SWS_DM_01678
~CommunicationControl функция

Destructor of class CommunicationControl.

virtual ~CommunicationControl () noexcept;

Методы

CommCtrlRequest функция

Called for CommunicationControl (0x28) with any subfunction as subfunction value is part of the argument list.

virtual ara::core::Future< void > CommCtrlRequest (ComCtrlRequest ParamsType controlType, const MetaInfo &metaInfo, CancellationHandler cancellationHandler) noexcept=0;
Offer функция

This Offer will enable the DM to forward request messages to this handler.

ara::core::Result< void > Offer () noexcept;
StopOffer функция

This StopOffer will disable the forwarding of request messages from DM.

void StopOffer () noexcept;

Операторы

operator= функция 2

CommunicationControl shall be a single not assignable instance.

Перегрузки = 2

Вложенные типы

Документация методов

функция 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.

СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: 8fa21d673414 Происхождение Открытые вопросы (1)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Чисто виртуальный метод ara::diag::CommunicationControl::CommCtrlRequest ([SWS_DM_00808]) вызывается экземпляром Diagnostic Server для обработки диагностических запросов UDS-сервиса 0x28 (CommunicationControl) ([SWS_DM_00865], SWS Diagnostics §7.3.2.8.10 «Service 0x28 – CommunicationControl»). Все параметры UDS-запроса, включая подфункцию, передаются в совокупности через структуру controlType ([SWS_DM_00808]). Вызов возвращает ara::core::Future<void>, благодаря чему обработка выполняется асинхронно. Через параметр cancellationHandler приложение может с помощью IsCanceled() опрашивать состояние отмены или через SetNotifier() регистрировать функцию обратного вызова для отмены сессии взаимодействия ([SWS_DM_00808]).

Если приложение завершает обработку без ошибок, Diagnostic Server отправляет положительный UDS-ответ ([SWS_DM_00199]). При возникновении ошибки о ней необходимо сообщить как о подходящем Negative Response Code (NRC) согласно ISO 14229-1 через ara::diag::DiagUdsNrcErrc ([SWS_DM_00808]); после этого сервер отвечает на запрос сервиса отрицательно с этим кодом ошибки ([SWS_DM_00866]). Несконфигурированные подфункции сервер заранее отклоняет с NRC 0x12 (kSubFunctionNotSupported) ([SWS_DM_00252]).

Метод объявлен с noexcept и безопасен к исключениям ([SWS_DM_00808], SWS Diagnostics §8.7.1.1.3.1 «CommCtrlRequest»). Его потокобезопасность является условной: должна ли функция быть реализована потокобезопасной, определяется через параметр конструктора ConcurrencyType экземпляра ([SWS_DM_00808]). Фактическое переключение режимов связи, вероятно, происходит асинхронно в фоновом режиме до разрешения Future. Вопрос Q-8a8e1bd2585fa859 (открытый)

Этот текст был создан и курирован ИИ. Все утверждения основаны исключительно на документах спецификации AUTOSAR R25-11.

Руководство разработчика реализации в подготовке (сложность I1)

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
controlTypeAll UDS request parameters packed into a structure since it holds optional elements
metaInfoMetaInfo of the request.
cancellationHandlerThis 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

TypBeschreibung
ara::core::Future< void >Returns nothing or an error.

Fehler

FehlercodeBeschreibung
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#9a822f27
Content hash
9a822f27
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
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#424df4222026-09-30
  • R19-11rel:R19-11#70e59b9a2026-10-14
  • R20-11rel:R20-11#35c65b602026-10-14
  • R21-11rel:R21-11#aa3f917f2026-10-14
  • R22-11rel:R22-11#21c3e83e2026-10-14
  • R23-11rel:R23-11#62deb4992026-10-14
  • R24-11rel:R24-11#f7c711472026-10-14
  • R25-11rel:R25-11#727dd05b2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

функция CommunicationControl [SWS_DM_00806] Upstream: RS_AP_00137, RS_Diag_04278, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

explicit CommunicationControl (const ara::core::InstanceSpecifier &specifier, ConcurrencyType concurrencyType) noexcept;

Constructor of CommunicationControl.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)InstanceSpeci- InstanceSpecifier either cannot be resolved in the model in the fierMappingIn- context of your executable, or it refers to a model element other tegrityViolation than a PortPrototype. PortInterfaceMap- A PortPrototype that is typed by a pingViolation DiagnosticComControlInterface needs to be referenced by a DiagnosticServiceGenericMapping. ProcessMappingVio- Matching InstanceRef exists, but no matching (modelled) Process lation found that matches the (runtime) process. InstanceSpecifier- Violation message that is sent in case a constructor in the ara AlreadyInUseViola- framework was called with an InstanceSpecifier already in use in tion this process.

Parameter (in)

ParameterBeschreibung
specifierInstanceSpecifier to a PortPrototype of a DiagnosticComControlInterface.
concurrencyTypeSpecifies if the interface is implemented as thread safe ( kConcurrent) or non-thread safe (kNotConcurrent)..

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_00806
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00806@rel:R25-11#ef8e373c
Content hash
ef8e373c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00806
Status: valid/unmigrated Version: rel:R25-11#b906b7ef 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_00806@rel:R25-11#b906b7ef
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#ca8fdfa92026-09-30
  • R19-11rel:R19-11#d7fe0baa2026-10-14
  • R20-11rel:R20-11#036e26a62026-10-14
  • R21-11rel:R21-11#036e26a62026-10-14
  • R22-11rel:R22-11#b571889a2026-10-14
  • R23-11rel:R23-11#934addf22026-10-14
  • R24-11rel:R24-11#726b2cfe2026-10-14
  • R25-11rel:R25-11#b906b7ef2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

функция CommunicationControl [SWS_DM_01677] Upstream: RS_AP_00147

CommunicationControl (CommunicationControl &)=delete;

CommunicationControl shall be a single not copy-able instance.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01677
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01677@rel:R25-11#c66f79ad
Content hash
c66f79ad
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01677
Status: valid/unmigrated Version: rel:R25-11#5a19d864 Versionshistorie & Revisions (1 transition, 4 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_01677@rel:R25-11#5a19d864
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#e585da4b2026-09-30
  • R23-11rel:R23-11#0dccfa442026-10-14
  • R24-11rel:R24-11#5a19d8642026-10-14
  • R25-11rel:R25-11#5a19d8642026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

функция CommunicationControl [SWS_DM_01678] Upstream: RS_AP_00147

CommunicationControl (CommunicationControl &&) noexcept=delete;

Move constructor of CommunicationControl.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01678
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01678@rel:R25-11#55be157f
Content hash
55be157f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01678
Status: valid/unmigrated Version: rel:R25-11#6048a835 Versionshistorie & Revisions (1 transition, 4 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_01678@rel:R25-11#6048a835
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#2554e0632026-09-30
  • R23-11rel:R23-11#dd6e581d2026-10-14
  • R24-11rel:R24-11#6048a8352026-10-14
  • R25-11rel:R25-11#6048a8352026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

функция Offer [SWS_DM_00809] Upstream: RS_AP_00119, RS_AP_00139, RS_Diag_04278

ara::core::Result< void > Offer () noexcept;

This Offer will enable the DM to forward request messages to this handler.

СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: e8c1958af1e8 Происхождение Открытые вопросы (1)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Использование

Метод Offer класса ara::diag::CommunicationControl (заголовочный файл #include "ara/diag/communication_control.h") позволяет Diagnostic Management (DM) перенаправлять входящие диагностические запросы на управление связью предоставляющему экземпляру обработчика [SWS_DM_00809]. Вызов выполняется без параметров и возвращает тип ara::core::Result<void> [SWS_DM_00809]. Поскольку ara::core::Future или механизм обратного вызова не используются, выполнение следует интерпретировать как синхронное.

Обработка ошибок

В случае успеха функция возвращает пустое ara::core::Result. Если сервис для этого экземпляра уже предлагался ранее, вызов завершается сбоем и возвращает код ошибки DiagOfferErrc::kAlreadyOffered с семантикой отката [SWS_DM_00809]. Это состояние ошибки соответствует единообразной обработке ошибок для диагностических предложений в Adaptive AUTOSAR, как это специфицировано, например, в DiagErrc [SWS_DM_00514] и DiagReportingErrc [SWS_DM_00560].

Параллелизм и ограничения

Функция объявлена как noexcept и является исключениебезопасной (exception safe), однако явно не является потокобезопасной (not thread-safe) [SWS_DM_00809]. Поэтому вызовы на одном и том же экземпляре должны синхронизироваться вызывающим приложением для предотвращения состояний гонки при регистрации.

Взаимодействие

Реализованный с помощью Offer шаблон регистрации является ключевой идиомой в Diagnostic Management и согласованно используется в различных обработчиках, например, для подпрограмм (routines) [SWS_DM_00557], общих UDS-сервисов [SWS_DM_00619], интерфейсов Security Access [SWS_DM_00766], а также сервисов загрузки и выгрузки (upload/download) [SWS_DM_00792] [SWS_DM_00802]. При этом следует учитывать разграничение с коммуникационной инфраструктурой: как подчеркивается в AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 «Monitors», речь идет о специфичной для диагностики реализации, которую не следует путать с ara::com.

Это указание по использованию было подготовлено ИИ для релиза R25-11 и основано исключительно на документах спецификации AUTOSAR Adaptive.

Руководство разработчика реализации в подготовке (сложность I1)

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
ara::core::Result< void >Returns nothing or an error.

Fehler

FehlercodeBeschreibung
DiagOfferErrc::kAlreadyOfferedrollback_semantics The service is already offered.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_00809
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00809@rel:R25-11#a3e1b19a
Content hash
a3e1b19a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00809
Status: valid/unmigrated Version: rel:R25-11#5af0f990 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_00809@rel:R25-11#5af0f990
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#a85f13212026-09-30
  • R19-11rel:R19-11#9f02ccdb2026-10-14
  • R20-11rel:R20-11#2be7c40f2026-10-14
  • R21-11rel:R21-11#6e3abbe82026-10-14
  • R22-11rel:R22-11#65d2217e2026-10-14
  • R23-11rel:R23-11#bbb1cf592026-10-14
  • R24-11rel:R24-11#246db6952026-10-14
  • R25-11rel:R25-11#5af0f9902026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

функция StopOffer [SWS_DM_00810] Upstream: RS_Diag_04278

void StopOffer () noexcept;

This StopOffer will disable the forwarding of request messages from DM.

СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: 5bbcf442e7ca Происхождение Открытые вопросы (1)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Функция-член StopOffer класса ara::diag::CommunicationControl служит для деактивации пересылки входящих сообщений с диагностическими запросами (Request Messages) из Diagnostic Management (DM) экземпляру [SWS_DM_00810]. Интерфейс подключается через заголовочный файл ara/diag/communication_control.h AUTOSAR_AP_SWS_Diagnostics §8.7.1.1.3.3 «StopOffer». Метод не принимает входных параметров и не имеет возвращаемого значения (void).

В отношении обработки ошибок функция объявлена как noexcept и специфицирована как безопасная относительно исключений (exception safe) [SWS_DM_00810]. Коды ошибок не возвращаются, и специфические сообщения об ошибках (такие как события DEM или DET) при ошибке не генерируются.

В плане параллелизма StopOffer явно классифицирован как непотокобезопасный (not thread-safe) [SWS_DM_00810]. Следовательно, одновременные вызовы на одном и том же экземпляре CommunicationControl должны синхронизироваться на стороне приложения. Кроме того, вызов целесообразно выполнять только после предварительного предложения сервиса, например, когда управление связью временно недоступно или работа приложения завершается. Вопрос Q-c9079c49581363f7 (открытый)

Концепция следует стандартизированной схеме для сервисов адаптивной диагностики: родственные классы, такие как ara::diag::Authentication [SWS_DM_01131], ara::diag::DownloadService [SWS_DM_00793], ara::diag::EcuResetRequest [SWS_DM_01017] и ara::diag::GenericUDSService [SWS_DM_00620], также используют StopOffer с аналогичной семантикой. Как поясняется в спецификации, хотя именование основано на предоставлении сервисов (service offering) из ara::com, оно представляет собой самостоятельную реализацию для диагностических интерфейсов и не должно с ним смешиваться AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 «Monitors».

Это указание по использованию было сгенерировано ИИ на основе спецификации AUTOSAR Adaptive R25-11.

Руководство разработчика реализации в подготовке (сложность I2)

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
None

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_00810
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00810@rel:R25-11#ab017705
Content hash
ab017705
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00810
Status: valid/unmigrated Version: rel:R25-11#c84b3f30 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_00810@rel:R25-11#c84b3f30
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#e7d48b8a2026-09-30
  • R19-11rel:R19-11#28eab4cf2026-10-14
  • R20-11rel:R20-11#ee8709992026-10-14
  • R21-11rel:R21-11#ff87dbf12026-10-14
  • R22-11rel:R22-11#ae33a1b32026-10-14
  • R23-11rel:R23-11#4f252d562026-10-14
  • R24-11rel:R24-11#be84a84f2026-10-14
  • R25-11rel:R25-11#c84b3f302026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

функция operator= [SWS_DM_01675] Upstream: RS_AP_00147

CommunicationControl & operator= (CommunicationControl &)=delete;

CommunicationControl shall be a single not assignable instance.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01675
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01675@rel:R25-11#2eb53753
Content hash
2eb53753
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01675
Status: valid/unmigrated Version: rel:R25-11#6b33e9a5 Versionshistorie & Revisions (1 transition, 4 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_01675@rel:R25-11#6b33e9a5
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#732d4ac82026-09-30
  • R23-11rel:R23-11#d435003d2026-10-14
  • R24-11rel:R24-11#6b33e9a52026-10-14
  • R25-11rel:R25-11#6b33e9a52026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

функция operator= [SWS_DM_01676] Upstream: RS_AP_00147

CommunicationControl & operator= (CommunicationControl &&)=delete;

Move assignment operator of CommunicationControl.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01676
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01676@rel:R25-11#01b14174
Content hash
01b14174
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01676
Status: valid/unmigrated Version: rel:R25-11#3330d235 Versionshistorie & Revisions (1 transition, 4 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_01676@rel:R25-11#3330d235
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#cfa3ff932026-09-30
  • R23-11rel:R23-11#fd2c0d6a2026-10-14
  • R24-11rel:R24-11#3330d2352026-10-14
  • R25-11rel:R25-11#3330d2352026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

функция ~CommunicationControl [SWS_DM_00807] Upstream: RS_AP_00134, RS_Diag_04278

virtual ~CommunicationControl () noexcept;

Destructor of class CommunicationControl.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_00807
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00807@rel:R25-11#f36ca5a6
Content hash
f36ca5a6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00807
Status: valid/unmigrated Version: rel:R25-11#fef30cdd 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_00807@rel:R25-11#fef30cdd
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#0d1c8e412026-09-30
  • R19-11rel:R19-11#50d5e63a2026-10-14
  • R20-11rel:R20-11#83d511c52026-10-14
  • R21-11rel:R21-11#3df09df82026-10-14
  • R22-11rel:R22-11#cf774c8f2026-10-14
  • R23-11rel:R23-11#b59cefc12026-10-14
  • R24-11rel:R24-11#058998e02026-10-14
  • R25-11rel:R25-11#fef30cdd2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill