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 с эксклюзивным владением буфером.
СОЗДАНО ИИ не проверено Модель: 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 функционирует в модуле rds (RawDataStream) AUTOSAR Adaptive Platform как структурированный контейнер результатов для извлечения данных из потоков данных (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 подразделяется на следующие шаги:

  • Запрос операции чтения: приложение вызывает у потока ReadData с максимально желаемым объёмом данных maxLength [SWS_RDS_10486], [SWS_RDS_11322], опционально дополненным значением таймаута [SWS_RDS_11309], [SWS_RDS_11323].
  • Возврат контейнера результатов: поток считывает бинарные данные из канала и при успехе возвращает заполненный объект типа ara::core::Result<ReadDataResult> (AUTOSAR_AP_SWS_RawDataStream, с. 1).
  • Определение размера: приложение считывает поле numberOfBytes из [SWS_RDS_11302]. Интерпретация: это значение, вероятно, указывает фактически предоставленный в буфере объём байтов, который может быть меньше или равен запрошенному maxLength. Вопрос Q-12bde8c67452a632 (открытый)
  • Обработка данных: буфер data разыменовывается [SWS_RDS_11301] для обработки полученных байтов или их переноса с помощью семантики перемещения в собственные структуры приложения.
Типичная последовательность операции чтения с помощью 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, чтобы предотвратить доступ к неинициализированным указателям или недопустимым областям памяти.

Настоящее руководство было создано ИИ на основе спецификации AUTOSAR AP R25-11.

Константы

data переменная

Data buffer returned by a read operation.

std::unique_ptr<ara::core::Byte[]> data;
numberOfBytes переменная

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#896a3d2b
Content hash
896a3d2b
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#af9d1928
Content hash
af9d1928
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