nl:: Weave:: Profiles:: DataManagement_Current:: TraitDataSource
這是抽象類別。
摘要
繼承
沿用自: nl::Weave::Profiles::DataManagement_Current::TraitSchemaEngine::IGetDataDelegate直接已知的子類別: nl::Weave::DeviceLayer::Internal::DeviceIdentityTraitDataSource
建構函式和解構函式 |
|
---|---|
TraitDataSource(const TraitSchemaEngine *aEngine)
|
|
~TraitDataSource()
|
公開類型 |
|
---|---|
EventType
|
列舉 |
公開屬性 |
|
---|---|
mRootIsDirty
|
bool
|
受保護的屬性 |
|
---|---|
mManagedVersion
|
bool
|
mSchemaEngine
|
const TraitSchemaEngine *
|
公開函式 |
|
---|---|
ClearRootDirty(void)
|
void
|
GetSchemaEngine(void) const
|
const TraitSchemaEngine *
|
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
公開屬性
mRootIsDirty
bool mRootIsDirty
受保護的屬性
mManagedVersion
bool mManagedVersion
mSchemaEngine
const TraitSchemaEngine * mSchemaEngine
公開函式
ClearRootDirty
void ClearRootDirty( void )
GetSchemaEngine
const TraitSchemaEngine * GetSchemaEngine( void ) const
GetVersion
uint64_t GetVersion( void )
IsRootDirty
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_UnsupportedMessage 的狀態報告。
OnCustomCommand
virtual void OnCustomCommand( Command *aCommand, const nl::Weave::WeaveMessageInfo *aMsgInfo, nl::Weave::PacketBuffer *aPayload, nl::Weave::TLV::TLVReader & aArgumentReader )
自訂指令的處理常式。
此為虛擬方法。如未覆寫,預設行為是傳回狀態碼為 Common::kStatus_UnsupportedMessage 的狀態報告。
OnEvent
virtual WEAVE_ERROR OnEvent( uint16_t aType, void *aInEventParam )
ReadData
WEAVE_ERROR ReadData( PropertyPathHandle aHandle, uint64_t aTagToWrite, TLV::TLVWriter & aWriter )
SetDirty
void SetDirty( PropertyPathHandle aPropertyHandle )
SetRootDirty
void SetRootDirty( void )
SetVersion
void SetVersion( uint64_t version )
TraitDataSource
TraitDataSource( const TraitSchemaEngine *aEngine )
解鎖
WEAVE_ERROR Unlock( void )
~TraitDataSource
virtual ~TraitDataSource()
受保護的函式
GetData
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。
詳細資料 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
參數 |
|
||||||||||
傳回值 |
|
GetLeafData
virtual WEAVE_ERROR GetLeafData( PropertyPathHandle aLeafHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter ) __OVERRIDE=0
IncrementVersion
void IncrementVersion( void )