【OSATE学习笔记】AADL Property 特性

介绍

  • 特性(Property Values)和我们平时代码里的变量类似。
  • 本文介绍了特性的查看方法,4种特性值的类别,6种特性状态的用法。

运行环境

  • Osate 2.10.0
  • Windows 10 x64

目录

AADL Property Values视图

  • AADL Property Values视图用于以结构化的方式显示和编辑参数值,这通常比直接导航和操作AADL文本文件更容易。
  • 显示方式:
    • Window -> Show View -> AADL Property Values即可打开该试图
      【OSATE学习笔记】AADL Property 特性
    • 初始状态列表为空
      【OSATE学习笔记】AADL Property 特性
    • 双击任一特性,即可显示特性参数信息
      【OSATE学习笔记】AADL Property 特性

特性值

  • 特性值有四种类型:

    • 列表(Lists):列表值可以展开以显示其单个列表元素。
    • 文本(Records):记录值可以展开以显示其字段。
    • 范围(Ranges):范围值可以扩展以显示最小值、最大值和增量值。
    • 模式(Modes):可以扩展模式属性值,以显示每个模式的不同值。
  • 在PropertyViewerExamples这个样例的Page_220.aadl中,Sampler_B有两个特性,Programming_Properties特性的Spurce_Text值为Lists类型,Timing_Properties特性的Period值为Records类型
    【OSATE学习笔记】AADL Property 特性

  • 在PropertyViewerExamples这个样例的Page_88.aadl中,Received_Prime特性Data_Model的Data_Representation值为Modes类型
    【OSATE学习笔记】AADL Property 特性

特性状态

  • 特性状态有六种类型:

    • local:本地特性
    • local contained:本地包含特性
    • shared local contained:包含共享本地特性
    • inherited:继承特性
    • default:系统默认值
    • undefined:不明确的特性
  • 在PropertyViewerExamples这个样例的Page_88.aadl中,Received_Prime是一个继承特性
    【OSATE学习笔记】AADL Property 特性

local特性

  • local特性是最基本的特性,用=>就可以直接给特性赋值。
  • 在PropertyViewerExamples这个样例的Page_220.aadl中,car的特性mine具有三个local特性Car_Length、Position、Car_Name,通过如下代码来进行定义:
	device car
		properties
			mine::Car_Length => 3.25 meter;
			mine::Position => [ x => 3; y => 4; ];
			mine::Car_Name => [ US => "Rabbit"; Germany => "Golf"; ];
	end car;

【OSATE学习笔记】AADL Property 特性

(shared)local contained特性

  • local contained特性是在获取一个包含其他aadl文件特性的特性。
    • local contained特性是应用于单个元素的值。
    • shared local contained特性应用于同一个子句中的多个元素。
  • 在PropertyViewerExamples这个样例的Navigation.aadl中,GPS_Data是一个本地包含特性。
    • 在features内创建一个拥有Nav_Types的GPS的特性GPS_Data
		features
			GPS_Data : in data port Nav_Types::GPS;
  • 在properties内用applies to将Input_Rate特性赋值给GPS_Data
			Input_Rate => [
				Value_Range => 50.0 .. 50.0;
				Rate_Unit => perSecond;
				Rate_Distribution => Fixed;
			] applies to GPS_Data;
  • 最终实现了GPS_Data本地包含特性的创建
    【OSATE学习笔记】AADL Property 特性
  • 在Nav_Types中定义了GPS特性
    【OSATE学习笔记】AADL Property 特性

Inherited特性

  • Inherited发生在thread之间,被继承的thread会具有继承的thread的特性。
  • 在PropertyViewerExamples这个样例的Page_88.aadl中,Prime_Reporter_One继承了Prime_Reporter的特性
    【OSATE学习笔记】AADL Property 特性
    【OSATE学习笔记】AADL Property 特性

default特性

  • default特性表示所选元素的属性值没有在任何模型元素上定义,而是来自属性的默认值声明。
  • 具有default的特性通常不会显示在视图中。工具栏按钮Show default property values可用于切换的显示具有default的特性。
    【OSATE学习笔记】AADL Property 特性

undefined特性

  • undefined特性表示该特性对于选定的模型元素没有值。这些特性适用于选定的元素,因此它们可能具有选定特性持有者的值。
  • 具有undefined的特性通常不会显示在视图中。工具栏按钮Show undefined properties可用于切换的显示具有undefined的特性。
    【OSATE学习笔记】AADL Property 特性

结束

  • Property 翻译为特性合不合适我也不好说,翻译为属性、变量、特征好像也行。
  • 学习aadl的过程,好像当初学C语言一样,需要自己一点点摸索。
上一篇:插值计算


下一篇:python property 装饰器