DEENESPTFRRUARHIKOZHNL

结构体 ara::diag::SovdConfiguration::SovdConfigurationMetaInfo

[SWS_DM_01861] Upstream: RS_Diag_04261

struct SovdConfigurationMetaInfo {...};

MetaInfo for Transfer of SOVD Configurations.

Header-Datei#include "ara/diag/sovd_configuration.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopeclass ara::diag::SovdConfiguration

用户指南人工智能生成

为 SOVD 配置的传输提供 MIME 类型和数据大小等元信息。
AI 生成 未审核 模型: gemini-3.8-flash-medium · 推理强度: medium · 温度: 不可控 · 提示词: 487f6d360b41 来源 未决问题(3)
译自德文指南gemini-3.8-flash-low · 2026-10-13 · 德文原文

为 SOVD 配置的传输提供 MIME 类型和数据大小等元信息。

结构体 ara::diag::SovdConfiguration::SovdConfigurationMetaInfo 在 AUTOSAR Adaptive 中充当传输 SOVD 配置数据时元信息的数据传输对象 [SWS_DM_01861]。它在 mimetype 中捆绑了 MIME 类型,并可选地在 size 中包含配置数据的总长度,这些内容在传递给传输方法之前由应用程序赋值 [SWS_DM_01863]。作为不带自身方法的被动 C++ 数据结构,它既不具备线程安全性也不具备验证逻辑,因此一致性检查直到由处理中的平台服务执行。

上下文

结构体 ara::diag::SovdConfiguration::SovdConfigurationMetaInfo 在 AUTOSAR Adaptive Platform [SWS_DM_01861] 中用作传输 SOVD 配置数据(Service-Oriented Vehicle Diagnostics)的标准元数据容器。它在头文件 ara/diag/sovd_configuration.h 中声明,并在组织结构上直接归属于接口类 ara::diag::SovdConfiguration AUTOSAR_AP_SWS_Diagnostics §8.54.2 “Struct: SovdConfigurationMetaInfo”。其核心职责在于提供诊断配置传输所需的元信息,例如内容类型和数据规模 [SWS_DM_01862]、[SWS_DM_01863]。

主要交互伙伴一方面包括生成、修改或处理配置数据的应用诊断应用程序,另一方面包括 AUTOSAR Adaptive 的诊断管理系统。该结构体充当数据传输对象(Data Transfer Object,DTO),在应用特定逻辑与诊断平台的标准传输服务之间进行协调。通过提供的字段,发送方和接收方可以就配置数据采用何种格式以及传输通道中预期接收多少字节达成一致。

生命周期

作为纯被动 C++ 数据类型(struct),SovdConfigurationMetaInfo 不受复杂平台控制的生命周期阶段约束 [SWS_DM_01861]。其创建通常在启动配置传输或评估接收到的元数据记录之前,直接由 Adaptive Application 在栈上或堆中完成。该结构体遵循 C++ 的常规值语义;拥有它的组件负责实例化和生命周期。

关于内部状态,该结构体没有状态机,也没有离散的运行模式。在公共变量初始化之后,数据将保持不变地留在内存中直到实例被销毁,除非被拥有它的应用程序显式覆盖。实例的释放根据 RAII 模式在离开作用域时自动发生,同时释放所包含字符串的动态分配内存 [SWS_DM_01863]。

在并发方面,SovdConfigurationMetaInfo 不提供内置的线程安全性。多个线程可以同时读取一个实例,例如用于检查配置参数。但是,对同一实例的并发写入访问需要外部同步措施,因为对成员变量的竞争修改会导致数据不一致。

使用路径

一个典型的用例是在实际配置传输之前准备并提供元数据。应用程序首先实例化该结构体,并为字段 mimetype 分配一个描述配置文件媒体类型的字符串 [SWS_DM_01863]、AUTOSAR_AP_SWS_Diagnostics §8.54.2.1.1 “mimetype”。这使得接收方能够将其关联到解析器或模式,例如用于基于 JSON 或 XML 的配置。

