DEENESPTFRRUARHIKOZHNL

classe apext::diag::uds_transport::UdsTransportProtocolMgr

[SWS_DM_00306] Upstream: RS_Diag_04147, RS_Diag_04168

class UdsTransportProtocolMgr {...};

The UdsTransportProtocolMgr class manages the interaction between the Diagnostic Server instance(s) and various UDS Transport Protocols (e.g., DoIP[2], CAN[21]). It provides a standard, extensible API for handling transport-specific message reception and optional early payload access.

Literaturverzeichnis SWS Diagnostics: [2] ISO 13400-2:2019 – Road vehicles – Diagnostic communication over Internet Protocol (DoIP) – Part 2: Network and transport layer requirements and services (Edition 2, Release 2019-12) – www.iso.org
[21] ISO 15765-2 – Road vehicles – Diagnostics on Controller Area Networks (CAN) – Part2: Network layer services

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Forwarding-Header#include "apext/diag/diag_fwd.h"
Scopenamespace apext::diag::uds_transport

Guia do utilizadorGERADO POR IA

Coordena o intercâmbio de mensagens UDS entre plugins da camada de transporte e a camada de sessão do Diagnostic Server.
GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: d6f6643e28ac Procedência Perguntas em aberto (2)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Coordena o intercâmbio de mensagens UDS entre plugins da camada de transporte e a camada de sessão do Diagnostic Server.

A classe apext::diag::uds_transport::UdsTransportProtocolMgr gere a interação entre o Diagnostic Server e protocolos de transporte UDS específicos de acordo com AUTOSAR AP SWS Diagnostics §7.1.1 «Support of UDS Transport Layer». Controla a receção de mensagens em duas etapas, através de indicação prévia e reencaminhamento assíncrono para a camada de sessão, bem como a notificação de eventos de envio e de ciclo de vida ([SWS_DM_00309], [SWS_DM_00311]). Todas as chamadas de interface são concebidas para serem seguras contra exceções, mas não thread-safe.

Contexto

A classe apext::diag::uds_transport::UdsTransportProtocolMgr funciona como uma instância central de mediação entre as instâncias do Diagnostic Server ou o DM-Core (Session Layer) e vários protocolos de transporte UDS, como DoIP ou CAN, de acordo com AUTOSAR AP SWS Diagnostics §7.1.1 «Support of UDS Transport Layer». Disponibiliza uma interface extensível através da qual plugins de transporte específicos da implementação, que derivam da classe base UdsTransportProtocolHandler ([SWS_DM_00315]), reportam mensagens UDS recebidas e reencaminham confirmações de transporte para o núcleo de diagnóstico. Interpretação: a instância do gestor deverá ser operada pelo Diagnostic Management como um componente de mediação de longa duração, de modo a agregar uniformemente interfaces de transporte heterogéneas. Pergunta Q-79e155960156d04a (aberta)

MgrKontext SessionLayer Session Layer (DM Core) Mgr UdsTransportProtocolMgr Mgr->SessionLayer T_Data.ind Handler UdsTransportProtocolHandler Handler->Mgr IndicateMessage / HandleMessage Handler->Mgr TransmitConfirmation Handler->Mgr HandlerStopped / ChannelReestablished PeriodicHandler UdsTransportProtocolPeriodicHandler PeriodicHandler->Mgr PeriodicTransmitConfirmation

Diagrama de contexto: integração do UdsTransportProtocolMgr entre handlers da camada de transporte e a camada de sessão. Fontes: [SWS_DM_00309], [SWS_DM_00311], [SWS_DM_00312], [SWS_DM_01069], AUTOSAR AP SWS Diagnostics §7.1.1 «Support of UDS Transport Layer».

Ciclo de vida

A destruição ocorre através do destrutor virtual ~UdsTransportProtocolMgr(), o qual está especificado com noexcept = default ([SWS_DM_01524]). Durante o funcionamento, o gestor reage a eventos de ciclo de vida dos handlers de protocolo de transporte registados de acordo com AUTOSAR AP SWS Diagnostics §7.1.1.1 «Initialization, Starting and Stopping of a UDS TransportLayer» e [SWS_DM_00329]: se um handler for desativado, reporta a conclusão ao gestor via HandlerStopped() ([SWS_DM_00314]). Se um canal anteriormente desligado voltar a estar disponível, isto é comunicado ao gestor após ativação prévia através de ChannelReestablished(), indicando o GlobalChannelIdentifier ([SWS_DM_00313], [SWS_DM_09021]).

No que diz respeito à posse, aplica-se uma transferência estrita de buffer com semântica de ponteiro único (unique pointer) no processamento de mensagens: aquando do anúncio de uma mensagem, o núcleo de diagnóstico cria o objeto UdsMessagePtr e transfere-o temporariamente para o handler para preenchimento ([SWS_DM_00309]). Após uma receção bem-sucedida ou em caso de interrupção da transmissão, a posse da mensagem é totalmente devolvida ao núcleo genérico do DM ([SWS_DM_00310], [SWS_DM_00311]). Todos os métodos de callback da interface são classificados como seguros contra exceções (noexcept), mas explicitamente como não thread-safe ([SWS_DM_00309], [SWS_DM_00311]).

Caminho de utilização

