DEENESPTFRRUARHIKOZHNL

类 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

用户指南人工智能生成

封装从 RawDataStream 读取的二进制数据及其字节数,具有独占缓冲区所有权。
AI 生成 未审核 模型: gemini-3.8-flash-medium · 推理强度: medium · 温度: 不可控 · 提示词: 8e3411ab8137 来源 未决问题(3)
译自德文指南gemini-3.8-flash-low · 2026-10-13 · 德文原文

封装从 RawDataStream 读取的二进制数据及其字节数,具有独占缓冲区所有权。

结构体 ara::rds::ReadDataResult 封装了从 AUTOSAR Adaptive Platform 的原始数据流(AUTOSAR_AP_SWS_RawDataStream, 第1页)中读取操作的结果。它由方法 ReadData 生成,并在缓冲区 data 中提供读取的二进制数据连同实际字节数 numberOfBytes [SWS_RDS_11301]。由于缓冲区作为 std::unique_ptr 进行管理,该结构体推测将独占所有权转移给调用方并排除了复制。 问题 (未决)错误通过外层的 ara::core::Result 报告,因此在访问数据之前必须对结果进行验证。

上下文

类 ara::rds::ReadDataResult 在 AUTOSAR Adaptive Platform 的 rds(RawDataStream)模块中充当从数据流中检索数据的结构化结果容器(AUTOSAR_AP_SWS_RawDataStream, 第1页)。其主要职责是将从原始数据流中读取的原始数据字节连同实际传输的字节数一起传递给调用方应用程序。在系统环境中,作为交互伙伴出现的有提供读取方法 ReadData 的流实例,以及评估数据流并进一步处理数据的相应应用程序组件 [SWS_RDS_10486],[SWS_RDS_11322]。

生命周期

ara::rds::ReadDataResult 的实例是在同步或限时读取操作的上下文中生成的。当调用方调用方法 ReadData(std::size_t maxLength) [SWS_RDS_10486]、[SWS_RDS_11322] 或带时间监控的重载 ReadData(std::size_t maxLength, std::chrono::milliseconds timeout) [SWS_RDS_11309]、[SWS_RDS_11323] 时,将触发创建。

所有权和内存生命周期主要由所包含的数据成员 data 决定,该成员声明为 std::unique_ptr<ara::core::Byte[]> [SWS_RDS_11301]。按照常见的 C++ 解释,这意味着 ReadDataResult 推测被设计为仅移动(Move-Only)类型,因此不能被复制,只能被移动。 问题 Q-fe4b113c5852b5aa (未决)调用程序在接收该对象时接管对所分配数据缓冲区的唯一所有权。实例的销毁会自动释放为字节数组保留的堆内存,前提是此前未从对象中显式提取该指针。关于并发性,不存在内部同步;在没有外部锁的情况下从多个线程并发访问一个实例不是线程安全的。

使用路径

使用 ara::rds::ReadDataResult 的常规流程分为以下几个子步骤:

使用 ReadDataResult 进行读取操作的典型流程应用RawDataStreamReadData(maxLength)读取数据并实例化 ReadDataResultara::core::Result<ReadDataResult>altErfolgreicher Lesevorgang访问 numberOfBytes 和 dataFehlerfall评估 Result 中的错误

时序图:读取过程以及接收和评估 ReadDataResult 的典型流程。来源:[SWS_RDS_10486]、[SWS_RDS_11301]、[SWS_RDS_11302]、AUTOSAR_AP_SWS_RawDataStream, 第1页

错误场景

用于生成 ReadDataResult 的方法声明为 noexcept [SWS_RDS_10486]、[SWS_RDS_11309]、[SWS_RDS_11322]、[SWS_RDS_11323],因此在出错时不会抛出 C++ 异常。相反,错误处理完全通过返回对象 ara::core::Result 进行(AUTOSAR_AP_SWS_RawDataStream, 第1页)。

典型的错误场景包括流中断、无效的读取请求或带时间监控的读取调用超时 [SWS_RDS_11309],[SWS_RDS_11323]。解释:在发生此类故障时,ara::core::Result 推测不包含有效的 ReadDataResult 对象,而是包含相应的错误代码。 问题 Q-f3f971c4789fe8e7 (未决)对于应用程序而言,这意味着作为访问 data [SWS_RDS_11301] 和 numberOfBytes [SWS_RDS_11302] 的前置条件,必须始终首先检查外层 Result 对象的成功状态,以防止访问未初始化的指针或无效的内存区域。

本指南由 AI 基于 AUTOSAR AP R25-11 规范生成。

常量

data 变量

Data buffer returned by a read operation.

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

Number of bytes in the returned data buffer.

std::size_t numberOfBytes;

方法与类型文档

变量 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#81f31bb4
Content hash
81f31bb4
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

变量 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#2f780982
Content hash
2f780982
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