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

nl::Weave::Profiles::DataManagement_Current::TraitDataSource

此為抽象類別。

總結

繼承

沿用來源: nl::Weave::Profiles::DataManagement_Current::TraitSchemaEngine::IGetDataDelegate
Direct 已知子類別: nl::Weave::DeviceLayer::Internal::DeviceIdentityTraitDataSource

建構函式和解構程式

TraitDataSource(const TraitSchemaEngine *aEngine)
~TraitDataSource()

公開類型

EventType 列舉

公開屬性

mRootIsDirty
bool

受保護的屬性

mManagedVersion
bool
mSchemaEngine

公開函式

ClearRootDirty(void)
void
GetSchemaEngine(void) const
GetVersion(void)
uint64_t
IsRootDirty(void) const
bool
Lock(void)
OnCustomCommand(Command *aCommand, const nl::Weave::WeaveMessageInfo *aMsgInfo, nl::Weave::PacketBuffer *aPayload, const uint64_t & aCommandType, const bool aIsExpiryTimeValid, const int64_t & aExpiryTimeMicroSecond, const bool aIsMustBeVersionValid, const uint64_t & aMustBeVersion, nl::Weave::TLV::TLVReader & aArgumentReader)
virtual void
自訂指令的處理常式。
OnCustomCommand(Command *aCommand, const nl::Weave::WeaveMessageInfo *aMsgInfo, nl::Weave::PacketBuffer *aPayload, nl::Weave::TLV::TLVReader & aArgumentReader)
virtual void
自訂指令的處理常式。
OnEvent(uint16_t aType, void *aInEventParam)
virtual WEAVE_ERROR
ReadData(PropertyPathHandle aHandle, uint64_t aTagToWrite, TLV::TLVWriter & aWriter)
SetDirty(PropertyPathHandle aPropertyHandle)
void
SetRootDirty(void)
void
SetVersion(uint64_t version)
void
Unlock(void)

受保護的函式

GetData(PropertyPathHandle aHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter, bool & aIsNull, bool & aIsPresent) __OVERRIDE
virtual WEAVE_ERROR
為節點指定路徑控點、TLV 寫入器和表示值是否為空值的布林值,從建構通知的特性來源取得資料。
GetLeafData(PropertyPathHandle aLeafHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter) __OVERRIDE=0
virtual WEAVE_ERROR
由於分葉節點和 TLV 寫入者的路徑路徑受到呼叫,因此請呼叫接收者的資料。
IncrementVersion(void)
void

公開類型

EventType

 EventType

公開屬性

巴西

bool mRootIsDirty

受保護的屬性

受管理版本

bool mManagedVersion

mSchemaEngine

const TraitSchemaEngine * mSchemaEngine

公開函式

ClearRootDirty

void ClearRootDirty(
  void
)

GetSchemaEngine

const TraitSchemaEngine * GetSchemaEngine(
  void
) const 

取得版本

uint64_t GetVersion(
  void
)

是根

bool IsRootDirty(
  void
) const 

鎖定

WEAVE_ERROR Lock(
  void
)

OnCustomCommand

virtual void OnCustomCommand(
  Command *aCommand,
  const nl::Weave::WeaveMessageInfo *aMsgInfo,
  nl::Weave::PacketBuffer *aPayload,
  const uint64_t & aCommandType,
  const bool aIsExpiryTimeValid,
  const int64_t & aExpiryTimeMicroSecond,
  const bool aIsMustBeVersionValid,
  const uint64_t & aMustBeVersion,
  nl::Weave::TLV::TLVReader & aArgumentReader
)

自訂指令的處理常式。

這是虛擬方法。如果沒有覆寫,預設行為就會傳回狀態碼為 Common::kStatus_SupportedMessage 的狀態報告。

OnCustomCommand

virtual void OnCustomCommand(
  Command *aCommand,
  const nl::Weave::WeaveMessageInfo *aMsgInfo,
  nl::Weave::PacketBuffer *aPayload,
  nl::Weave::TLV::TLVReader & aArgumentReader
)

自訂指令的處理常式。

這是虛擬方法。如果沒有覆寫,預設行為就會傳回狀態碼為 Common::kStatus_SupportedMessage 的狀態報告。

OnEvent

virtual WEAVE_ERROR OnEvent(
  uint16_t aType,
  void *aInEventParam
)

讀取資料

WEAVE_ERROR ReadData(
  PropertyPathHandle aHandle,
  uint64_t aTagToWrite,
  TLV::TLVWriter & aWriter
)

設定

void SetDirty(
  PropertyPathHandle aPropertyHandle
)

設定根層級

void SetRootDirty(
  void
)

Set 版本

void SetVersion(
  uint64_t version
)

TraitDataSource

 TraitDataSource(
  const TraitSchemaEngine *aEngine
)

解除鎖定

WEAVE_ERROR Unlock(
  void
)

~TraitDataSource

virtual  ~TraitDataSource()

受保護的函式

取得資料

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

為節點指定路徑控點、TLV 寫入器和表示值是否為空值的布林值,從建構通知的特性來源取得資料。

如果路徑控點不是分葉節點,TDM 會寫入寫入值給寫入器 (例如開啟容器、讓結構失效等)。如果非分葉節點為空值或不存在,TDM 就不會呼叫子項的 GetData。

只有可空值、選用、暫時或分葉的控點才會呼叫此函式。預期任何已啟用控點的控點,將實作適當的邏輯來填入 aIsNull 和 aIspresent。

詳細資料
參數
[in] aHandle
有問題的 PropertyPathHandling。
[in] aTagToWrite
要為 a 把手撰寫的代碼。
[in,out] aWriter
寫入 TLV 元素的寫入者。
[out] aIsNull
aHandler 是否為空值?如果是的話,TDM 會寫入空值元素。如果 AHandling 不是分葉,TDM 就會略過子子的子項。
[out] aIsPresent
有 A 把手嗎?如果「否」且 a 把控點不是分葉,TDM 就會略過路徑及其子項。
傳回值
WEAVE_NO_ERROR
成功。
other
無法擷取資料並寫入寫入者。

GetLeafData

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

由於分葉節點和 TLV 寫入者的路徑路徑受到呼叫,因此請呼叫接收者的資料。

詳細資料
傳回值
WEAVE_NO_ERROR
成功。
other
無法擷取資料並寫入寫入者。

累加版

void IncrementVersion(
  void
)