O fluxo regular de uma receção de mensagem UDS divide-se em duas fases sucessivas. Primeiro, o handler de transporte sinaliza o início de uma mensagem através de IndicateMessage() ([SWS_DM_00309]). Aqui, são transmitidos o endereço de origem e de destino, o tipo de endereçamento (físico ou funcional), o ID do canal, o tamanho total, bem como uma vista de bytes dos primeiros dados úteis (payloadInfo). Esta informação prévia permite ao núcleo de diagnóstico avaliar os pedidos antecipadamente, por exemplo para a deteção de um Tester Present funcional ([SWS_DM_00309]). Se o núcleo aceitar o pedido, o gestor devolve o par composto por IndicationResult::kIndicationOk e pelo buffer de mensagem a preencher.

Assim que o handler de transporte tiver recebido a mensagem completa, reencaminha-a através de HandleMessage() para a Session Layer ([SWS_DM_00311]). Isto corresponde ao primitivo T_Data.ind da ISO 14229-2. Interpretação: o retorno imediato exigido de HandleMessage() deverá ser implementado através da transferência para uma fila interna da camada de sessão, uma vez que o processamento propriamente dito tem de ocorrer de forma assíncrona em segundo plano ([SWS_DM_00311]). Pergunta Q-b6e97504ca3a3a95 (aberta) O handler confirma as transmissões de saída após a conclusão via TransmitConfirmation() ([SWS_DM_00312]), enquanto as mensagens periódicas são confirmadas através de PeriodicTransmitConfirmation() ([SWS_DM_01069]).

Fluxo da recepção de mensagens UDSUdsTransportProtocolHandlerUdsTransportProtocolMgrSession LayerUse Case: Anúncio de mensagemIndicateMessage(sourceAddr, targetAddr, type, channel, size, payloadInfo)Puffer anfordern & Validierungstd::pair(kIndicationOk, messagePtr)std::pair(kIndicationOk, messagePtr)Use Case: Recepção e transferência de dadosNutzdaten in message schreibenHandleMessage(messagePtr)T_Data.ind(messagePtr)Retorno imediato (assíncrono)Retorno

Diagrama de sequência: fluxo típico da receção de mensagens UDS através de IndicateMessage e HandleMessage. Fontes: [SWS_DM_00309], [SWS_DM_00311].

Cenários de erro

Se o núcleo do DM não conseguir aceitar uma mensagem anunciada, IndicateMessage() falha logo. A enumeração IndicationResult define para o efeito as causas de erro kIndicationOccupied (canal ocupado), kIndicationOverflow (estouro de buffer) ou kIndicationUnknownTargetAddress (endereço de destino desconhecido), após o que nenhum buffer de mensagem é disponibilizado ([SWS_DM_00309], [SWS_DM_00384]).

Se, após uma indicação bem-sucedida, ocorrer um erro ao nível da camada de transporte durante a transmissão contínua, de modo a que HandleMessage() já não se concretize, o handler tem obrigatoriamente de chamar NotifyMessageFailure() ([SWS_DM_00310]). Desta forma, o buffer de mensagens anteriormente alocado é devolvido de forma controlada à Session Layer e libertado. Em operações de envio, TransmitConfirmation() reporta o resultado através de TransmissionResult; se o envio falhar ao nível da rede, é transmitido kTransmitFailed ([SWS_DM_00307], [SWS_DM_00312]).

Este guia apoia-se exclusivamente na especificação AUTOSAR para R25-11.

Mapa de membros

KI-gestützte Gruppierung auf Basis der Records und Spezifikationsauszüge; keine Gliederung aus der AUTOSAR-Spezifikation.

Diagrama de classes

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

G napext__diag__uds_transport__UdsTransportProtocolMgr247 UdsTransportProtocolMgr + ~UdsTransportProtocolMgr() + ChannelReestablished() + HandleMessage() + HandlerStopped() + IndicateMessage() + NotifyMessageFailure() + PeriodicTransmitConfirmation() + TransmitConfirmation()

Vista de detalhes

Selecione uma entrada no índice.

Objektlebenszyklus

Destructor of class UdsTransportProtocolMgr.

virtual ~UdsTransportProtocolMgr () noexcept=default;

Nachrichtenempfang

HandleMessage função

Hands over a valid received UDS message (currently this is only a request type) from the Transport Layer to the Session Layer. This corresponds to T_Data.ind of Figure 2 from ISO 14229-2[25]. The behavior is asynchronously, i.e. the UDS Message is handed over to the Session Layer and it is expected, that it "instantly" returns, which means, that real processing of the message shall be done asynchronously by the Transport Layer!

virtual void HandleMessage (UdsMessagePtr message) noexcept=0;

Indicates a message start. This is an interface, which is just served/called by UdsTransportProtocolHandlers, which return TRUE from UdsTransportProtocolHandlers::isStartOfMessageIndicationSupported().

virtual std::pair< IndicationResult, UdsMessagePtr > IndicateMessage ( UdsMessage::Address sourceAddr, UdsMessage::Address targetAddr, Uds Message::TargetAddressType type, GlobalChannelIdentifier globalChannel Id, std::size_t size, ara::core::Span< const std::uint8_t > payload Info) noexcept=0;
IndicationResult enumeração

Allowed return values from the DM Server to the Transport Protocol Handler Instance for the received IndicateMessage.

enum class IndicationResult : std::uint8_t {...};

Fehlerbehandlung

Indicates, that the message indicated via IndicateMessage() has failure and will not lead to a final HandleMessage() call.

