nl::Weave::Profiles::SoftwareUpdate::IntegrityTypeList

#include <src/lib/profiles/software-update/SoftwareUpdateProfile.h>

一个辅助类,用于保存完整性类型列表作为图片查询的一部分。

摘要

简单的封装容器,其大小可容纳任何可能的完整性类型子集。为了完成此任务,其大小等于 IntegrityTypes 中的元素数量。它用于在 ImageQuery 消息中生成支持的完整性类型的列表。

构造函数和析构函数

IntegrityTypeList()
IntegrityTypeList 的默认构造函数。

公共属性

theLength
uint8_t
受支持元素列表的长度。
theList[kIntegrityType_Last]
uint8_t
包含支持的完整性类型的容器。

公共函数

init(uint8_t, uint8_t *)
使用支持的 IntegrityType 列表显式初始化 IntegrityTypeList
operator==(const IntegrityTypeList &) const
bool
等式运算符。
pack(MessageIterator &)
将对象序列化到提供的 MessageIterator

公共静态函数

parse(MessageIterator &, IntegrityTypeList &)
将给定 MessageIterator 中的对象反序列化为提供的 IntegrityTypeList

公共属性

theLength

uint8_t theLength

受支持元素列表的长度。

长度为 0 表示空列表

theList

uint8_t theList[kIntegrityType_Last]

包含支持的完整性类型的容器。

其大小等于 IntegrityTypes 中的元素数量

公共函数

IntegrityTypeList

 IntegrityTypeList()

IntegrityTypeList 的默认构造函数。

构造一个逻辑上空的列表。您可以通过 init() 方法或通过从消息中反序列化列表来填充该列表。

init

WEAVE_ERROR init(
  uint8_t,
  uint8_t *
)

使用支持的 IntegrityType 列表显式初始化 IntegrityTypeList

具体说明
参数
[in] aLength
列表长度的 8 位值。必须少于 IntegrityTypes 中的枚举数量。
[in] aList
指向 IntegrityTypes 值数组的指针。当 aLength 为 0 时,可以为 NULL。
返回值
WEAVE_NO_ERROR
成功时。
WEAVE_ERROR_INVALID_LIST_LENGTH
如果长度过长

运算符==

bool operator==(
  const IntegrityTypeList &
) const 

等式运算符。

具体说明
参数
another
要对照此列表进行检查的列表
返回值
如果列表相等,则返回 true,否则返回 false

WEAVE_ERROR pack(
  MessageIterator &
)

将对象序列化到提供的 MessageIterator

具体说明
参数
[in] i
一个迭代器,用于封装正在打包的消息
返回值
WEAVE_NO_ERROR
成功时。
WEAVE_ERROR_BUFFER_TOO_SMALL
邮件内容过长,无法全部显示。

公共静态函数

parse

WEAVE_ERROR parse(
  MessageIterator &,
  IntegrityTypeList &
)

将给定 MessageIterator 中的对象反序列化为提供的 IntegrityTypeList

具体说明
参数
[in] i
针对正在解析的消息的迭代器。
[in] aList
对包含结果的对象的引用
返回值
WEAVE_NO_ERROR
成功时。
WEAVE_ERROR_BUFFER_TOO_SMALL
消息过短。
WEAVE_ERROR_INVALID_LIST_LENGTH
如果消息包含无效的列表长度(数据不足,无法填充列表,或者数据过多,无法满足限制)