nl::Weave::Profiles::DataManagement_Current::TraitSchemaEngine::IGetDataDelegate

这是一个抽象类。

摘要

继承

已知直接子类:
  nl::Weave::Profiles::DataManagement_Current::TraitDataSource
  nl::Weave::Profiles::DataManagement_Current::TraitUpdatableDataSink

公共函数

GetData(PropertyPathHandle aHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter, bool & aIsNull, bool & aIsPresent)=0
virtual WEAVE_ERROR
给定节点的路径句柄、TLV 写入器和指示值是否为 null 的布尔值,从将构建通知的特征来源获取数据。
GetLeafData(PropertyPathHandle aLeafHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter)=0
virtual WEAVE_ERROR
给定叶节点的路径句柄和 TLV 写入器,从被调用方获取数据。

公共函数

GetData

virtual WEAVE_ERROR GetData(
  PropertyPathHandle aHandle,
  uint64_t aTagToWrite,
  nl::Weave::TLV::TLVWriter & aWriter,
  bool & aIsNull,
  bool & aIsPresent
)=0

给定节点的路径句柄、TLV 写入器和指示值是否为 null 的布尔值,从将构建通知的特征来源获取数据。

如果路径句柄不是叶节点,TDM 将处理向写入者写入值的操作(例如打开容器、使结构体为空等)。如果某个非叶节点为 null 或不存在,TDM 将不会为其子节点调用 GetData。

仅对可为 null、可选、临时或叶的句柄调用此函数。预期是,任何具有已启用这些选项的句柄的特征都将实现适当的逻辑来填充 aIsNull 和 aIsPresent。

具体说明
参数
[in] aHandle
相关的 PropertyPathHandle。
[in] aTagToWrite
要为 aHandle 编写的标记。
[in,out] aWriter
向其写入 TLV 元素的写入器。
[out] aIsNull
aHandle 是否作废?如果是,TDM 将写入一个 null 元素。如果句柄不是叶项,TDM 将跳过其子项。
[out] aIsPresent
是否存在 aHandle?如果值为“否”,并且“句柄”不是叶项,则 TDM 将跳过该路径及其子项。
返回值
WEAVE_NO_ERROR
成功时。
other
无法检索数据并将其写入写入器。

GetLeafData

virtual WEAVE_ERROR GetLeafData(
  PropertyPathHandle aLeafHandle,
  uint64_t aTagToWrite,
  nl::Weave::TLV::TLVWriter & aWriter
)=0

给定叶节点的路径句柄和 TLV 写入器,从被调用方获取数据。

具体说明
返回值
WEAVE_NO_ERROR
成功时。
other
无法检索数据并将其写入写入器。