virtual void NotifyMessageFailure (UdsMessagePtr message) noexcept=0;

Sendebestätigung

Confirmation of sent messages and number.

virtual void PeriodicTransmitConfirmation (ara::core::Vector< Uds MessageConstPtr > messages, std::size_t numberOfSentMessages) noexcept=0;

Notification about the outcome of a transmit request called by core DM at the handler via Uds TransportProtocolHandler::Transmit(). This transmit API covers T_Data.con of ISO 14229-2[25] Figure 2.

virtual void TransmitConfirmation (UdsMessageConstPtr message, TransmissionResult result) noexcept=0;
TransmissionResult enumeração

Values denoting the Transmission Confirmation Result provided by the Transport Protocol Handler Instance to the DM Server.

enum class TransmissionResult : std::uint8_t {...};

Kanal- und Handlersteuerung

Notification call from the given transport protocol channel, that it has been reestablished since the last (Re)Start from the UdsTransportProtocolHandler to which this channel belongs. To activate this notification a previous call to UdsTransportProtocolHandler::Notify Reestablishment() has to be done. See further documentation at UdsTransport ProtocolHandler::NotifyReestablishment().

virtual void ChannelReestablished (GlobalChannelIdentifier global ChannelId) noexcept=0;

Notification call from handler, that it has stopped now (e.g. closed down network connections, freed resources, etc...) This callback is expected as a reaction from handler to a call to UdsTransportProtocol Handler::Stop().

virtual void HandlerStopped (UdsTransportProtocolHandlerID handlerId) noexcept=0;

Type of tuple to pack UdsTransportProtocolHandlerID and ChannelID together, to form a global unique (among all used UdsTransportProtocolHandlers within DM) identifier of a Uds TransportProtocol channel.

using GlobalChannelIdentifier = std::tuple<UdsTransportProtocolHandler ID, ChannelID>;

Documentação dos métodos

função ChannelReestablished [SWS_DM_00313] Upstream: RS_AP_00120, RS_AP_00121, RS_AP_00122, RS_Diag_04147, RS_Diag_04168

virtual void ChannelReestablished (GlobalChannelIdentifier global ChannelId) noexcept=0;

Notification call from the given transport protocol channel, that it has been reestablished since the last (Re)Start from the UdsTransportProtocolHandler to which this channel belongs. To activate this notification a previous call to UdsTransportProtocolHandler::Notify Reestablishment() has to be done. See further documentation at UdsTransport ProtocolHandler::NotifyReestablishment().

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 0a7e82ca2c53 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

usar

O método ChannelReestablished da classe apext::diag::uds_transport::UdsTransportProtocolMgr serve como retorno de uma implementação de protocolo de transporte UDS ao Diagnostic Management (DM) de que um canal de comunicação está disponível novamente após uma (re)inicialização [SWS_DM_00313]. A implementação do protocolo de transporte chama este método exatamente uma vez assim que a redisponibilidade do canal de rede representado por ChannelID for detectada [SWS_DM_00358]. Como parâmetro é passado globalChannelId, composto pela tupla de handlerIdent próprio e a ChannelID [SWS_DM_00358].

Zusammenspiel e ciclo de vida

O pré-requisito para a notificação é uma chamada anterior de NotifyReestablishment [SWS_DM_00313], [SWS_DM_00356]. Um caso de uso típico é a execução de um reset de ECU (serviço UDS 0x11) com a opção de uma resposta positiva após a reinicialização [SWS_DM_00326]. Para garantir a notificação mesmo após uma reinicialização do DM, a solicitação de notificação deve ser armazenada de forma persistente pelo protocolo de transporte [SWS_DM_00359].

Tratamento de erros e simultaneidade

A função não possui valor de retorno e é especificada como noexcept (exception safe) [SWS_DM_00313]. Como a interface é classificada como não segura para threads (not thread-safe) [SWS_DM_00313], os handlers chamadores presumivelmente devem sincronizar o acesso externamente. Pergunta Q-aaf14893457cceb6 (aberta) Como restrição temporal, aplica-se que o DM só pode processar a chamada de ChannelReestablished após a chamada de UdsTransportProtocolHandler::Start [SWS_DM_01744].

Este texto foi gerado automaticamente por uma IA com base na especificação AUTOSAR R25-11.

Guia do implementador em breve (complexidade I2)

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
globalChannelIdtransport protocol channel, which is available again.

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_00313
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00313@rel:R25-11#0f292d1e
Content hash
0f292d1e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00313
Status: valid/unmigrated Version: rel:R25-11#4c5b70ac 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_00313@rel:R25-11#4c5b70ac
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#dacc8bb22026-09-30
  • R19-11rel:R19-11#acd4155f2026-10-14
  • R20-11rel:R20-11#9235fd502026-10-14
  • R21-11rel:R21-11#b392eb2d2026-10-14
  • R22-11rel:R22-11#b01162a42026-10-14
  • R23-11rel:R23-11#f88cee172026-10-14
  • R24-11rel:R24-11#867edbc12026-10-14
  • R25-11rel:R25-11#4c5b70ac2026-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

função HandleMessage [SWS_DM_00311] Upstream: RS_Diag_04147, RS_Diag_04168

virtual void HandleMessage (UdsMessagePtr message) noexcept=0;

