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.
Encapsula dados binários lidos e a respetiva contagem de bytes a partir de um RawDataStream com propriedade exclusiva do buffer.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 8e3411ab8137ProcedênciaPerguntas em aberto (3)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
Encapsula dados binários lidos e a respetiva contagem de bytes a partir de um RawDataStream com propriedade exclusiva do buffer.
A estrutura ara::rds::ReadDataResult encapsula o resultado de uma operação de leitura a partir de um fluxo de dados brutos da AUTOSAR Adaptive Platform (AUTOSAR_AP_SWS_RawDataStream, p. 1). Ela é gerada pelos métodos ReadData e disponibiliza os dados binários lidos no buffer data juntamente com a contagem real de bytes numberOfBytes[SWS_RDS_11301]. Dado que o buffer é gerido como std::unique_ptr, a estrutura presumivelmente transfere a propriedade exclusiva para o chamador e exclui a cópia. Pergunta (aberta) Os erros são reportados através do ara::core::Result envolvente, razão pela qual o resultado tem de ser validado antes do acesso aos dados.
Contexto
A classe ara::rds::ReadDataResult funciona no módulo rds (RawDataStream) da AUTOSAR Adaptive Platform como contentor de resultados estruturado para recuperações de dados a partir de fluxos de dados (AUTOSAR_AP_SWS_RawDataStream, p. 1). A sua responsabilidade primária consiste em entregar à aplicação chamadora os bytes de dados brutos lidos por um fluxo de dados brutos juntamente com a contagem de bytes efetivamente transferida. Como parceiros de interação no conjunto do sistema surgem as instâncias de stream, que disponibilizam os métodos de leitura ReadData, bem como o respetivo componente de aplicação, que avalia o fluxo de dados e continua a processar os dados [SWS_RDS_10486], [SWS_RDS_11322].
Ciclo de vida
Instâncias de ara::rds::ReadDataResult surgem no âmbito de operações de leitura síncronas ou com tempo limitado. A criação é iniciada quando um chamador invoca o método ReadData(std::size_t maxLength)[SWS_RDS_10486], [SWS_RDS_11322] ou a sobrecarga com monitorização de tempo ReadData(std::size_t maxLength, std::chrono::milliseconds timeout)[SWS_RDS_11309], [SWS_RDS_11323].
As relações de posse e o ciclo de vida da memória são determinados de forma determinante pelo elemento de dados contido data, o qual está declarado como std::unique_ptr<ara::core::Byte[]>[SWS_RDS_11301]. Segundo a interpretação comum de C++, isto significa que ReadDataResult foi concebido presumivelmente como tipo move-only e, portanto, não pode ser copiado, mas apenas movido. Pergunta Q-fe4b113c5852b5aa (aberta) Ao receber o objeto, o programa chamador assume a propriedade exclusiva do buffer de dados alocado. A destruição da instância conduz automaticamente à libertação da memória heap reservada do array de bytes, desde que o ponteiro não tenha sido previamente retirado de forma explícita do objeto. No que diz respeito à concorrência, não existe sincronização interna; o acesso concorrente a uma instância a partir de múltiplas threads sem bloqueios externos não é seguro para threads.
Caminho de utilização
O fluxo regular para utilização de ara::rds::ReadDataResult subdivide-se nas seguintes etapas parciais:
Solicitação da operação de leitura: a aplicação chama no stream ReadData com a quantidade máxima de dados desejada maxLength[SWS_RDS_10486], [SWS_RDS_11322], opcionalmente complementada por um valor de timeout [SWS_RDS_11309], [SWS_RDS_11323].
Retorno do contentor Result: o stream lê os dados binários a partir do canal e retorna, em caso de sucesso, um objeto preenchido do tipo ara::core::Result<ReadDataResult> (AUTOSAR_AP_SWS_RawDataStream, p. 1).
Determinação do tamanho: a aplicação lê o campo numberOfBytes[SWS_RDS_11302]. Interpretação: é provável que este valor indique a quantidade de bytes efetivamente disponibilizada no buffer, a qual pode ser menor ou igual ao maxLength solicitado. Pergunta Q-12bde8c67452a632 (aberta)
Processamento de dados: o buffer data é desreferenciado [SWS_RDS_11301] para processar os bytes recebidos ou transferi-los para estruturas próprias da aplicação por meio de semântica de movimento.
Cenários de erro típicos compreendem interrupções de stream, solicitações de leitura inválidas ou o esgotamento do tempo de espera em chamadas de leitura monitorizadas por tempo [SWS_RDS_11309], [SWS_RDS_11323]. Interpretação: em tais falhas, o ara::core::Result presumivelmente não contém nenhum objeto ReadDataResult válido, mas sim um código de erro correspondente. Pergunta Q-f3f971c4789fe8e7 (aberta) Para a aplicação, isto significa como pré-condição para o acesso a data[SWS_RDS_11301] e numberOfBytes[SWS_RDS_11302] verificar sempre primeiro o estado de sucesso do objeto Result de nível superior, a fim de evitar o acesso a ponteiros não inicializados ou a áreas de memória inválidas.
Este guia foi gerado por uma IA com base na especificação AUTOSAR AP R25-11.
gemini-3.8-flash-low· 2026-10-13 · Original em alemão