DEENESPTFRRUARHIKOZHNL

类 ara::rds::IEEE1722Datagram

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_90225] · Header ara/rds/raw_data_stream_IEEE1722.h

class IEEE1722Datagram {...};

IEEE 1722 datagram representation: IEEE1722Datagram.

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

用户指南人工智能生成

用作在 Raw Data Stream 中封装 IEEE 1722 有效负载缓冲区和长度信息的基类。
AI 生成 未审核 模型: gemini-3.8-flash-medium · 推理强度: medium · 温度: 不可控 · 提示词: 187f3b1b82dd 来源 未决问题(2)
译自德文指南gemini-3.8-flash-low · 2026-10-13 · 德文原文

用作在 Raw Data Stream 中封装 IEEE 1722 有效负载缓冲区和长度信息的基类。

类 ara::rds::IEEE1722Datagram 在模块 rds 中用作封装 IEEE 1722 流式数据报的基类 (AUTOSAR_AP_SWS_RawDataStream 第1页)。它通过受保护的属性 data 以排他所有权管理动态字节缓冲区,并通过 stream_data_length 保存各自的有效负载长度。已分配缓冲区资源的释放通过虚析构函数 ~IEEE1722Datagram() [SWS_RDS_90228] 确定性且无异常地进行。不存在用于并发访问的内部同步,因此跨线程使用必须进行外部保护。

上下文

类 ara::rds::IEEE1722Datagram 在 AUTOSAR Adaptive Platform 的模块 rds (Raw Data Stream) 中充当符合 IEEE 1722 标准的数据报的基础表示 (AUTOSAR_AP_SWS_RawDataStream 第1页)。它通过头文件 ara/rds/raw_data_stream_IEEE1722.h 声明,并用作在车辆网络中传输时间关键型流数据(特别是通过 Audio Video Transport Protocol (AVTP))的结构基础。

Interpretation: 通过提供受保护的属性和虚析构函数,ara::rds::IEEE1722Datagram 大概用作各种专用 AVTP 数据报结构的公共基类。 问题 Q-bb382ff193640c8f (未决)规范在此上下文中定义了相关类型,例如 IEEE1722DatagramAVTPDUCommonHeaderFields [SWS_RDS_90233]、IEEE1722DatagramAVTPDUCommonStreamHeaderFields [SWS_RDS_90242]、IEEE1722Datagram61883_IIDC [SWS_RDS_90260]、IEEE1722DatagramAAF [SWS_RDS_90273] 以及 IEEE1722DatagramTSCF [SWS_RDS_90275]。这些交互伙伴共同描绘了用于不同 Payload 格式的协议框架。

diag_kontext IEEE1722Datagram IEEE1722Datagram IEEE1722DatagramAVTPDUCommonHeaderFields IEEE1722DatagramAVTPDUCommonHeaderFields IEEE1722Datagram->IEEE1722DatagramAVTPDUCommonHeaderFields IEEE1722DatagramAVTPDUCommonStreamHeaderFields IEEE1722DatagramAVTPDUCommonStreamHeaderFields IEEE1722DatagramAVTPDUCommonHeaderFields->IEEE1722DatagramAVTPDUCommonStreamHeaderFields IEEE1722DatagramAAF IEEE1722DatagramAAF IEEE1722DatagramAVTPDUCommonStreamHeaderFields->IEEE1722DatagramAAF IEEE1722DatagramTSCF IEEE1722DatagramTSCF IEEE1722DatagramAVTPDUCommonStreamHeaderFields->IEEE1722DatagramTSCF IEEE1722Datagram61883_IIDC IEEE1722Datagram61883_IIDC IEEE1722DatagramAVTPDUCommonStreamHeaderFields->IEEE1722Datagram61883_IIDC

上下文图:ara::rds::IEEE1722Datagram 与专用 AVTP 数据报结构的归类。来源:[SWS_RDS_90226]、[SWS_RDS_90228]、[SWS_RDS_90233]、[SWS_RDS_90242]、[SWS_RDS_90260]、[SWS_RDS_90273]、[SWS_RDS_90275]

生命周期

数据报实例的生命周期主要由关联数据缓冲区的管理和 RAII 范式决定。属性 data 被声明为受保护的 std::unique_ptr<ara::core::Byte[]> [SWS_RDS_90226]。这建立了一种排他所有权关系:数据报排他地拥有其字节缓冲区,从而在类型层面上防止无意复制大量数据。

与缓冲区一起,有效载荷数据的长度通过类型为 std::uint16_t 的受保护字段 stream_data_length 进行维护 [SWS_RDS_90227]。资源的释放以确定性方式进行:该类提供了一个虚析构函数 ~IEEE1722Datagram() noexcept [SWS_RDS_90228]。这确保了在通过指向基类的指针销毁派生实例时,所有资源都能完全释放而不会发生内存泄漏。