Hands over a valid received UDS message (currently this is only a request type) from the Transport Layer to the Session Layer. This corresponds to T_Data.ind of Figure 2 from ISO 14229-2[25]. The behavior is asynchronously, i.e. the UDS Message is handed over to the Session Layer and it is expected, that it "instantly" returns, which means, that real processing of the message shall be done asynchronously by the Transport Layer!

Literaturverzeichnis SWS Diagnostics: [25] ISO 14229-2(2021) – Unified diagnostic services (UDS) - Part 2: Session layer services (Release 2021-10) – www.iso.org

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: eea0d4e77276 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

O método HandleMessage serve para passar uma mensagem de solicitação UDS válida e completamente recebida da camada de transporte para a camada de sessão do Diagnostic Management ([SWS_DM_00311]). Isto corresponde ao serviço T_Data.ind de acordo com a ISO 14229-2 ([SWS_DM_00311], AUTOSAR_AP_SWS_Diagnostics §C.2.1.2.2.2 «HandleMessage»).

Chamada e parâmetros

Assim que a implementação do protocolo de transporte tiver preenchido a carga útil do buffer solicitado anteriormente via IndicateMessage ([SWS_DM_00388]), ela chama HandleMessage na instância de apext::diag::uds_transport::UdsTransportProtocolMgr ([SWS_DM_00345]). Como argumento, é passado message do tipo UdsMessagePtr. Através da semântica std::unique_ptr, a posse da mensagem UDS retorna ao núcleo genérico de DM ([SWS_DM_00311]). A função não fornece valor de retorno.

Semântica, concorrência e tratamento de erros

  • Assincronismo: A chamada deve retornar imediatamente («instantly returns») ([SWS_DM_00311]). Interpretação: O processamento propriamente dito da solicitação de diagnóstico deverá continuar de forma assíncrona no núcleo de DM, num contexto de execução separado. Pergunta Q-b8dd1a5f3d2dcdf0 (aberta)
  • Caso de erro: O método é declarado como noexcept e seguro contra exceções ([SWS_DM_00311]). Se a receção ou o preenchimento da mensagem falhar, nenhuma chamada de HandleMessage deve ocorrer; em vez disso, o erro deve ser reportado através de NotifyMessageFailure ([SWS_DM_00310]).
  • Segurança de threads: A operação é especificada como not thread-safe ([SWS_DM_00311]). Os chamadores devem sincronizar acessos paralelos à mesma instância.

Interação

A interface pertence à camada de protocolo de transporte e deve ser distinguida do método de processamento de serviços do lado da aplicação ara::diag::GenericUDSService::HandleMessage ([SWS_DM_00618]).

Este texto foi gerado automaticamente. Todas as informações baseiam-se exclusivamente no estado da especificação R25-11.

Guia do implementador em breve (complexidade I2)

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
messageThe UDS message ptr (unique_ptr semantics) with the request. Ownership of the UDS Message is given back to the generic DM core here.

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_00311
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00311@rel:R25-11#c0804085
Content hash
c0804085
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00311
Status: valid/unmigrated Version: rel:R25-11#25c5615f 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_00311@rel:R25-11#25c5615f
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#1d9aefcf2026-09-30
  • R19-11rel:R19-11#cb8d6db52026-10-14
  • R20-11rel:R20-11#307c47612026-10-14
  • R21-11rel:R21-11#307c47612026-10-14
  • R22-11rel:R22-11#fd0648c82026-10-14
  • R23-11rel:R23-11#4d3583a52026-10-14
  • R24-11rel:R24-11#779e87e62026-10-14
  • R25-11rel:R25-11#25c5615f2026-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

função HandlerStopped [SWS_DM_00314] Upstream: RS_AP_00120, RS_AP_00121, RS_AP_00122, RS_Diag_04147, RS_Diag_04168

virtual void HandlerStopped (UdsTransportProtocolHandlerID handlerId) noexcept=0;

Notification call from handler, that it has stopped now (e.g. closed down network connections, freed resources, etc...) This callback is expected as a reaction from handler to a call to UdsTransportProtocol Handler::Stop().

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 265cc47567e6 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

O método de callback puramente virtual HandlerStopped da interface de gerenciamento apext::diag::uds_transport::UdsTransportProtocolMgr serve como retorno de um plugin de transporte UDS para o Diagnostic Manager (DM), indicando que sua execução foi encerrada e que todos os recursos associados, bem como as conexões de rede, foram completamente liberados [SWS_DM_00314]. Esta chamada é esperada como resposta obrigatória do handler a uma chamada prévia de UdsTransportProtocolHandler::Stop() [SWS_DM_00314], [SWS_DM_00323].

Contexto de chamada e parâmetros: O plugin afetado se identifica na chamada através do parâmetro de entrada handlerId do tipo UdsTransportProtocolHandlerID [SWS_DM_00314]. O método não possui valor de retorno (void) e garante total segurança contra exceções (exception safe) por meio de sua especificação como noexcept [SWS_DM_00314]. Códigos de erro específicos, reações a erros ou notificações para DET ou DEM não estão definidos para esta interface.

