VAPS XT开发入门教程10:基本数据类型介绍

系列索引:VAPS XT开发入门教程索引

上一篇:VAPS XT开发入门教程09:计算器介绍

VAPS XT提供了最基本的数据类型和可扩展的数据类型。

基本数据类型

byte/signed byte/string/utf16string/int16/int32/uint16/uint32/float32/float64

可以在基本数据类型的基础上扩展出自己的数据结构

dd文件

*.dd格式的文件是VAPS XT的扩展数据类型文件。其内部为标准的XML格式。

以下是VAPS XT新建工程自带的Float50数据格式。

1
2
3
4
5
6
7
8
9
<?xml version="1.0" encoding="UTF-8"?> 	
<!DOCTYPE dataDescription>
<dataDescription name="Float50">
<field>
<name>array</name>
<type>float</type>
<cardinality>50</cardinality>
</field>
</dataDescription>
  • dataDescription name字段需要和文件名一样
  • field字段可以有多个
  • field name字段任意英文命名
  • field type字段的值只能是byte/signed byte/string/utf16string/int16/int32/uint16/uint32/float32/float64。如果是其他值,在打开工程时会报错。
  • field cardinality表示数量,50个表示array这个变量,是一个有50个float类型数据的数组。
  • 此dd文件只能手动编辑,添加、删除、修改

将设计好的数据结构添加、导入、拖拽到工程的DataIO文件夹中,就可以在工程中使用了。

datatype

蓝色的即为我们设计的数据结构

vtyp

*.vtyp = v type = data type

(只能)用于定义对象(Objects)的属性(Property)

property

在Type字段直接选择我们的类型就可以了。

VAPS XT官方提供的类型位于工程的StandardElements->Data->DataTypes中

DataTypes

下面是一个自定义数据类型

1
2
3
4
5
6
7
8
9
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE type_decl PUBLIC "-//PresagisCanada//DTD VapsXT 18.0" "file:///C:/VAPSXTDTD/VapsXT_18.dtd">

<type_decl name="UInteger" cpp_class="vxtTypUInteger" c_struct="vxtCTypUInteger" build_output_location="VAPSXT_Install">
<struct_type>
<sfield name="Data" type="UInt"/>
</struct_type>
</type_decl>

类型为UInteger即无符号整型,内部实现是是UInt,变量名为Data,相当于对UInt进行了一次封装。

说明

VAPS XT是用于航天仪表的软件,不允许动态分配内存,也就是说new是不允许的,所有的数据类型在设计完成之后大小、数量就固定了。

下一篇:VAPS XT开发入门教程11:数据对象(DataObjects)介绍

如果你有问题,如果是简单的问题可以发邮件给免费解惑,如果涉及难问题或者需要提供附加的服务(比如授权、大工程集成编译、多分区相关,或者作为中间商联系Presagis)可以联系上海亥伯智能科技有限公司 邮箱


VAPS XT开发入门教程10:基本数据类型介绍
https://feater.top/vapsxt/introduction-of-vapsxt-standard-data-type
作者
JackeyLea
发布于
2021年4月26日
许可协议