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 寫入器和布林值指出該值是否為空值,請從建立通知的特徵來源取得資料。
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 寫入器和布林值指出該值是否為空值,請從建立通知的特徵來源取得資料。

如果路徑控點不是分葉節點,TDM 會處理將值寫入寫入器的情況 (例如開啟容器、讓結構體無效等)。如果非分葉節點為空值或不存在,TDM 不會為其子項呼叫 GetData。

系統只會針對可為空值、選用、暫時或分葉的控點呼叫此函式。預期啟用這些選項的特徵,都會導入適當的邏輯來填入 aIsNull 和 aIsPresent 的組合。

詳細說明
參數
[in] aHandle
有問題的 PropertyPathHandle。
[in] aTagToWrite
為 aHandle 寫入的標記。
[in,out] aWriter
要寫入 TLV 元素的寫入者。
[out] aIsNull
帳號代碼是否可為空值?若有,TDM 會寫入空值元素。如果 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
無法擷取資料並寫入寫入者。