Serve para o acionamento pontual de anúncios de veículos DoIP em uma interface de rede especificada.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: f854d0aec1c7ProcedênciaPerguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
Serve para o acionamento pontual de anúncios de veículos DoIP em uma interface de rede especificada.
A classe [SWS_DM_00820] serve para que Adaptive Applications acionem explicitamente, junto ao Diagnostic Management, o envio de anúncios de veículos DoIP de acordo com a ISO 13400-2 em uma determinada interface de rede. O acesso não ocorre através de instanciação própria, mas sim estaticamente por meio de uma referência de objeto disponibilizada pelo sistema ([SWS_DM_00821]). Para interfaces com controle dependente da linha de ativação, a chamada explícita é inadmissível, pois o envio ocorre ali de forma totalmente automática ([SWS_DM_00822]).
A criação e destruição de instâncias da classe DoIPTriggerVehicleAnnouncement estão sujeitas a requisitos estritos: tanto o construtor padrão ([SWS_DM_02100]) quanto o destrutor ([SWS_DM_02101]) são declarados como delete, privados e específicos do fornecedor em sua forma concreta. As aplicações não podem, portanto, instanciar nem destruir objetos dessa classe diretamente.
O acesso à interface ocorre estaticamente por meio da função GetDoIPTriggerVehicleAnnouncement() ([SWS_DM_00821]). Esta retorna um ara::core::Result<std::reference_wrapper<DoIPTriggerVehicleAnnouncement>>, pelo qual o chamador obtém uma referência ao objeto de serviço disponibilizado pelo DM. Interpretação: devido aos construtores privados e excluídos e ao retorno de uma referência de objeto, é provável que a classe seja gerenciada internamente pelo DM como um singleton de longa duração. Pergunta Q-cecb961746b3ad13 (aberta)
Em relação à simultaneidade, nem a consulta de interface GetDoIPTriggerVehicleAnnouncement() nem a chamada de método TriggerVehicleAnnouncement() são especificadas como thread-safe ("not thread-safe") ([SWS_DM_00821], [SWS_DM_00822]). Um acesso simultâneo a partir de múltiplas threads requer, portanto, sincronização externa. Ambos os métodos são especificados como seguros contra exceções ("exception safe") ([SWS_DM_00821], [SWS_DM_00822]).
Caminho de utilização
O fluxo típico para a solicitação de um anúncio de veículo DoIP divide-se nas seguintes etapas:
Obter instância: a aplicação chama estaticamente ara::diag::DoIPTriggerVehicleAnnouncement::GetDoIPTriggerVehicleAnnouncement() ([SWS_DM_00821]).
Avaliar resultado: o ara::core::Result resultante é verificado quanto a erros; em caso de sucesso, a referência é desempacotada.
Solicitar anúncio: por meio do método TriggerVehicleAnnouncement(networkInterfaceId), o envio na interface de rede desejada é disparado ([SWS_DM_00822]).
Envio de mensagens pelo DM: o DM processa a requisição e envia mensagens de anúncio de veículo de acordo com a ISO 13400-2 na interface identificada por networkInterfaceId ([SWS_DM_00815]).
Um cenário de erro central no uso de TriggerVehicleAnnouncement diz respeito a interfaces de rede dependentes da linha de ativação: se a networkInterfaceId fornecida pertencer a uma configuração de interface (DoIPNetworkConfiguration) na qual a propriedade isActivationLineDependent = TRUE estiver definida, a chamada resultará em um erro ([SWS_DM_00822]). Em tais interfaces, o envio de mensagens de anúncio já é disparado automaticamente pelo DM assim que a linha de ativação estiver ativa e um endereço IP tiver sido atribuído ([SWS_DM_00816], [SWS_DM_00822]).
Para as funções GetDoIPTriggerVehicleAnnouncement() e TriggerVehicleAnnouncement(), não estão especificados códigos de erro padronizados ([SWS_DM_00821], [SWS_DM_00822]). Eventuais erros de tempo de execução ou estados de erro específicos do fornecedor são transportados no ara::core::Result retornado e devem ser verificados pela aplicação chamadora.
Este guia de classe foi gerado com base na especificação AUTOSAR Adaptive R25-11.
Called by application to trigger DM sending out vehicle announcements on the given network interface Id.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: fd0a2f72ec5aProcedênciaPerguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
O método TriggerVehicleAnnouncement da interface ara::diag::DoIPTriggerVehicleAnnouncement[SWS_DM_00820] serve para fazer com que o Diagnostic Management (DM) envie anúncios de veículo DoIP em conformidade com a ISO 13400-2 em uma interface de rede especificada [SWS_DM_00815], [SWS_DM_00822].
Utilização e semântica
A função recebe o parâmetro networkInterfaceId (std::uint8_t), que identifica a interface de rede de destino, e retorna um ara::core::Result<void>[SWS_DM_00822]. Ela é declarada como noexcept e não lança exceções [SWS_DM_00822].
Tratamento de erros e condições de contorno
Códigos de erro padronizados não estão definidos para este método [SWS_DM_00822]. Ocorre uma situação de erro se o networkInterfaceId passado pertencer a uma configuração de rede com a propriedade isActivationLineDependent = TRUE[SWS_DM_00822]. Nessas interfaces, o envio já é iniciado automaticamente após a ativação da linha de ativação ou atribuição do endereço IP [SWS_DM_00816], [SWS_DM_00822]. Interpretação: Como não existem códigos de erro padronizados, o erro provavelmente deve ser sinalizado através de um código de erro específico do fabricante no objeto Result. Pergunta Q-ee2ea52f0b3064ce (aberta)
This function does not specify any standardized errors.
Hinweise: If the reported DoIPNetworkConfiguration.networkInterfaceId belongs to a DoIPNetwork Configuration with property isActivationLineDependent = TRUE, this is an error as on those interfaces sending of announcements happens automatically after activation line going up/IP address assignment.
Request a governed re-review of this record. The record is not changed immediately.
gemini-3.8-flash-low· 2026-10-13 · Original em alemão