在下一步中,将检查是否可以预先确定有效载荷的确切文件大小。如果可以,则使用相应的整型字节值对属性 size 赋值 [SWS_DM_01862]、AUTOSAR_AP_SWS_Diagnostics §8.54.2.1.2 “size”。如果在传输开始前大小未知,则该变量保持未设置状态。随后,准备好的对象将作为实参传递给类 ara::diag::SovdConfiguration 的传输函数。

SOVD 配置传输时的元数据提供流程应用SovdConfigurationMetaInfoSovdConfiguration创建实例分配 mimetype 和可选的 size传递配置连同 MetaInfo反馈传输状态

时序图:配置传输过程中 SovdConfigurationMetaInfo 初始化与传递的典型流程。来源:[SWS_DM_01861]、[SWS_DM_01862]、[SWS_DM_01863]、AUTOSAR_AP_SWS_Diagnostics §8.54.2 “Struct: SovdConfigurationMetaInfo”。

错误场景

由于 SovdConfigurationMetaInfo 被设计为不带成员函数的纯数据结构,因此它不定义自身的返回值、错误码或异常 [SWS_DM_01861]。潜在的错误条件主要源自不完整或不一致的数据赋值,这些情况由 ara::diag::SovdConfiguration 中负责处理的平台服务检测。

解释:第一种错误场景涉及不允许的 MIME 类型。 问题 (未决)若在 mimetype 中存放了空字符串或不受支持的格式标识符,调用的传输服务大概会拒绝处理并将相应的错误码返回给应用程序。第二种错误场景在于数据大小不一致:若实际传输的数据量与 size 中声明的字节值不符,诊断基础设施推测会由于不一致而中止传输。此外,如果所选的传输通道强制要求预先获知总长度,未设置的 size 字段大概也会导致传输错误。

本指南基于 AUTOSAR Adaptive Platform 规范 Release R25-11。

UML 类图

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__diag__SovdConfiguration__SovdConfigurationMetaInfo383 «struct» SovdConfigurationMetaInfo + mimetype + size

常量

mimetype 变量

Specifies the configuration mimetype .

size 变量

Specifies the size of the configuration data .

常量 / 变量文档

变量 mimetype [SWS_DM_01863] Upstream: RS_Diag_04261

ara::core::String mimetype;

Specifies the configuration mimetype .

Header-Datei#include "ara/diag/sovd_configuration.h"
Scopestruct ara::diag::SovdConfiguration::SovdConfigurationMetaInfo
Symbolmimetype
Typara::core::String

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

Record
AUTOSAR/AP/record/SWS_DM_01863
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01863@rel:R25-11#8103956f
Content hash
8103956f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01863
Status: valid/unmigrated Version: rel:R25-11#65d44bcf 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_DM_01863@rel:R25-11#65d44bcf
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#5fa2a0012026-09-30
  • R23-11rel:R23-11#65d44bcf2026-10-14
  • R24-11rel:R24-11#65d44bcf2026-10-14
  • R25-11rel:R25-11#65d44bcf2026-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

变量 size [SWS_DM_01862] Upstream: RS_Diag_04261

ara::core::Optional<std::uint64_t> size;

Specifies the size of the configuration data .

Header-Datei#include "ara/diag/sovd_configuration.h"
Scopestruct ara::diag::SovdConfiguration::SovdConfigurationMetaInfo
Symbolsize
Typara::core::Optional< std::uint64_t >

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

Record
AUTOSAR/AP/record/SWS_DM_01862
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01862@rel:R25-11#4501a44b
Content hash
4501a44b
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01862
Status: valid/unmigrated Version: rel:R25-11#25ab5cd6 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_DM_01862@rel:R25-11#25ab5cd6
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#6b9b42d22026-09-30
  • R23-11rel:R23-11#25ab5cd62026-10-14
  • R24-11rel:R24-11#25ab5cd62026-10-14
  • R25-11rel:R25-11#25ab5cd62026-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