nl:: Weave:: Profiles:: DataManagement_Current:: TraitUpdatableDataSink
Ringkasan
Inheritance
Mewarisi dari:nl::Weave::Profiles::DataManagement_Current::TraitDataSink
nl::Weave::Profiles::DataManagement_Current::TraitSchemaEngine::IGetDataDelegate
Konstruktor dan Destruktor |
|
---|---|
TraitUpdatableDataSink(const TraitSchemaEngine *aEngine)
|
Fungsi publik |
|
---|---|
ClearUpdated(SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle)
|
|
GetData(PropertyPathHandle aHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter, bool & aIsNull, bool & aIsPresent) __OVERRIDE
|
virtual WEAVE_ERROR
Dengan mempertimbangkan handle jalur ke node, penulis TLV, dan boolean yang menunjukkan apakah nilai null atau tidak ada, dapatkan data dari sumber karakteristik yang akan membuat notifikasi.
|
GetSubscriptionClient() __OVERRIDE
|
virtual SubscriptionClient *
|
GetUpdateEncoder() __OVERRIDE
|
virtual UpdateEncoder *
|
IsUpdatableDataSink(void) __OVERRIDE
|
virtual bool
|
Lock(SubscriptionClient *apSubClient)
|
void
|
ReadData(TraitDataHandle aTraitDataHandle, PropertyPathHandle aHandle, uint64_t aTagToWrite, TLV::TLVWriter & aWriter, PropertyPathHandle & aPropertyPathHandleOfDictItemToStartFrom)
|
|
SetSubscriptionClient(SubscriptionClient *apSubClient) __OVERRIDE
|
virtual WEAVE_ERROR
|
SetUpdateEncoder(UpdateEncoder *apEncoder) __OVERRIDE
|
virtual WEAVE_ERROR
|
SetUpdated(SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle, bool aIsConditional)
|
Mendeklarasikan bahwa PropertyPathHandle yang diberikan memiliki modifikasi lokal.
|
Unlock(SubscriptionClient *apSubClient)
|
void
|
Fungsi publik
ClearUpdated
WEAVE_ERROR ClearUpdated( SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle )
GetData
virtual WEAVE_ERROR GetData( PropertyPathHandle aHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter, bool & aIsNull, bool & aIsPresent ) __OVERRIDE
Dengan handle jalur ke node, penulis TLV, dan boolean yang menunjukkan apakah nilai null atau tidak ada, dapatkan data dari sumber karakteristik yang akan membuat notifikasi.
Jika handle jalur bukan node daun, TDM akan menangani penulisan nilai ke penulis (seperti membuka container, membatalkan struct, dll.). Jika node non-leaf null atau tidak ada, TDM tidak akan memanggil GetData untuk turunannya.
Fungsi ini hanya akan dipanggil untuk nama sebutan channel yang bersifat nullable, opsional, efemeral, atau daun. Diharapkan setiap karakteristik dengan nama sebutan channel yang mengaktifkan opsi tersebut akan menerapkan logika yang sesuai untuk mengisi aIsNull dan aIsPresent.
Detail | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||
Nilai yang Ditampilkan |
|
GetSubscriptionClient
virtual SubscriptionClient * GetSubscriptionClient() __OVERRIDE
GetUpdateEncoder
virtual UpdateEncoder * GetUpdateEncoder() __OVERRIDE
IsUpdatableDataSink
virtual bool IsUpdatableDataSink( void ) __OVERRIDE
Kunci
void Lock( SubscriptionClient *apSubClient )
ReadData
WEAVE_ERROR ReadData( TraitDataHandle aTraitDataHandle, PropertyPathHandle aHandle, uint64_t aTagToWrite, TLV::TLVWriter & aWriter, PropertyPathHandle & aPropertyPathHandleOfDictItemToStartFrom )
SetSubscriptionClient
virtual WEAVE_ERROR SetSubscriptionClient( SubscriptionClient *apSubClient ) __OVERRIDE
SetUpdateEncoder
virtual WEAVE_ERROR SetUpdateEncoder( UpdateEncoder *apEncoder ) __OVERRIDE
SetUpdated
WEAVE_ERROR SetUpdated( SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle, bool aIsConditional )
Mendeklarasikan bahwa PropertyPathHandle yang diberikan memiliki modifikasi lokal.
NotificationEngine tidak akan mengganti handle dan turunannya hingga permintaan update diproses. Aplikasi akan menerima callback kEvent_OnUpdateComplete untuk handle ini atau untuk salah satu ancestor-nya dengan hasil operasi update. Perubahan dapat bersifat bersyarat atau tidak. Update data bersyarat akan hilang jika salinan lokal instance karakteristik tidak lagi disinkronkan dengan penayang karena telah diubah oleh penayang itu sendiri atau oleh klien lain. Mutasi bersyarat dan tanpa syarat tidak didukung secara bersamaan dalam instance karakteristik yang sama.
Detail | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||||
Nilai yang Ditampilkan |
|