为了对相关的元模型元素进行简洁的描述,本章集中讨论和解释了概念方面的内容。
阅读本章并不是理解后面章节的先决条件。
它只是为本文档其他各章中使用的概念方面的详细描述提供了一个中心位置。
基础概念分8节:
1、测量和校准
2、运行时和数据一致性方面
3、软件组件模板中的变量处理
4、组成组件类型的通信规范
5、PRPortPrototype
6、假装联网
7、可变大小的数组数据类型
8、结构中的可选元素
基础概念分四部分讲述,本章讲述:
7、可变大小的数组数据类型
8、结构中的可选元素
7、可变大小的数组数据类型
概述和用例
AUTOSAR支持定义数组数据类型,其中实际有效负载的大小在运行时会有所不同。就配置而言,可以指定运行时不得超过的最大数组元素数。
为了正确理解该方法,有必要了解对可变大小数组数据类型的支持是在两次浪潮中引入的,每一次浪潮都有不同的动机。
“旧世界”动态大小的数组
在第一波中,对可变大小数组数据类型的支持仅限于基本上可以归结为基本类型是长度为一个字节的无符号整数数据类型的数组。
此方案的主要用例来自诊断要求以及对J1939通信协议的支持。
在这两种情况下,都可以根据上下文确定可变大小数组数据类型的实际长度,即通过诊断基本软件模块或通过J1939 TP的实现来确定。
由于缺乏更好的术语,本规范区分了“旧世界”动态大小数组和“新世界”可变大小数组数据类型。有必要明确定义可以消除“旧世界”动态大小数组和“新世界”可变大小数组数据类型之间歧义的特征。
通过ApplicationArrayDataType定义“旧世界”动态大小的数组数据类型
未定义属性dynamicArraySizeProfile并在存在属性arraySizeSemantics并将其设置为variableSize值的位置聚合ApplicationArrayElement的ApplicationArrayDataType应被视为“旧世界”动态尺寸数组数据类型。
在某些情况下,必须在没有相应的ImplementationDataType的情况下区分“旧世界”动态大小数组和“新世界”可变大小数组数据类型。
通常,如果相应的ImplementationDataType的定义可用,则消除歧义变得多面