nl:: Weave:: Profiles:: DataManagement_Current:: TraitUpdatableDataSink
Podsumowanie
Dziedziczenie
Dziedziczy z:nl::Weave::Profiles::DataManagement_Current::TraitDataSink
nl::Weave::Profiles::DataManagement_Current::TraitSchemaEngine::IGetDataDelegate
Konstruktorzy i niszczyciele |
|
---|---|
TraitUpdatableDataSink(const TraitSchemaEngine *aEngine)
|
Funkcje publiczne |
|
---|---|
ClearUpdated(SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle)
|
|
GetData(PropertyPathHandle aHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter, bool & aIsNull, bool & aIsPresent) __OVERRIDE
|
virtual WEAVE_ERROR
Biorąc pod uwagę uchwyt ścieżki do węzła, zapis TLV i wartości logiczne wskazujące, czy wartość jest null, czy nie, pobierz dane ze źródła cechy, które wygeneruje powiadomienie.
|
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)
|
Deklaruje, że podana metoda PropertyPathHandle zawiera lokalne zmiany.
|
Unlock(SubscriptionClient *apSubClient)
|
void
|
Funkcje publiczne
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
Biorąc pod uwagę uchwyt ścieżki do węzła, zapis TLV i wartości logiczne wskazujące, czy wartość jest null, czy nie, pobierz dane ze źródła cechy, które wygeneruje powiadomienie.
Jeśli uchwyt ścieżki nie jest węzłem liścia, TDM zajmie się zapisywaniem wartości do zapisu (np. otwieranie kontenerów, usuwanie wartości struct itp.). Jeśli węzeł inny niż liść ma wartość null lub nie ma go, TDM nie wywoła GetData dla swoich elementów podrzędnych.
Ta funkcja będzie wywoływana tylko w przypadku nicków, które mogą mieć wartość null, być opcjonalne, efemeryczne lub liście. Można się spodziewać, że wszystkie cechy z nickami, w których te opcje są włączone, będą implementowały odpowiednie logiki do wypełniania pól aIsNull i aIspresent.
Szczegóły | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||||
Zwracane wartości |
|
GetSubscriptionClient
virtual SubscriptionClient * GetSubscriptionClient() __OVERRIDE
GetUpdateEncoder
virtual UpdateEncoder * GetUpdateEncoder() __OVERRIDE
IsUpdatableDataSink
virtual bool IsUpdatableDataSink( void ) __OVERRIDE
Zamek
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 )
Deklaruje, że podana metoda PropertyPathHandle zawiera lokalne zmiany.
Do momentu przetworzenia żądania aktualizacji NotificationEngine nie zastąpi nicku ani jego elementów podrzędnych. W wyniku operacji aktualizacji aplikacja będzie otrzymywać wywołania zwrotne kEvent_OnUpdateComplete dla tego uchwytu lub jednego z jego elementów nadrzędnych. Modyfikacja może być warunkowa lub nie. Warunkowe aktualizacje danych zostaną utracone, jeśli lokalna kopia instancji cechy nie jest już zsynchronizowana z wydawcą, ponieważ została zmutowana przez wydawcę lub innego klienta. Mutacje warunkowe i bezwarunkowe nie są obsługiwane jednocześnie w tej samej instancji cechy.
Szczegóły | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||||||
Zwracane wartości |
|