Fluxo e restrições: Se o Diagnostic Manager mudar para o estado ApplicationState.kTerminating no âmbito do procedimento de encerramento, ele chama primeiramente Stop() em cada implementação de protocolo de transporte UDS iniciada [SWS_DM_00333]. Após o retorno de Stop(), vigora uma estrita proibição de chamadas: o plugin handler não deve mais chamar nenhum outro método em relação a UdsTransportProtocolMgr, exceto HandlerStopped [SWS_DM_01741], [SWS_DM_00323]. Antes do encerramento definitivo do processo do DM, este aguarda a chegada do respectivo callback HandlerStopped com o handlerId correspondente [SWS_DM_00340]. A interface é indicada como não thread-safe (not thread-safe) [SWS_DM_00314]. Interpretação: Uma vez que o DM aguarda a chegada do callback separadamente, é provável que o encerramento efetivo das conexões de rede no plugin ocorra de forma assíncrona em relação ao retorno do método Stop(). Pergunta Q-40829d46bd661337 (aberta)

Esta nota de uso foi criada de forma automatizada com base na especificação AUTOSAR R25-11.

Guia do implementador em breve (complexidade I2)

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
handlerIdindication, which plugin stopped.

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_00314
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00314@rel:R25-11#f13f393b
Content hash
f13f393b
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00314
Status: valid/unmigrated Version: rel:R25-11#0cc2f185 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_00314@rel:R25-11#0cc2f185
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#8489c37a2026-09-30
  • R19-11rel:R19-11#4212b1402026-10-14
  • R20-11rel:R20-11#f5d072332026-10-14
  • R21-11rel:R21-11#d2e1ff562026-10-14
  • R22-11rel:R22-11#0b5685c52026-10-14
  • R23-11rel:R23-11#43fb4c882026-10-14
  • R24-11rel:R24-11#33d1abec2026-10-14
  • R25-11rel:R25-11#0cc2f1852026-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

função IndicateMessage [SWS_DM_00309] Upstream: RS_AP_00120, RS_AP_00121, RS_AP_00122, RS_Diag_04147, RS_Diag_04168

virtual std::pair< IndicationResult, UdsMessagePtr > IndicateMessage ( UdsMessage::Address sourceAddr, UdsMessage::Address targetAddr, Uds Message::TargetAddressType type, GlobalChannelIdentifier globalChannel Id, std::size_t size, ara::core::Span< const std::uint8_t > payload Info) noexcept=0;

Indicates a message start. This is an interface, which is just served/called by UdsTransportProtocolHandlers, which return TRUE from UdsTransportProtocolHandlers::isStartOfMessageIndicationSupported().

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 892a371d0de7 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

O método IndicateMessage [SWS_DM_00309] da classe apext::diag::uds_transport::UdsTransportProtocolMgr é chamado de forma síncrona por um UdsTransportProtocolHandler quando o início da recepção de uma mensagem UDS deve ser sinalizado e o handler suporta isso. O chamador passa os endereços de origem e de destino (sourceAddr, targetAddr), o tipo de endereçamento type (físico ou funcional), o ID do canal globalChannelId, o tamanho total esperado size, bem como, opcionalmente, uma visualização em bytes dos dados úteis já recebidos (payloadInfo). A disponibilização de pelo menos dois bytes em payloadInfo é recomendada para que o Diagnostic Management Core possa reconhecer requisições funcionais como Tester-Present (lógica de bypass) mesmo durante o processamento em andamento AUTOSAR_AP_SWS_Diagnostics §7.1 «UDS Transport Layer».

Como valor de retorno, a chamada síncrona e segura contra exceções fornece um std::pair composto por IndicationResult [SWS_DM_00384] e um UdsMessagePtr [SWS_DM_00309]:

  • Aceitação: Se a mensagem puder ser processada, o DM Core retorna IndicationResult::kIndicationOk juntamente com um UdsMessagePtr válido, cuja capacidade mínima é de pelo menos um byte [SWS_DM_00385].
  • Rejeição e casos de erro: Se o DM estiver sobrecarregado, ele responde com kIndicationOccupied e nullptr [SWS_DM_00386]. Em caso de endereço de destino inválido, kIndicationUnknownTargetAddress é retornado com um ponteiro nulo. Outros valores de status definidos são kIndicationOverflow [SWS_DM_00384].

Com relação à concorrência e ao tempo de vida, o método está especificado como não thread-safe (not thread-safe) [SWS_DM_00309]; as chamadas devem, portanto, ocorrer com a sincronização adequada. A visualização passada via payloadInfo é volátil e deve ser utilizada exclusivamente no âmbito desta chamada de função [SWS_DM_00309].

No decorrer do processo, mediante o retorno de kIndicationOk, a camada de transporte preenche o buffer disponibilizado via GetPayload [SWS_DM_00301] até o limite de capacidade ou até o comprimento total da mensagem [SWS_DM_00388]. Após o preenchimento bem-sucedido, HandleMessage é chamado [SWS_DM_00345]. Se a recepção da mensagem falhar prematuramente, o handler deve devolver o buffer ao DM via NotifyMessageFailure [SWS_DM_00310].

Este texto foi gerado por uma IA e serve como orientação.

Guia do implementador em breve (complexidade I3)

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
sourceAddrUDS source address of the message.
targetAddrUDS target address of the message.
typeIndication whether the request is kPhysical or kFunctional addressed.
globalChannelIdTransport Protocol Channel on which the message start happened.
sizeSize in bytes of the UdsMessage starting from SID.
payloadInfoView onto the first received payload bytes, if any. This view shall be used only within this function call. It is recommended that the Transport Protocol provides at least the first two bytes of the request message, so the DM can identify a functional Tester Present. Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.

Rückgabewert

