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
Руководство пользователяСОЗДАНО ИИ
Принимает типизированные потоковые датаграммы IEEE 1722 через сконфигурированную конечную точку связи.
СОЗДАНО ИИне провереноМодель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: e1b5fefad19bПроисхождениеОткрытые вопросы (2)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал
Принимает типизированные потоковые датаграммы IEEE 1722 через сконфигурированную конечную точку связи.
Шаблонный класс ara::rds::IEEE1722RawDataStreamConsumer служит для типизированного приёма потоковых датаграмм IEEE 1722 в AUTOSAR Adaptive Platform. Экземпляры создаются через статический метод Create() с InstanceSpecifier[SWS_RDS_90312], после чего подключаются к потоку данных через Connect(). С помощью метода ReadData() входящие датаграммы могут считываться вплоть до заданного максимального количества [SWS_RDS_90321]. Операции копирования исключены, поэтому соединение может передаваться исключительно через операции перемещения, выполнение которых не является потокобезопасным.
Контекст
Шаблонный класс ara::rds::IEEE1722RawDataStreamConsumer функционирует как типизированный приёмник для потоковых датаграмм IEEE 1722 внутри модуля необработанных потоков данных (rds) платформы AUTOSAR Adaptive Platform. Через параметр шаблона T определяется конкретный тип полезных данных датаграмм. Класс инкапсулирует доступ к потоку данных и подключает конечные точки связи через идентификатор типа ara::core::InstanceSpecifier к сконфигурированной коммуникационной инфраструктуре [SWS_RDS_90312]. Приложения используют данный Consumer для непосредственного и ресурсоэффективного приёма структурированных потоков полезных данных AVTP или IEEE 1722.
Жизненный цикл
Инстанцирование Consumer осуществляется исключительно через статический фабричный метод Create()[SWS_RDS_90312] с указанием целевого экземпляра. Прямой вызов конструктора для пользователей не предусмотрен. Класс реализует строгую семантику перемещения (move-only): копирование экземпляров явно запрещено, так как конструктор копирования [SWS_RDS_90316] и оператор присваивания копированием [SWS_RDS_90317] удалены. Это гарантирует, что базовое соединение и буферные ресурсы всегда остаются в однозначном владении.
Чтобы сделать возможной передачу владения между контекстами, класс предоставляет конструктор перемещения [SWS_RDS_90314], а также оператор присваивания перемещением [SWS_RDS_90315]. Обе операции перемещения объявлены как непотокобезопасные, поэтому параллельный доступ к одному и тому же экземпляру должен синхронизироваться. При разрушении экземпляра деструктор ~IEEE1722RawDataStreamConsumer() автоматически закрывает всё ещё существующее соединение [SWS_RDS_90318]; деструктор также специфицирован как непотокобезопасный.
Путь использования
Типичный процесс при использовании IEEE1722RawDataStreamConsumer включает четыре последовательные фазы:
Создание: приложение создаёт экземпляр Consumer через фабричный метод Create() с требуемым ara::core::InstanceSpecifier[SWS_RDS_90312].
Установление соединения: перед приёмом полезных данных приложение подключает Consumer к сконфигурированному потоку данных с помощью вызова Connect()[SWS_RDS_90319].
Приём данных: приложение повторно или циклически вызывает ReadData()[SWS_RDS_90321]. При этом параметр maxNumberOfDatagrams задаёт максимальное количество датаграмм, запрашиваемых за один вызов. Результат возвращается в виде вектора шаблонного типа T.
Разрыв соединения: после завершения передачи данных приложение явно завершает соединение через Shutdown()[SWS_RDS_90320] или оставляет очистку деструктору [SWS_RDS_90318].
Все стандартные интерфейсные функции класса — Create()[SWS_RDS_90312], Connect()[SWS_RDS_90319], ReadData()[SWS_RDS_90321] и Shutdown()[SWS_RDS_90320] — квалифицированы как noexcept и сигнализируют о состояниях ошибок не через исключения C++, а через тип возвращаемого значения ara::core::Result. Поэтому перед доступом к значениям данных или перед последующими операциями приложения должны проверять, содержит ли соответствующий результат значение или ошибку.
Возможные ситуации возникновения ошибок включают неудачное создание экземпляра, если конфигурация InstanceSpecifier содержит ошибки, а также обрывы соединения или ошибки при доступе к сети во время Connect() или ReadData(). Интерпретация: вызов ReadData(), по-видимому, предполагает, что ранее было успешно установлено соединение с помощью Connect(). Вопрос Q-ea5241fe8b3e95a8 (открытый) Конкретные причины ошибок идиоматически передаются в виде кодов ошибок в возвращаемом ara::core::Result.
Настоящее руководство сгенерировано ИИ-системой на основе спецификации AUTOSAR Adaptive Platform выпуска R25-11.
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал