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、可选、临时或叶的句柄调用此函数。预期:任何具有启用这些选项的句柄的 trait 都将实现适当的逻辑来填充 aIsNull 和 aIsPresent。

详细信息
参数
[in] aHandle
相关 PropertyPathHandle。
[in] aTagToWrite
要为 aHandle 编写的代码。
[in,out] aWriter
写入 TLV 元素的作者。
[out] aIsNull
是否将 aHandle 作废?如果是,TDM 会写入 null 元素。如果 aHandle 不是叶,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
无法检索数据并将其写入写入者。