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 會寫入空值元素。如果帳號代碼不是分葉,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
無法擷取資料並寫入寫入者。