TypBeschreibung
std::pair< IndicationResult, UdsMessagePtr>Pair of IndicationResult and a pointer to UDS Message owned/created by DM core and returned to the handler to get filled.

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

Record
AUTOSAR/AP/record/SWS_DM_00309
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00309@rel:R25-11#f339a320
Content hash
f339a320
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00309
Status: valid/unmigrated Version: rel:R25-11#38e7de31 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_00309@rel:R25-11#38e7de31
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#04055a8d2026-09-30
  • R19-11rel:R19-11#bfb192392026-10-14
  • R20-11rel:R20-11#8e14a6b72026-10-14
  • R21-11rel:R21-11#66a0b1c12026-10-14
  • R22-11rel:R22-11#2f212c252026-10-14
  • R23-11rel:R23-11#1d9e17452026-10-14
  • R24-11rel:R24-11#674af7dd2026-10-14
  • R25-11rel:R25-11#38e7de312026-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

função NotifyMessageFailure [SWS_DM_00310] Upstream: RS_Diag_04147, RS_Diag_04168

virtual void NotifyMessageFailure (UdsMessagePtr message) noexcept=0;

Indicates, that the message indicated via IndicateMessage() has failure and will not lead to a final HandleMessage() call.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 1ed3e3a2e8d6 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

usar

O método virtual puro NotifyMessageFailure é disponibilizado por meio do cabeçalho apext/diag/uds_transport/protocol_mgr.h na interface apext::diag::uds_transport::UdsTransportProtocolMgr [SWS_DM_00310]. Ele serve para a implementação do protocolo de transporte indicar ao Diagnostic Management que uma mensagem previamente sinalizada via IndicateMessage() falhou e que nenhuma chamada final de HandleMessage() [SWS_DM_00345] ocorrerá mais [SWS_DM_00310]. Como parâmetro, é passado o ponteiro message do tipo UdsMessagePtr, devolvendo a mensagem afetada à camada de sessão [SWS_DM_00310]. Não existe valor de retorno (void).

Tratamento de erros e simultaneidade

A função é declarada como noexcept e segura contra exceções [SWS_DM_00310]. Ela não lança exceções e reporta interrupções de transmissão puramente por meio da interface de parâmetros. Em relação à concorrência, o método é classificado como não seguro para threads (not thread-safe) [SWS_DM_00310]. Interpretação: em caso de processamento paralelo no nível do protocolo de transporte, os chamadores presumivelmente devem garantir sincronização externa. Pergunta Q-8d9b3a3561b9b6ac (aberta)

Interação e fluxo

No fluxo regular, o protocolo de transporte preenche a carga útil de UdsMessage [SWS_DM_00388] após um IndicateMessage() bem-sucedido e a encaminha ao Diagnostic Management via HandleMessage() [SWS_DM_00345]. No entanto, se a transmissão falhar – por exemplo, em caso de erros durante a recepção de uma requisição multi-frame –, NotifyMessageFailure é chamado em seu lugar [SWS_DM_00310]. Isso impede chamadas de processamento subsequentes e afeta o gerenciamento de sessão: enquanto o temporizador S3Server é parado no início da recepção [SWS_DM_00383], um erro de recepção de uma mensagem multi-frame faz com que o temporizador S3Server seja reiniciado e conte novamente desde o início (SWS Diagnostics §7.3.2.7 «Session handling» / [SWS_DM_00310]).

Esta nota de uso foi gerada por uma IA com base na especificação AUTOSAR R25-11.

Guia do implementador em breve (complexidade I1)

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
messagePointer to the UDS Message handed back over to the Session Layer.

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_00310
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00310@rel:R25-11#ad18f81f
Content hash
ad18f81f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00310
Status: valid/unmigrated Version: rel:R25-11#533ed88a 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_00310@rel:R25-11#533ed88a
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#e7beffc22026-09-30
  • R19-11rel:R19-11#bf0753592026-10-14
  • R20-11rel:R20-11#126bf37a2026-10-14
  • R21-11rel:R21-11#da1ddcf72026-10-14
  • R22-11rel:R22-11#f198f39e2026-10-14
  • R23-11rel:R23-11#501c9dff2026-10-14
  • R24-11rel:R24-11#c8c1a8962026-10-14
  • R25-11rel:R25-11#533ed88a2026-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

função PeriodicTransmitConfirmation [SWS_DM_01069] Upstream: RS_Diag_04215

virtual void PeriodicTransmitConfirmation (ara::core::Vector< Uds MessageConstPtr > messages, std::size_t numberOfSentMessages) noexcept=0;

Confirmation of sent messages and number.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 001a65962260 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

usar

O método puramente virtual PeriodicTransmitConfirmation é parte integrante da classe apext::diag::uds_transport::UdsTransportProtocolMgr e é declarado através do arquivo de cabeçalho apext/diag/uds_transport/protocol_mgr.h [SWS_DM_01069]. Ele serve para a confirmação de mensagens de diagnóstico periódicas enviadas, bem como para a transmissão da quantidade de mensagens enviadas com sucesso AUTOSAR_AP_SWS_Diagnostics §C.2.1.2.2.6 «PeriodicTransmitConfirmation».

Na chamada, dois parâmetros de entrada são passados, enquanto o método não fornece valor de retorno:

  • messages (ara::core::Vector<UdsMessageConstPtr>): A mesma lista ordenada de mensagens que foi passada anteriormente para o método UdsTransportProtocolPeriodicHandler::PeriodicTransmit() [SWS_DM_01069].
  • numberOfSentMessages (std::size_t): A quantidade de mensagens transmitidas com sucesso a partir da lista messages [SWS_DM_01069].

