透過集合功能整理內容 你可以依據偏好儲存及分類內容。

nl::編織::設定檔::DataManagement_Current::TraitDataSink

此為抽象類別。

總結

繼承

繼承來源: nl::Weave::Profiles::DataManagement_Current::TraitSchemaEngine::ISetDataDelegate
直接已知子類別: nl::Weave::Profiles::DataManagement_Current::TraitUpdatableDataSink

建構函式和解構程式

TraitDataSink(const TraitSchemaEngine *aEngine)
~TraitDataSink()

公開類型

ChangeFlags 列舉
EventType 列舉
OnChangeRejection)(uint16_t aRejectionStatusCode, uint64_t aVersion, void *aContext) typedef

受保護的屬性

mSchemaEngine

公開函式

ClearVersion(void)
void
GetSchemaEngine(void) const
GetSubscriptionClient()
virtual SubscriptionClient *
GetUpdateEncoder()
virtual UpdateEncoder *
GetVersion(void) const
uint64_t
擷取這個接收器中的資料目前版本。
HandleUnknownLeafHandle(void)
資料接收器的便利功能可處理未知的分葉控點,而系統層級容錯的結構定義與 TDM_DISABLE_STRICT_SCHEMA_COMPILANCE 的定義不符。
IsUpdatableDataSink(void)
virtual bool
IsVersionNewer(DataVersion & aVersion)
virtual bool
IsVersionValid(void) const
bool
傳回一個布林值,指出該版本是否有效。
OnEvent(uint16_t aType, void *aInEventParam)
virtual WEAVE_ERROR
SetSubscriptionClient(SubscriptionClient *apSubClient)
virtual WEAVE_ERROR
SetUpdateEncoder(UpdateEncoder *apEncoder)
virtual WEAVE_ERROR
StoreDataElement(PropertyPathHandle aHandle, TLV::TLVReader & aReader, uint8_t aFlags, OnChangeRejection aFunc, void *aContext, TraitDataHandle aDatahandle)
這個讀取器會指向資料元素,且該物件會對應至與此物件繫結的結構定義,此方法會處理該資料,並對下方的所有分葉項目叫用下方的 SetLeafData 呼叫。

受保護的函式

GetLastNotifyVersion(void) const
uint64_t
RejectChange(uint16_t aRejectionStatusCode)
void
SetData(PropertyPathHandle aHandle, nl::Weave::TLV::TLVReader & aReader, bool aIsNull) __OVERRIDE
virtual WEAVE_ERROR
為節點指定路徑控點、TLV 讀取器,以及是否接收空值類型指示,設定要為呼叫者設定的資料。
SetLastNotifyVersion(uint64_t version)
void
SetLeafData(PropertyPathHandle aLeafHandle, nl::Weave::TLV::TLVReader & aReader) __OVERRIDE=0
virtual WEAVE_ERROR
由於分葉節點和 TLV 讀取者的路徑控點,請在呼叫者中設定分葉資料。
SetVersion(uint64_t version)
void

聯集

nl::Weave::Profiles::DataManagement_Current::TraitDataSink::InEventParam

公開類型

變更旗標

 ChangeFlags

EventType

 EventType

OnChange 拒絕

WEAVE_ERROR(* OnChangeRejection)(uint16_t aRejectionStatusCode, uint64_t aVersion, void *aContext)

受保護的屬性

mSchemaEngine

const TraitSchemaEngine * mSchemaEngine

公開函式

清除版本

void ClearVersion(
  void
)

GetSchemaEngine

const TraitSchemaEngine * GetSchemaEngine(
  void
) const 

取得用戶端用戶端

virtual SubscriptionClient * GetSubscriptionClient()

GetUpdateEncoder

virtual UpdateEncoder * GetUpdateEncoder()

取得版本

uint64_t GetVersion(
  void
) const 

擷取這個接收器中的資料目前版本。

處理未知節控點

WEAVE_ERROR HandleUnknownLeafHandle(
  void
)

資料接收器的便利功能可處理未知的分葉控點,而系統層級容錯的結構定義與 TDM_DISABLE_STRICT_SCHEMA_COMPILANCE 的定義不符。

是資料資料接收器

virtual bool IsUpdatableDataSink(
  void
)

新版

virtual bool IsVersionNewer(
  DataVersion & aVersion
)

有效版本

bool IsVersionValid(
  void
) const 

傳回一個布林值,指出該版本是否有效。

OnEvent

virtual WEAVE_ERROR OnEvent(
  uint16_t aType,
  void *aInEventParam
)

設定用戶端用戶端

virtual WEAVE_ERROR SetSubscriptionClient(
  SubscriptionClient *apSubClient
)

SetUpdateEncoder

virtual WEAVE_ERROR SetUpdateEncoder(
  UpdateEncoder *apEncoder
)

儲存資料元素

WEAVE_ERROR StoreDataElement(
  PropertyPathHandle aHandle,
  TLV::TLVReader & aReader,
  uint8_t aFlags,
  OnChangeRejection aFunc,
  void *aContext,
  TraitDataHandle aDatahandle
)

這個讀取器會指向資料元素,且該物件會對應至與此物件繫結的結構定義,此方法會處理該資料,並對下方的所有分葉項目叫用下方的 SetLeafData 呼叫。

也可以傳送變更拒絕函式。如果接收器選擇基於任何原因拒絕此資料,也可叫用變更拒絕函式。

詳細資料
傳回值
WEAVE_NO_ERROR
成功。
other
寫入資料時發生錯誤。

TraitDataSink

 TraitDataSink(
  const TraitSchemaEngine *aEngine
)

~TraitDataSink

virtual  ~TraitDataSink()

受保護的函式

取得最後通知通知版本

uint64_t GetLastNotifyVersion(
  void
) const 

拒絕變更

void RejectChange(
  uint16_t aRejectionStatusCode
)

設定資料

virtual WEAVE_ERROR SetData(
  PropertyPathHandle aHandle,
  nl::Weave::TLV::TLVReader & aReader,
  bool aIsNull
) __OVERRIDE

為節點指定路徑控點、TLV 讀取器,以及是否接收空值類型指示,設定要為呼叫者設定的資料。

TDM 只會呼叫空值、選用、臨時或分葉的處理常式。如果 aHandler 是非分葉節點且為空值,TDM 就不會呼叫其子項的 SetData。

詳細資料
參數
[in] aHandle
有問題的 PropertyPathHandling。
[in,out] aReader
要讀取的 TLV 閱讀器。
[out] aIsNull
aHandler 是否為空值?
傳回值
WEAVE_NO_ERROR
成功。
other
無法讀取讀取者的資料。

設定最後通知版本

void SetLastNotifyVersion(
  uint64_t version
)

SetLeafData

virtual WEAVE_ERROR SetLeafData(
  PropertyPathHandle aLeafHandle,
  nl::Weave::TLV::TLVReader & aReader
) __OVERRIDE=0

由於分葉節點和 TLV 讀取者的路徑控點,請在呼叫者中設定分葉資料。

詳細資料
傳回值
WEAVE_NO_ERROR
成功。
other
無法讀取讀取者的資料。

Set 版本

void SetVersion(
  uint64_t version
)