DEENESPTFRRUARHIKOZHNL

classe ara::rds::ReadDataResult

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.

[SWS_RDS_11300] · Header ara/rds/raw_data_stream.h

struct ReadDataResult {...};

Result of a RawDataStream read operation.

Header-Datei#include "ara/rds/raw_data_stream.h"
Scopenamespace ara::rds

Guia do utilizadorGERADO POR IA

Encapsula dados binários lidos e a respetiva contagem de bytes a partir de um RawDataStream com propriedade exclusiva do buffer.
GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 8e3411ab8137 Procedência Perguntas 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.
Fluxo típico de um processo de leitura com ReadDataResultAplicaçãoRawDataStreamReadData(maxLength)Ler dados e instanciar ReadDataResultara::core::Result<ReadDataResult>altErfolgreicher LesevorgangAcesso a numberOfBytes e dataFehlerfallAvaliar erro a partir do Result

Diagrama de sequência: fluxo típico de uma operação de leitura com receção e avaliação de ReadDataResult. Fontes: [SWS_RDS_10486], [SWS_RDS_11301], [SWS_RDS_11302], AUTOSAR_AP_SWS_RawDataStream, p. 1

Cenários de erro

Os métodos para a criação de um ReadDataResult estão declarados com noexcept [SWS_RDS_10486], [SWS_RDS_11309], [SWS_RDS_11322], [SWS_RDS_11323], razão pela qual nenhuma exceção C++ é lançada em caso de erro. Em vez disso, o tratamento de erros é processado inteiramente através do objeto de retorno ara::core::Result (AUTOSAR_AP_SWS_RawDataStream, p. 1).

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.

Constantes

data variável

Data buffer returned by a read operation.

std::unique_ptr<ara::core::Byte[]> data;
numberOfBytes variável

Number of bytes in the returned data buffer.

std::size_t numberOfBytes;

Documentação dos métodos e tipos

variável data [SWS_RDS_11301]

std::unique_ptr<ara::core::Byte[]> data;

Data buffer returned by a read operation.

Header-Datei#include "ara/rds/raw_data_stream.h"
Scopeclass ara::rds::ReadDataResult

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

Record
AUTOSAR/AP/record/SWS_RDS_11301
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_RDS_11301@rel:R25-11#9e2f5d9c
Content hash
9e2f5d9c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_RawDataStream.pdf#nameddest=SWS_RDS_11301
Status: valid/unmigrated Version: rel:R25-11#915a5dc4 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_RDS_11301@rel:R25-11#915a5dc4
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#4fb66c882026-09-30
  • R23-11rel:R23-11#915a5dc42026-10-14
  • R24-11rel:R24-11#915a5dc42026-10-14
  • R25-11rel:R25-11#915a5dc42026-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

variável numberOfBytes [SWS_RDS_11302]

std::size_t numberOfBytes;

Number of bytes in the returned data buffer.

Header-Datei#include "ara/rds/raw_data_stream.h"
Scopeclass ara::rds::ReadDataResult

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

Record
AUTOSAR/AP/record/SWS_RDS_11302
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_RDS_11302@rel:R25-11#e6a61eb6
Content hash
e6a61eb6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_RawDataStream.pdf#nameddest=SWS_RDS_11302
Status: valid/unmigrated Version: rel:R25-11#5ef0f8da 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_RDS_11302@rel:R25-11#5ef0f8da
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#43b0e44a2026-09-30
  • R23-11rel:R23-11#5ef0f8da2026-10-14
  • R24-11rel:R24-11#5ef0f8da2026-10-14
  • R25-11rel:R25-11#5ef0f8da2026-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