Tratamento de erros e segurança contra exceções

Em relação à segurança de exceção, a interface é especificada como exception safe e provida do identificador noexcept [SWS_DM_01069]. Ela, portanto, não lança exceções C++. Códigos de erro ou mensagens de erro específicos através de DET ou DEM não estão definidos na especificação para esta função de confirmação.

Simultaneidade e condições marginais

A função está classificada como não segura para threads (not thread-safe) de acordo com a especificação [SWS_DM_01069]. Chamadas simultâneas na mesma instância, portanto, não estão protegidas e devem ser coordenadas pelo chamador.

Interação

A função conecta-se diretamente ao fluxo de envio periódico: ela recebe a confirmação sobre as mensagens efetivamente despachadas após uma chamada de UdsTransportProtocolPeriodicHandler::PeriodicTransmit() AUTOSAR_AP_SWS_Diagnostics §C.2.1.2.2.6 «PeriodicTransmitConfirmation». No nível de requisitos, a função está atribuída ao requisito upstream RS_Diag_04215 [SWS_DM_01069].

Esta nota de utilização foi gerada por uma IA com base na especificação AUTOSAR R25-11.

Guia do implementador em breve (complexidade I1)

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
messagesThe same ordered list of messages previously passed to Uds TransportProtocolPeriodicHandler::Periodic Transmit().
numberOfSentMessagesThe number of successfully sent messages from the "messages" list.

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_01069
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01069@rel:R25-11#c035a570
Content hash
c035a570
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01069
Status: valid/unmigrated Version: rel:R25-11#53ff341c Versionshistorie & Revisions (1 transition, 7 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_01069@rel:R25-11#53ff341c
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#bcf47ee92026-09-30
  • R20-11rel:R20-11#92ace4d82026-10-14
  • R21-11rel:R21-11#cd6fd2542026-10-14
  • R22-11rel:R22-11#55d5fcb22026-10-14
  • R23-11rel:R23-11#389cb5052026-10-14
  • R24-11rel:R24-11#986d318f2026-10-14
  • R25-11rel:R25-11#53ff341c2026-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

função TransmitConfirmation [SWS_DM_00312] Upstream: RS_Diag_04172, RS_Diag_04147, RS_Diag_04168

virtual void TransmitConfirmation (UdsMessageConstPtr message, TransmissionResult result) noexcept=0;

Notification about the outcome of a transmit request called by core DM at the handler via Uds TransportProtocolHandler::Transmit(). This transmit API covers T_Data.con of ISO 14229-2[25] Figure 2.

Literaturverzeichnis SWS Diagnostics: [25] ISO 14229-2(2021) – Unified diagnostic services (UDS) - Part 2: Session layer services (Release 2021-10) – www.iso.org

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: b51c331436fa Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

usar

O método virtual puro TransmitConfirmation da interface apext::diag::uds_transport::UdsTransportProtocolMgr serve para notificar o Diagnostic Management (DM) sobre a conclusão de uma ordem de envio previamente iniciada pelo DM via UdsTransportProtocolHandler::Transmit [SWS_DM_00312] [SWS_DM_00348]. A função implementa o serviço primitivo T_Data.con de acordo com a ISO 14229-2 [SWS_DM_00312].

Na chamada, são passados dois parâmetros [SWS_DM_00312]:

  • message (UdsMessageConstPtr): Ponteiro para a mensagem UDS previamente disponibilizada em IndicateMessage() e cuja transmissão é confirmada [SWS_DM_00312].
  • result (TransmissionResult): Indica o resultado da transmissão. Se a camada de rede conseguiu enviar com sucesso a resposta UDS para a rede, o valor deve ser definido como kTransmitOk, caso contrário como kTransmitFailed [SWS_DM_00351] SWS Diagnostics §7.1.1.3 «Confirmation Result».

O método não possui valor de retorno (void) e é declarado como noexcept, razão pela qual deve ser executado de forma segura contra exceções [SWS_DM_00312].

Concorrência e comportamento do sistema

A interface é explicitamente especificada como não segura para threads [SWS_DM_00312]. Chamadas a partir de contextos concorrentes de rede ou de manipuladores deverão, portanto, exigir sincronização externa pela implementação do protocolo de transporte. Pergunta Q-e540ca89c3f61ecb (aberta)

Além disso, a chamada influencia o gerenciamento de autenticação: se um cliente se encontrar na sessão padrão e no estado kAuthenticated, o Diagnostic Server coloca-o no estado kDeAuthenticated se, após o último TransmitConfirmation, nenhuma nova solicitação for recebida durante o período de authenticationTimeout [SWS_DM_01210].

Este texto foi gerado por uma IA e serve para orientação técnica.

Guia do implementador em breve (complexidade I2)

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
messageFor which message (created in IndicateMessage()) this is the confirmation.
resultResult of transmission. In case the UDS message could be transmitted on network layer kTransmitOk, else kTransmitFailed.

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_00312
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00312@rel:R25-11#17638498
Content hash
17638498
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00312
Status: valid/unmigrated Version: rel:R25-11#222a75d3 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_00312@rel:R25-11#222a75d3
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#677d428f2026-09-30
  • R19-11rel:R19-11#212d61dd2026-10-14
  • R20-11rel:R20-11#a10ea9422026-10-14
  • R21-11rel:R21-11#71d0b62f2026-10-14
  • R22-11rel:R22-11#550859bf2026-10-14
  • R23-11rel:R23-11#54312aac2026-10-14
  • R24-11rel:R24-11#9aca7ec12026-10-14
  • R25-11rel:R25-11#222a75d32026-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