关于并发性,基类不包含内部同步机制。从多个线程同时访问同一个数据报实例可能需要应用组件进行外部协调。 问题 (未决)

使用路径

在 Raw Data Stream 的典型处理流程中,通过具体的协议实现(如 IEEE1722DatagramAAF [SWS_RDS_90273] 或 IEEE1722DatagramTSCF [SWS_RDS_90275])来进行使用:

  • 创建与缓冲区分配:实例化一个专用的数据报实例,并将受保护的数据缓冲区 data 初始化为具有所需内存区域的 std::unique_ptr<ara::core::Byte[]> [SWS_RDS_90226]。
  • 长度指定:流的实际有效载荷长度存储在 stream_data_length 中 [SWS_RDS_90227]。
  • 传递与处理:Interpretation: 数据报大概优选通过移动语义在模块 rds 的处理管道中传输,以避免流式数据的不必要复制操作。 问题 Q-ff084c9788ec5cdc (未决)
  • 销毁:处理完成后,数据报离开其作用域;虚析构函数 ~IEEE1722Datagram() 被调用,缓冲区自动释放 [SWS_RDS_90228]。

错误场景

在使用 ara::rds::IEEE1722Datagram 时,错误尤其可能发生在内存管理和边界检查期间:

  • 内存分配错误:如果用于 data 的动态字节数组的分配失败,这可能会导致标准内存异常 (std::bad_alloc),在此之前数据报无法有效提供 [SWS_RDS_90226]。
  • 长度不一致:如果为 stream_data_length 输入的值超过了通过 data 分配的内存的实际大小,则在读取访问时可能面临缓冲区溢出风险 [SWS_RDS_90227]。派生类必须确保缓冲区分配与长度信息之间的一致性。
  • 销毁时的异常安全性:析构函数明确声明为 noexcept [SWS_RDS_90228]。这保证了在销毁对象时不会传播任何异常,这对于 RAII 链的稳定性至关重要。

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

成员图

构造函数和析构函数

1

详细视图

请在大纲中选择一个条目。

构造函数和析构函数

Virtual destructor of the IEEE 1722 datagram type.

~IEEE1722Datagram() noexcept;

常量

data 变量

Protected IEEE 1722 datagram field data.

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

Protected IEEE 1722 datagram field stream_data_length.

std::uint16_t stream_data_length;

方法与类型文档

变量 data [SWS_RDS_90226]

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

Protected IEEE 1722 datagram field data.

Header-Datei#include "ara/rds/raw_data_stream_IEEE1722.h"
Scopeclass ara::rds::IEEE1722Datagram
Zugriffprotected

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

Record
AUTOSAR/AP/record/SWS_RDS_90226
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_RDS_90226@rel:R25-11#88e89e3c
Content hash
88e89e3c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_RawDataStream.pdf#nameddest=SWS_RDS_90226
Status: valid/unmigrated Version: rel:R25-11#cd433d90 Versionshistorie & Revisions (1 transition, 3 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_90226@rel:R25-11#cd433d90
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#036fe33b2026-09-30
  • R24-11rel:R24-11#cd433d902026-10-14
  • R25-11rel:R25-11#cd433d902026-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

变量 stream_data_length [SWS_RDS_90227]

std::uint16_t stream_data_length;

Protected IEEE 1722 datagram field stream_data_length.

Header-Datei#include "ara/rds/raw_data_stream_IEEE1722.h"
Scopeclass ara::rds::IEEE1722Datagram
Zugriffprotected

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

Record
AUTOSAR/AP/record/SWS_RDS_90227
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_RDS_90227@rel:R25-11#24eadbc9
Content hash
24eadbc9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_RawDataStream.pdf#nameddest=SWS_RDS_90227
Status: valid/unmigrated Version: rel:R25-11#0d5df4da Versionshistorie & Revisions (1 transition, 3 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_90227@rel:R25-11#0d5df4da
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#0d27ae0d2026-09-30
  • R24-11rel:R24-11#0d5df4da2026-10-14
  • R25-11rel:R25-11#0d5df4da2026-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

函数 ~IEEE1722Datagram [SWS_RDS_90228]

~IEEE1722Datagram() noexcept;

Virtual destructor of the IEEE 1722 datagram type.

Header-Datei#include "ara/rds/raw_data_stream_IEEE1722.h"
Scopeclass ara::rds::IEEE1722Datagram

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

Record
AUTOSAR/AP/record/SWS_RDS_90228
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_RDS_90228@rel:R25-11#b0dbc83d
Content hash
b0dbc83d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_RawDataStream.pdf#nameddest=SWS_RDS_90228
Status: valid/unmigrated Version: rel:R25-11#4395c8db Versionshistorie & Revisions (1 transition, 3 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_90228@rel:R25-11#4395c8db
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#df2abe812026-09-30
  • R24-11rel:R24-11#d950a3602026-10-14
  • R25-11rel:R25-11#4395c8db2026-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