nl:: Weave:: Profiles:: DataManagement_Current:: TraitUpdatableDataSink
Resumo
Herança
Herda de:nl::Weave::Profiles::DataManagement_Current::TraitDataSink
nl::Weave::Profiles::DataManagement_Current::TraitSchemaEngine::IGetDataDelegate
Construtores e destruidores |
|
---|---|
TraitUpdatableDataSink(const TraitSchemaEngine *aEngine)
|
Funções públicas |
|
---|---|
ClearUpdated(SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle)
|
|
GetData(PropertyPathHandle aHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter, bool & aIsNull, bool & aIsPresent) __OVERRIDE
|
virtual WEAVE_ERROR
Com um identificador de caminho para um nó, um gravador TLV e booleanos que indicam se o valor é nulo ou não está presente, extraia os dados da origem da característica que vai criar uma notificação.
|
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)
|
Declara que o PropertyPathHandle fornecido tem modificações locais.
|
Unlock(SubscriptionClient *apSubClient)
|
void
|
Funções públicas
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
Com um identificador de caminho para um nó, um gravador TLV e booleanos que indicam se o valor é nulo ou não está presente, extraia os dados da origem da característica que vai criar uma notificação.
Se o identificador do caminho não for um nó de folha, o TDM processará os valores de gravação no gravador (como abrir contêineres, anular o struct etc.). Se um nó que não for uma folha for nulo ou ausente, o TDM não chamará GetData para os filhos.
Essa função só será chamada para identificadores anuláveis, opcionais, efêmeros ou folhas. Espera-se que as características com identificadores que tenham essas opções ativadas implementarão a lógica apropriada para preencher aIsNull e aIsPresent.
Detalhes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||
Valores de retorno |
|
GetSubscriptionClient
virtual SubscriptionClient * GetSubscriptionClient() __OVERRIDE
GetUpdateEncoder
virtual UpdateEncoder * GetUpdateEncoder() __OVERRIDE
IsUpdatableDataSink
virtual bool IsUpdatableDataSink( void ) __OVERRIDE
Bloquear
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 )
Declara que o PropertyPathHandle fornecido tem modificações locais.
O NotificationEngine não modificará o identificador e os descendentes até que a solicitação de atualização seja processada. O aplicativo receberá callbacks kEvent_OnUpdateComplete para esse identificador ou para um de seus ancestrais com o resultado da operação de atualização. A modificação pode ser condicional ou não. As atualizações de dados condicionais serão perdidas se a cópia local da instância de característica não estiver mais sincronizada com a do editor porque foi modificada pelo próprio editor ou por outro cliente. Mutações condicionais e incondicionais não são aceitas ao mesmo tempo na mesma instância de característica.
Detalhes | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||||
Valores de retorno |
|