função ~UdsTransportProtocolMgr [SWS_DM_01524] Upstream: RS_AP_00134

virtual ~UdsTransportProtocolMgr () noexcept=default;

Destructor of class UdsTransportProtocolMgr.

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
Exception-Sicherheitexception safe

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

Record
AUTOSAR/AP/record/SWS_DM_01524
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01524@rel:R25-11#6a5bf158
Content hash
6a5bf158
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01524
Status: valid/unmigrated Version: rel:R25-11#573fe30c Versionshistorie & Revisions (1 transition, 5 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_01524@rel:R25-11#573fe30c
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#49e2bed92026-09-30
  • R22-11rel:R22-11#d451921a2026-10-14
  • R23-11rel:R23-11#91e882962026-10-14
  • R24-11rel:R24-11#df6540502026-10-14
  • R25-11rel:R25-11#573fe30c2026-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

Documentação das enumerações

enumeração IndicationResult [SWS_DM_00384] Upstream: RS_Diag_04147, RS_Diag_04168

enum class IndicationResult :            std::uint8_t {...};

Allowed return values from the DM Server to the Transport Protocol Handler Instance for the received IndicateMessage.

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Forwarding-Header#include "apext/diag/diag_fwd.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
SymbolIndicationResult
Basistypstd::uint8_t

Werte

EnumeratorBeschreibung
kIndicationOk=0 Indication Ok.
kIndicationOccupied=1 Indication Occupied.
kIndicationOverflow=2 Indication Overflow.
kIndicationUnknownTargetAddress=3 Indication UnknownTargetAddress.

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

Record
AUTOSAR/AP/record/SWS_DM_00384
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00384@rel:R25-11#d564657c
Content hash
d564657c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00384
Status: valid/unmigrated Version: rel:R25-11#fc9e7b47 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_00384@rel:R25-11#fc9e7b47
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#a696d1622026-09-30
  • R19-11rel:R19-11#d4b8e2312026-10-14
  • R20-11rel:R20-11#099ea9052026-10-14
  • R21-11rel:R21-11#b33d8fec2026-10-14
  • R22-11rel:R22-11#ecd3c6072026-10-14
  • R23-11rel:R23-11#707e152a2026-10-14
  • R24-11rel:R24-11#4437e4182026-10-14
  • R25-11rel:R25-11#fc9e7b472026-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

enumeração TransmissionResult [SWS_DM_00307] Upstream: RS_Diag_04172, RS_Diag_04147, RS_Diag_04168

enum class TransmissionResult :              std::uint8_t {...};

Values denoting the Transmission Confirmation Result provided by the Transport Protocol Handler Instance to the DM Server.

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Forwarding-Header#include "apext/diag/diag_fwd.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
SymbolTransmissionResult
Basistypstd::uint8_t

Werte

EnumeratorBeschreibung
kTransmitOk=0 Transmission Ok.
kTransmitFailed=1 Transmission Failed.

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

Record
AUTOSAR/AP/record/SWS_DM_00307
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00307@rel:R25-11#e6dc0494
Content hash
e6dc0494
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00307
Status: valid/unmigrated Version: rel:R25-11#a96e1afe 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_00307@rel:R25-11#a96e1afe
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#bb7c59332026-09-30
  • R19-11rel:R19-11#3c5bd3e02026-10-14
  • R20-11rel:R20-11#1a40da8a2026-10-14
  • R21-11rel:R21-11#1a40da8a2026-10-14
  • R22-11rel:R22-11#dd385c782026-10-14
  • R23-11rel:R23-11#d63bd68e2026-10-14
  • R24-11rel:R24-11#0774c6bd2026-10-14
  • R25-11rel:R25-11#a96e1afe2026-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

Documentação dos aliases de tipo

alias de tipo GlobalChannelIdentifier [SWS_DM_09021] Upstream: RS_Diag_04147, RS_Diag_04168

using GlobalChannelIdentifier = std::tuple<UdsTransportProtocolHandler ID, ChannelID>;

Type of tuple to pack UdsTransportProtocolHandlerID and ChannelID together, to form a global unique (among all used UdsTransportProtocolHandlers within DM) identifier of a Uds TransportProtocol channel.

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
SymbolGlobalChannelIdentifier

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

Record
AUTOSAR/AP/record/SWS_DM_09021
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_09021@rel:R25-11#76ed9a1e
Content hash
76ed9a1e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_09021
Status: valid/unmigrated Version: rel:R25-11#2dd38493 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_09021@rel:R25-11#2dd38493
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#4200e9d42026-09-30
  • R19-11rel:R19-11#7c3bef962026-10-14
  • R20-11rel:R20-11#8ffd78d52026-10-14
  • R21-11rel:R21-11#8ffd78d52026-10-14
  • R22-11rel:R22-11#b1e43aa62026-10-14
  • R23-11rel:R23-11#01454d8f2026-10-14
  • R24-11rel:R24-11#1fe1cbb92026-10-14
  • R25-11rel:R25-11#2dd384932026-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