《鸿蒙智能互联设备开发(微课版)》 课件 6.4.2 HCS配置语法.pptx

《鸿蒙智能互联设备开发(微课版)》 课件 6.4.2 HCS配置语法.pptx

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

6.4.2HCS配置语法

通过本节学习,您可以:了解HCS配置语法

HCS配置语法1.关键字HCS配置语法的部分关键字,如表所示。关键字用途说明root配置根节点-include引用其他HCS配置文件-delete删除节点或属性只能用于操作include导入的配置树template定义模板节点-match_attr用于标记节点的匹配查找属性解析配置时可以使用该属性的值查找到对应节点

HCS配置语法2.基本组成结构HCS配置文件主要由属性(Attribute)和节点(Node)两部分组成。(1)属性属性是最小的配置单元,是一个独立的配置项。语法如下:attribute_name=value;attribute_name是字母、数字、下划线的组合且必须以字母或下划线开头,字母区分大小写。value的可用格式如下:数字常量,支持二进制、八进制、十进制、十六进制数。字符串,内容使用双引号(“”)引用。节点引用。attribute必须以分号(;)结束且必须属于一个node。

HCS配置语法(2)节点节点是一组属性的集合,语法如下:node_name{module=test;...}node_name是字母、数字、下划线的组合且必须以字母或下划线开头,字母区分大小写。大括号后无需添加结束符分号“;”。root为保留关键字,用于声明配置表的根节点。每个配置表必须以root节点开始。root节点中必须包含module属性,其值应该为一个字符串,用于表征该配置所属模块。节点中可以增加match_attr属性,其值为一个全局唯一的字符串。当驱动程序在解析配置时可以以该属性的值为参数调用查找接口查找到包含该属性的节点。

HCS配置语法3.数据类型在属性定义中使用自动数据类型,不显式指定类型,属性支持的数据类型有整型、字符串、数组、布尔类型。整型:整型长度自动推断,根据实际数据长度给与最小空间占用的类型。二进制,0b前缀,示例:0b1010。八进制,0前缀,示例:0664。十进制,无前缀,且支持有符号与无符号,示例:1024,+1024均合法。驱动程序在读取负值时注意使用有符号数读取接口。十六进制,0x前缀,示例:0xff00、0xFF。

HCS配置语法字符串:字符串使用双引号(“”)表示。布尔类型:布尔类型中true表示真,false表示假。数组:数组元素支持整型、字符串,不支持混合类型。整型数组中uint32_t、uint64_t混用会向上转型为uint64_t数组。整型数组与字符串数组示例如下:attr_foo=[0x01,0x02,0x03,0x04];attr_bar=[hello,world];4.预处理include用于导入其他HCS文件。语法示例如下:其中,文件名必须使用双引号(“”),不在同一目录下需要使用相对路径引用。被include文件也必须是合法的HCS文件。若是多个include,如果存在相同的节点,后者覆盖前者,其余的节点依次展开。#includefoo.hcs#include../bar.hcs

HCS配置语法5.注释注释支持两种风格:单行注释和多行注释。//comment单行注释/*comment多行注释*/6.引用修改引用修改可以实现修改另外任意一个节点的内容,语法为:node:source_node

HCS配置语法上述语句表示node中的内容是对source_node节点内容的修改。示例如下:root{module=test;foo{foo_:root.bar{attr=foo;}foo1:foo2{attr=0x2;}foo2{attr=0x1;}}bar{attr=bar;}}root{module=test;foo{foo2{attr=0x2;}}bar{attr=foo;}}最终生成配置树为:可以看到foo.foo_节点通过引用将bar.attr属性的值修改为了foo,foo.foo1节点通过引用将foo.fo

您可能关注的文档

文档评论(0)

balala11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档