Diese Seite wurde vollständig KI-generiert auf Basis von SWS Raw Data Stream (R25-11) — kein offizieller AUTOSAR-Text und keine automatisch extrahierte API-Seite wie die übrigen Module. Als Interpretation gekennzeichnete Aussagen sind Schlussfolgerungen aus den Quellen.
template<typename T> class IEEE1722RawDataStreamConsumer final {...};
Consumer for typed IEEE 1722 stream datagrams.
Header-Datei
#include "ara/rds/raw_data_stream_IEEE1722.h"
Scope
namespace ara::rds
Guia do utilizadorGERADO POR IA
Recebe datagramas de streaming IEEE 1722 tipados por meio de um ponto de extremidade de comunicação configurado.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: e1b5fefad19bProcedênciaPerguntas em aberto (2)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
Recebe datagramas de streaming IEEE 1722 tipados por meio de um ponto de extremidade de comunicação configurado.
A classe de template ara::rds::IEEE1722RawDataStreamConsumer serve para a recepção tipada de datagramas de streaming IEEE 1722 na AUTOSAR Adaptive Platform. As instâncias são criadas por meio do método estático Create() com um InstanceSpecifier[SWS_RDS_90312] e, em seguida, conectadas ao fluxo de dados por meio de Connect(). Por meio do método ReadData(), datagramas recebidos podem ser lidos até uma quantidade máxima predefinida [SWS_RDS_90321]. Operações de cópia são excluídas, de modo que a conexão pode ser transmitida exclusivamente por operações move, cuja execução não é thread-safe.
Contexto
A classe de template ara::rds::IEEE1722RawDataStreamConsumer funciona como um receptor tipado para datagramas de streaming IEEE 1722 dentro do módulo de fluxo de dados brutos (rds) da AUTOSAR Adaptive Platform. Por meio do parâmetro de template T, define-se o tipo de dados úteis concreto dos datagramas. A classe encapsula o acesso ao fluxo de dados e vincula os pontos de extremidade de comunicação à infraestrutura de comunicação configurada por meio de um identificador do tipo ara::core::InstanceSpecifier[SWS_RDS_90312]. Aplicações utilizam este consumer para receber fluxos de dados úteis estruturados AVTP ou IEEE 1722 de forma direta e com eficiência de recursos.
Ciclo de vida
A instanciação de um consumer ocorre exclusivamente por meio do método de fábrica estático Create()[SWS_RDS_90312], especificando a instância de destino. Uma chamada direta ao construtor não é prevista para usuários. A classe implementa uma semântica estrita move-only: a cópia de instâncias é explicitamente proibida, já que tanto o construtor de cópia [SWS_RDS_90316] quanto o operador de atribuição por cópia [SWS_RDS_90317] estão excluídos. Isso garante que a conexão subjacente e os recursos de buffer permaneçam sempre sob posse exclusiva.
Para permitir transferências de posse entre contextos, a classe disponibiliza um construtor move [SWS_RDS_90314], bem como um operador de atribuição move [SWS_RDS_90315]. Ambas as operações move são declaradas como não thread-safe, razão pela qual acessos concorrentes à mesma instância devem ser sincronizados. Ao desalocar a instância, o destrutor ~IEEE1722RawDataStreamConsumer() fecha automaticamente uma conexão eventualmente ainda existente [SWS_RDS_90318]; o destrutor também é especificado como não thread-safe.
Caminho de utilização
O fluxo típico no uso de um IEEE1722RawDataStreamConsumer compreende quatro fases consecutivas:
Criação: a aplicação cria a instância do consumer por meio do método de fábrica Create() com o ara::core::InstanceSpecifier desejado [SWS_RDS_90312].
Estabelecimento da conexão: antes da recepção de dados úteis, a aplicação conecta o consumer ao fluxo de dados configurado chamando Connect()[SWS_RDS_90319].
Recepção de dados: a aplicação chama ReadData() repetidamente ou de forma cíclica [SWS_RDS_90321]. O parâmetro maxNumberOfDatagrams indica a quantidade máxima de datagramas a serem consultados na chamada. O resultado é retornado como um vetor do tipo de template T.
Encerramento da conexão: após a conclusão da transmissão de dados, a aplicação encerra a conexão explicitamente por meio de Shutdown()[SWS_RDS_90320] ou deixa a limpeza a cargo do destrutor [SWS_RDS_90318].
Todas as funções de interface regulares da classe — Create()[SWS_RDS_90312], Connect()[SWS_RDS_90319], ReadData()[SWS_RDS_90321] e Shutdown()[SWS_RDS_90320] — são qualificadas com noexcept e não sinalizam estados de erro por meio de exceções C++, mas sim por meio do tipo de retorno ara::core::Result. Aplicações precisam, portanto, verificar se o respectivo resultado contém um valor ou um erro antes de acessar valores de dados ou antes de operações subsequentes.
Possíveis constelações de erro incluem a falha na criação da instância, caso a configuração do InstanceSpecifier esteja incorreta, bem como interrupções de conexão ou erros no acesso à rede durante Connect() ou ReadData(). Interpretação: uma chamada de ReadData() provavelmente pressupõe que um estabelecimento de conexão bem-sucedido tenha sido concluído previamente por meio de Connect(). Pergunta Q-ea5241fe8b3e95a8 (aberta) Causas concretas de erro provavelmente são transportadas de forma idiomática como códigos de erro no ara::core::Result retornado.
Este guia foi gerado por um sistema de IA com base na especificação AUTOSAR Adaptive Platform Release R25-11.
gemini-3.8-flash-low· 2026-10-13 · Original em alemão