nl::Weave::Profiles::SoftwareUpdate::UpdateSchemeList

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

一个辅助类,用于保存更新方案列表作为图片查询的一部分。

摘要

简单的封装容器,其大小可容纳任何可能的更新方案子集。为完成此任务,其大小等于 UpdateSchemes 中用于生成 ImageQuery 消息中受支持更新方案列表的元素数量。

构造函数和构造函数

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

公共属性

theLength
uint8_t
受支持的元素列表的长度。
theList[kUpdateScheme_Last]
uint8_t
包含受支持的更新方案的容器。

公共函数

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

公共静态函数

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

公共属性

TheLength

uint8_t theLength

受支持的元素列表的长度。

长度为 0 表示列表为空

列表

uint8_t theList[kUpdateScheme_Last]

包含受支持的更新方案的容器。

它的大小等于 UpdateSchemes 中的元素数量

公共函数

UpdateSchemeList

 UpdateSchemeList()

UpdateSchemeList 的默认构造函数。

构建逻辑空列表。您可以通过 init() 方法或通过对消息中的列表进行反序列化来填充该列表。

init

WEAVE_ERROR init(
  uint8_t,
  uint8_t *
)

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

详细信息
参数
[in] aLength
列表长度的 8 位值。必须小于 UpdateSchemes 中的枚举数量。
[in] aList
指向 UpdateSchemes 值数组的指针。只有在 aLength 为 0 时,才可以为 NULL。
返回值
WEAVE_NO_ERROR
成功时。
WEAVE_ERROR_INVALID_LIST_LENGTH
如果长度过长

运算符==

bool operator==(
  const UpdateSchemeList &
) const 

等式运算符。

详细信息
参数
another
要检查此列表的列表
返回值
如果列表相等,则为 true;否则为 false

WEAVE_ERROR pack(
  MessageIterator &
)

将对象序列化到提供的 MessageIterator

详细信息
参数
[in] i
所封装消息上的迭代器
返回值
WEAVE_NO_ERROR
成功时。
WEAVE_ERROR_BUFFER_TOO_SMALL
如果列表太长,无法完全显示在消息中。

公共静态函数

parse

WEAVE_ERROR parse(
  MessageIterator &,
  UpdateSchemeList &
)

将对象从给定的 MessageIterator 反序列化为提供的 UpdateSchemeList

详细信息
参数
[in] i
要解析的消息的迭代器。
[in] aList
对包含结果的对象的引用
返回值
WEAVE_NO_ERROR
成功时。
WEAVE_ERROR_BUFFER_TOO_SMALL
消息过短。
WEAVE_ERROR_INVALID_LIST_LENGTH
邮件包含无效列表长度(数据不足以填充列表或数据过多以致无法超出限制)