nl:: Weave:: Profiles:: DataManagement_Current
Esse namespace inclui todas as interfaces do Weave para o perfil de gerenciamento de dados (WDM) do Weave que são compatíveis atualmente para uso em produção.
Resumo
Typedefs |
|
---|---|
CommandFlags
|
typedef |
DataVersion
|
typedefuint64_t
|
EventProcessor
|
typedefvoid *
|
EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData)
|
typedef Uma função que fornece o elemento eventData para o subsistema de registro de eventos. |
FetchExternalEventsFunct)(EventLoadOutContext *aContext)
|
typedef Um protótipo de função para callbacks da plataforma que buscam dados de eventos. |
GenericTraitSinkCatalog
|
typedef |
GenericTraitSourceCatalog
|
typedef |
ImportanceType
|
typedef A importância da entrada de registro. |
IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext)
|
typedefvoid(*
Iterador do identificador de traços. |
LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer)
|
typedef |
NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID)
|
typedefvoid(*
Um protótipo de função para um callback invocado quando eventos externos são entregues ao assinante remoto. |
NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)
|
typedefvoid(*
Um protótipo de função para um callback invocado quando eventos externos são despejados dos buffers. |
PropertyDictionaryKey
|
typedefuint16_t
|
PropertyPathHandle
|
typedefuint32_t
Um PropertyPathHandle é um hash numérico exclusivo de 32 bits de um caminho WDM relativo à raiz de uma instância de característica. |
PropertySchemaHandle
|
typedefuint16_t
|
SchemaVersion
|
typedefuint16_t
|
SingleResourceSinkTraitCatalog
|
typedef |
SingleResourceSourceTraitCatalog
|
typedef |
TimestampType
|
typedef A validade e o tipo de carimbo de data/hora incluídos em EventOptions. |
TraitDataHandle
|
typedefuint16_t
|
duration_t
|
nl::Weave::Profiles::DataManagement_Current::duration_tuint32_t
Tipo usado para descrever a duração em milissegundos. |
event_id_t
|
nl::Weave::Profiles::DataManagement_Current::event_id_tuint32_t
O tipo de ID do evento. |
timestamp_t
|
nl::Weave::Profiles::DataManagement_Current::timestamp_tuint32_t
Tipo usado para descrever o carimbo de data/hora em milissegundos. |
utc_timestamp_t
|
nl::Weave::Profiles::DataManagement_Current::utc_timestamp_tuint64_t
Tipo usado para descrever o carimbo de data/hora UTC em milissegundos. |
Variáveis |
|
---|---|
sInstance
|
|
sLogFileName = "topazlog"[]
|
char
|
Funções |
|
---|---|
BdxErrorHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, WEAVE_ERROR aErrorCode)
|
void
|
BdxGetBlockHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, uint64_t *aLength, uint8_t **aDataBlock, bool *aIsLastBlock)
|
void
|
BdxRejectHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aReport)
|
void
|
BdxSendAcceptHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::BulkDataTransfer::SendAccept *aSendAcceptMsg)
|
|
BdxXferDoneHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer)
|
void
|
BdxXferErrorHandler(nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aXferError)
|
void
|
CreatePropertyPathHandle(PropertySchemaHandle aPropertyPathSchemaId, PropertyDictionaryKey aPropertyPathDictionaryKey)
|
|
EventWriterTLVCopy(TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
|
Uma função auxiliar que converte um elemento eventdata já serializado no buffer de evento.
|
GetPropertyDictionaryKey(PropertyPathHandle aHandle)
|
PropertyDictionaryKey
|
GetPropertySchemaHandle(PropertyPathHandle aHandle)
|
PropertySchemaHandle
|
IsNullPropertyPathHandle(PropertyPathHandle aHandle)
|
bool
|
IsRootPropertyPathHandle(PropertyPathHandle aHandle)
|
bool
|
IsVersionNewer(const DataVersion & aVersion, const DataVersion & aReference)
|
bool
Essa é uma implementação otimizada do algoritmo para comparar versões.
|
IsVersionNewerOrEqual(const DataVersion & aVersion, const DataVersion & aReference)
|
bool
|
Locate(TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog)
|
Função de utilitário que encontra um TraitUpdatableDataSink em um catálogo TraitDataSink.
|
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData)
|
Registre um evento em um formulário pré-serializado.
|
LogEvent(const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData, const EventOptions *inOptions)
|
Registra um evento em um formulário pré-serializado, com opções adicionais.
|
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData)
|
Registre um evento usando um callback.
|
LogEvent(const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions)
|
Registra um evento usando um callback, com opções.
|
LogFreeform(ImportanceType inImportance, const char *inFormat, ...)
|
O LogFreeform emite uma string de formato livre para o fluxo de eventos padrão.
|
LookForElementWithTag(const nl::Weave::TLV::TLVReader & aSrcReader, const uint64_t aTagInApiForm, nl::Weave::TLV::TLVReader *apDstReader)
|
|
PlainTextWriter(TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
|
Uma função auxiliar para emitir um texto de formato livre como um evento de depuração.
|
PlainTextWriter(::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData)
|
Uma função auxiliar para emitir um texto de formato livre como um evento de depuração.
|
operator!=(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
|
bool
|
operator==(const ResourceIdentifier & lhs, const ResourceIdentifier & rhs)
|
bool
|
União |
|
---|---|
nl:: |
A união que fornece um sistema de conjunto de aplicativos ou carimbo de data/hora UTC. |
Enumerações
a 100
@100
Tags para o kNestDebug_StringLogEntryEvent.
Propriedades | |
---|---|
kTag_Message
|
String com a mensagem de depuração real. |
kTag_Region
|
Um não assinado de 32 bits que indica a região do registro, ou seja, o módulo ao qual a mensagem de registro pertence. |
@101
@101
Tags para o kNestDebug_TokenizedLogEntryEvent.
Propriedades | |
---|---|
kTag_Args
|
Uma matriz de argumentos a serem enviados junto com a mensagem do token. |
kTag_Token
|
Um valor não assinado de 32 bits correspondente ao token. |
@102
@102
Tags para eventos persistentes.
@104
@104
Os tipos de mensagem do perfil WDM.
Esses valores são destacados na especificação de gerenciamento de dados.
@105
@105
Códigos de status específicos do WDM.
@147
@147
@95
@95
Tags de configurações do Logging.
Propriedades | |
---|---|
kTag_CurrentImportance
|
Importância atual de geração de registros, o valor é do tipo ImportanceType. |
kTag_ImportanceExpiration
|
Horário, em segundos UTC, em que as configurações atuais de geração de registros elevadas são revertidas para os valores padrão. |
kTag_LoggingDestination
|
Um URL que indica o destino do upload do registro. |
kTag_MaximumLogUploadInterval
|
Duração máxima, em segundos, entre as tentativas de upload de registro acionadas automaticamente. |
kTag_MinimumLogUploadInterval
|
Duração mínima, em segundos, entre as tentativas de upload de registros acionadas automaticamente. |
kTag_TraitLoggingImportance
|
Uma matriz opcional que mapeia seletivamente os perfis escolhidos para os níveis de registro mais altos. Cada elemento na matriz tem um formato (perfil,caminho,geração de registros) para elevar seletivamente o registro de um subconjunto do sistema. A prioridade de geração de registros de perfil elevado só tem importância quando a prioridade de geração de registros excede a de currentImportance e está sujeita ao mesmo tempo de expiração que a currentImportance. |
@96
@96
Tags para recursos de geração de registros.
Propriedades | |
---|---|
kTag_LogBufferingCapacity
|
Um número inteiro não assinado de 32 bits que descreve a capacidade de armazenamento em buffer de registros em KB. |
kTag_LoggingVolume
|
Um número inteiro não assinado de 32 bits que descreve o volume de registro esperado em kB/dia. |
kTag_SupportedLogTransports
|
Uma matriz de mecanismos de transporte de registros compatíveis. |
kTag_SupportsNonVolatileStorage
|
Um booleano que indica se o dispositivo é compatível com armazenamento de registros não voláteis. |
kTag_SupportsPerTraitVerbosity
|
É um booleano que indica se o dispositivo é compatível com as configurações de nível de detalhes por característica. |
kTag_SupportsStreaming
|
Um booleano que indica se o dispositivo é compatível com streaming de registros. |
@97
@97
Tags para metadados de evento.
Para conferir a semântica completa dos valores de tag, consulte a especificação de design de eventos.
Propriedades | |
---|---|
kTag_EventData
|
Opcional. Dados do evento em si. Se estiver vazio, o padrão será uma estrutura vazia. |
kTag_EventDeltaSystemTime
|
Tag interna do WDM, diferença de horário em relação ao evento anterior na codificação. |
kTag_EventDeltaUTCTime
|
Tag interna do WDM, diferença de horário em relação ao evento anterior na codificação. |
kTag_EventID
|
Número de sequência do evento, expresso como uma quantidade não assinada de 64 bits. Precisa ser sequencial. Os saltos na sequência indicam lacunas de eventos. |
kTag_EventImportance
|
A importância do evento. |
kTag_EventResourceID
|
Opcional. O valor é o ID do recurso a que o evento pertence. Quando omitido, o valor é o mesmo que o valor de kTag_EventSource |
kTag_EventSource
|
ID do nó do dispositivo que gerou o evento. |
kTag_EventSystemTimestamp
|
Opcional. Carimbo de data/hora do sistema do evento em milissegundos. |
kTag_EventTraitInstanceID
|
Opcional, a instância da característica que gerou o evento. |
kTag_EventTraitProfileID
|
Obrigatório. Número inteiro não assinado de 32 bits que é igual ao ProfileID da característica. |
kTag_EventType
|
Obrigatório. Número inteiro não assinado de 16 bits que é igual ao wdl.event.id para esse tipo de evento. |
kTag_EventUTCTimestamp
|
Opcional. Carimbo de data/hora em UTC do evento em milissegundos. |
kTag_ExternalEventStructure
|
Tag interna para eventos externos. Nunca transmitidos pela rede. Nunca devem ser usados fora da biblioteca do Weave. |
kTag_RelatedEventID
|
Opcional. ID de um evento a que este evento está relacionado. Se omitido, o valor é igual ao valor de kTag_EventID. |
kTag_RelatedEventImportance
|
Opcional. A importância do evento relacionado. Se omitido, o valor será igual ao valor de kTag_EventImportance. |
@98
@98
Definições de perfil para a característica de depuração.
@99
@99
Tipos de evento para o atributo Nest Debug.
Propriedades | |
---|---|
kNestDebug_StringLogEntryEvent
|
Um evento para a mensagem de depuração da string de formato livre. |
kNestDebug_TokenizedHeaderEntryEvent
|
Um evento para transmitir as informações de cabeçalho tokenizadas. |
kNestDebug_TokenizedLogEntryEvent
|
Um evento para a mensagem de depuração tokenizada. |
CommandFlags
CommandFlags
Propriedades | |
---|---|
kCommandFlag_ActionTimeValid
|
Defina quando o tempo de ação é válido. |
kCommandFlag_ExpiryTimeValid
|
Defina quando o prazo de validade será válido. |
kCommandFlag_InitiationTimeValid
|
Definido quando o horário de inicialização é válido. |
kCommandFlag_IsOneWay
|
Defina quando o comando é unidirecional. |
kCommandFlag_MustBeVersionValid
|
Defina quando o campo de versão é válido. |
ImportanceType
ImportanceType
A importância da entrada de registro.
A importância é usada como uma forma de filtrar eventos antes que eles sejam realmente emitidos no registro. Depois que o evento está no registro, não tomamos nenhuma outra medida para eliminá-lo do registro. O nível de importância serve para priorizar o armazenamento de eventos. Se um evento de alta importância for adicionado a um buffer completo, os eventos serão descartados em ordem de importância (e idade) para acomodá-lo. Assim, os níveis de importância têm apenas valor relativo. Se um sistema estiver usando apenas um nível de importância, os eventos serão descartados somente em ordem de idade, como um buffer de anel.
Propriedades | |
---|---|
Debug
|
A importância da depuração indica entradas de registro de interesse para os desenvolvedores do sistema e é usada principalmente na fase de desenvolvimento. Os registros de importância de depuração não são contabilizados na largura de banda ou nos orçamentos de energia dos dispositivos restritos. Por isso, eles só podem ser usados por um período limitado nos sistemas de produção. |
Info
|
A importância das informações indica entradas de registro que fornecem mais insights e diagnósticos ao sistema em execução. O nível de registro de informações pode ser usado por um longo período em um sistema de produção ou como o nível de registro padrão em um teste de campo. Nos dispositivos restritos, as entradas registradas com o nível de informações precisam ser consideradas na largura de banda e na capacidade de memória, mas não na capacidade de energia. |
Production
|
A importância da produção indica as entradas de registro usadas no monitoramento e na manutenção contínuos do ecossistema Nest. Em dispositivos restritos, as entradas registradas com importância de produção precisam ser consideradas no orçamento de energia e memória, já que é esperado que elas sejam sempre registradas e descarregadas do dispositivo. |
ProductionCritical
|
A importância crítica para a produção indica eventos cuja perda afetaria diretamente os recursos voltados para o cliente. Os aplicativos podem usar a perda de eventos críticos para a produção para indicar falhas no sistema. Em dispositivos restritos, as entradas registradas com importância de produção crítica precisam ser consideradas no orçamento de energia e memória, já que é esperado que elas sejam sempre registradas e descarregadas do dispositivo. |
LoggingManagementStates
LoggingManagementStates
Propriedades | |
---|---|
kLoggingManagementState_Holdoff
|
O descarregamento de log foi concluído. não reiniciamos o registro até que a espera expire. |
kLoggingManagementState_Idle
|
Não há descarregamento de registros em andamento. O descarregamento de registros pode começar sem restrições. |
kLoggingManagementState_InProgress
|
Descarregamento de log em andamento. |
kLoggingManagementState_Shutdown
|
Incapaz de executar nenhuma operação de geração de registros. |
Typedefs
CommandFlags
enum nl::Weave::Profiles::DataManagement_Current::CommandFlags CommandFlags
DataVersion
uint64_t DataVersion
EventProcessor
void * EventProcessor
EventWriterFunct
WEAVE_ERROR(* EventWriterFunct)(nl::Weave::TLV::TLVWriter &ioWriter, uint8_t inDataTag, void *appData)
Uma função que fornece o elemento eventData para o subsistema de registro de eventos.
As funções desse tipo devem fornecer o elemento eventData para o subsistema de geração de registros de eventos. As funções desse tipo são chamadas depois que o subsistema do evento gera todos os metadados necessários. A função é chamada com um objeto nl::Weave::TLV::TLVWriter que vai emitir um único elemento TLV marcado como kTag_EventData. o valor desse elemento PRECISA ser uma estrutura que contenha os dados do evento. Os dados do evento precisam ser estruturados com tags de contexto.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Valores de retorno |
|
PlainTextWriter
EventWriterTLVCopy
FetchExternalEventsFunct
WEAVE_ERROR(* FetchExternalEventsFunct)(EventLoadOutContext *aContext)
Um protótipo de função para callbacks da plataforma que buscam dados de eventos.
Semelhante a FetchEventsSince, essa função de busca retorna todos os eventos de EventLoadOutContext.mStartingEventID por meio de ExternalEvents.mLastEventID.
O ponteiro de contexto é do tipo FetchExternalEventsContext. Isso inclui o EventLoadOutContext, com algumas variáveis auxiliares para o formato do TLV. Ela também inclui um ponteiro para o struct ExternalEvents criado no registro do callback. Especifica o intervalo de IDs de evento para o callback.
Ao retornar da função, EventLoadOutContext.mCurrentEventID deve refletir o primeiro ID de evento que não foi gravado com sucesso no buffer TLV. A plataforma precisa gravar o cabeçalho e os dados dos eventos no gravador do TLV no formato correto, especificado pelo protocolo EventLogging. A plataforma também precisa manter eventos e carimbos de data/hora exclusivos.
Todos os erros TLV precisam ser propagados para níveis mais altos. Por exemplo, a falta de espaço no buffer aciona uma mensagem enviada, seguida de outra chamada ao callback com o ID de evento restante.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Valores de retorno |
|
GenericTraitSinkCatalog
GenericTraitCatalogImpl< TraitDataSink > GenericTraitSinkCatalog
GenericTraitSourceCatalog
GenericTraitCatalogImpl< TraitDataSource > GenericTraitSourceCatalog
ImportanceType
enum nl::Weave::Profiles::DataManagement_Current::ImportanceType ImportanceType
A importância da entrada de registro.
A importância é usada como uma forma de filtrar eventos antes que eles sejam realmente emitidos no registro. Depois que o evento está no registro, não tomamos nenhuma outra medida para eliminá-lo do registro. O nível de importância serve para priorizar o armazenamento de eventos. Se um evento de alta importância for adicionado a um buffer completo, os eventos serão descartados em ordem de importância (e idade) para acomodá-lo. Assim, os níveis de importância têm apenas valor relativo. Se um sistema estiver usando apenas um nível de importância, os eventos serão descartados somente em ordem de idade, como um buffer de anel.
IteratorCallback
void(* IteratorCallback)(void *aTraitInstance, TraitDataHandle aHandle, void *aContext)
Iterador do identificador de traços.
LoggingBufferHandler
WEAVE_ERROR(* LoggingBufferHandler)(void *inAppState, PacketBuffer *inBuffer)
NotifyExternalEventsDeliveredFunct
void(* NotifyExternalEventsDeliveredFunct)(ExternalEvents *inEv, event_id_t inLastDeliveredEventID, uint64_t inRecipientNodeID)
Um protótipo de função para um callback invocado quando eventos externos são entregues ao assinante remoto.
Quando os eventos externos são entregues a um assinante remoto, o mecanismo fornece uma notificação ao provedor de eventos externo. O callback contém o evento do último ID que foi entregue e o ID do assinante que o recebeu.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
NotifyExternalEventsEvictedFunct
void(* NotifyExternalEventsEvictedFunct)(ExternalEvents *inEv)
Um protótipo de função para um callback invocado quando eventos externos são despejados dos buffers.
Quando o objeto de eventos externos é removido do buffer de mensagens de saída, o mecanismo envia uma notificação para o provedor de eventos externo. O callback contém o evento externo a ser removido.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
PropertyDictionaryKey
uint16_t PropertyDictionaryKey
PropertyPathHandle
uint32_t PropertyPathHandle
Um PropertyPathHandle é um hash numérico exclusivo de 32 bits de um caminho WDM relativo à raiz de uma instância de característica.
Ele tem duas partes:
- Um número menor de 16 bits que mapeia para a parte estática do esquema.
- Onde os 16 bits mais baixos se referem a um caminho dentro de um elemento de dicionário, há um número superior de 16 bits que representa a chave de dicionário associada a esse elemento. Se os 16 bits mais baixos se referirem a um elemento que não é de dicionário, os 16 bits superiores deverão ser 0.
Algumas características:
- Cada característica tem o próprio espaço do identificador do caminho da propriedade.
- Cada subcaminho do WDM exclusivo terá um PropertyPathHandle exclusivo semelhante.
- PropertyPathHandles são gerados automaticamente (por enquanto, feito manualmente) por um compilador de características da IDL e são representados como uma lista enumerante no arquivo de cabeçalho da característica correspondente.
- Com essa construção, a lógica do aplicativo nunca precisa lidar diretamente com caminhos WDM. Em vez disso, as interações deles com o WDM são realizadas exclusivamente por esses identificadores.
- Há dois valores reservados para identificadores de caminho com significados específicos:
- 0 indica 'NULL' manivela
- 1 indica um handle que aponta para a raiz da instância de característica.
PropertySchemaHandle
uint16_t PropertySchemaHandle
SchemaVersion
uint16_t SchemaVersion
SingleResourceSinkTraitCatalog
SingleResourceTraitCatalog< TraitDataSink > SingleResourceSinkTraitCatalog
SingleResourceSourceTraitCatalog
SingleResourceTraitCatalog< TraitDataSource > SingleResourceSourceTraitCatalog
TimestampType
enum nl::Weave::Profiles::DataManagement_Current::TimestampType TimestampType
A validade e o tipo de carimbo de data/hora incluídos em EventOptions.
TraitDataHandle
uint16_t TraitDataHandle
duration_t
uint32_t duration_t
Tipo usado para descrever a duração em milissegundos.
event_id_t
uint32_t event_id_t
O tipo de ID do evento.
timestamp_t
uint32_t timestamp_t
Tipo usado para descrever o carimbo de data/hora em milissegundos.
utc_timestamp_t
uint64_t utc_timestamp_t
Tipo usado para descrever o carimbo de data/hora UTC em milissegundos.
Variáveis
sInstance
LoggingManagement sInstance
sLogFileName
char sLogFileName[] = "topazlog"
Funções
BdxErrorHandler
void BdxErrorHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, WEAVE_ERROR aErrorCode )
BdxGetBlockHandler
void BdxGetBlockHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, uint64_t *aLength, uint8_t **aDataBlock, bool *aIsLastBlock )
BdxRejectHandler
void BdxRejectHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aReport )
BdxSendAcceptHandler
WEAVE_ERROR BdxSendAcceptHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::BulkDataTransfer::SendAccept *aSendAcceptMsg )
BdxXferDoneHandler
void BdxXferDoneHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer )
BdxXferErrorHandler
void BdxXferErrorHandler( nl::Weave::Profiles::BulkDataTransfer::BDXTransfer *aXfer, nl::Weave::Profiles::StatusReporting::StatusReport *aXferError )
CreatePropertyPathHandle
PropertyPathHandle CreatePropertyPathHandle( PropertySchemaHandle aPropertyPathSchemaId, PropertyDictionaryKey aPropertyPathDictionaryKey )
EventWriterTLVCopy
WEAVE_ERROR EventWriterTLVCopy( TLVWriter & ioWriter, uint8_t inDataTag, void *appData )
Uma função auxiliar que converte um elemento eventdata já serializado no buffer de evento.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Valores de retorno |
|
GetPropertyDictionaryKey
PropertyDictionaryKey GetPropertyDictionaryKey( PropertyPathHandle aHandle )
GetPropertySchemaHandle
PropertySchemaHandle GetPropertySchemaHandle( PropertyPathHandle aHandle )
IsNullPropertyPathHandle
bool IsNullPropertyPathHandle( PropertyPathHandle aHandle )
IsRootPropertyPathHandle
bool IsRootPropertyPathHandle( PropertyPathHandle aHandle )
IsVersionNewer
bool IsVersionNewer( const DataVersion & aVersion, const DataVersion & aReference )
Essa é uma implementação otimizada do algoritmo para comparar versões.
No lado do cliente, uma versão recebida do serviço é sempre a mais recente.
IsVersionNewerOrEqual
bool IsVersionNewerOrEqual( const DataVersion & aVersion, const DataVersion & aReference )
Localizar
TraitUpdatableDataSink * Locate( TraitDataHandle aTraitDataHandle, const TraitCatalogBase< TraitDataSink > *aDataSinkCatalog )
Função de utilitário que encontra um TraitUpdatableDataSink em um catálogo TraitDataSink.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retornos |
Um ponteiro para o TraitUpdatableDataSink. NULL se o identificador não existir ou apontar para um TraitDataSink não atualizável.
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData )
Registre um evento em um formulário pré-serializado.
A função registra um evento representado como nl::Weave::TLV::TLVReader. Isso significa que a representação dos dados do evento já está serializada no armazenamento subjacente a nl::Weave::TLV::TLVReader. Espera-se que nl::Weave::TLV::TLVReader contenha pelo menos um único elemento de dados, que precisa ser uma estrutura. O primeiro elemento lido no leitor é tratado como dados de eventos e armazenado no log de eventos. Os dados do evento PRECISAM conter tags de contexto para serem interpretadas dentro do esquema identificado por inProfileID e inEventType. A tag do primeiro elemento será ignorada. o sistema de geração de registros de eventos a substituirá pela tag eventData.
O evento é registrado se a inimportância dele excede o limite de geração de registros especificado em LoggingConfiguration. Se a importância do evento não atingir o limite atual, ele será descartado e a função retornará um 0
como o ID do evento resultante.
Esta variante da invocação especifica implicitamente todas as opções de evento padrão:
- o evento recebe o carimbo de data/hora com a hora atual no ponto da chamada,
- o evento será marcado como relacionado ao dispositivo que está fazendo a chamada;
- o evento é independente, não relacionado a outros eventos;
- o evento é marcado como não urgente,
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retornos |
event_id_t O ID do evento, se o evento tiver sido gravado no registro. Caso contrário, será 0.
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, nl::Weave::TLV::TLVReader & inData, const EventOptions *inOptions )
Registra um evento em um formulário pré-serializado, com opções adicionais.
A função registra um evento representado como nl::Weave::TLV::TLVReader. Isso significa que a representação dos dados do evento já está serializada no armazenamento subjacente a nl::Weave::TLV::TLVReader. Espera-se que nl::Weave::TLV::TLVReader contenha pelo menos um único elemento de dados, que precisa ser uma estrutura. O primeiro elemento lido no leitor é tratado como dados de eventos e armazenado no log de eventos. Os dados do evento PRECISAM conter tags de contexto para serem interpretadas dentro do esquema identificado por inProfileID e inEventType. A tag do primeiro elemento será ignorada. o sistema de geração de registros de eventos a substituirá pela tag eventData.
O evento é registrado se a inimportância dele excede o limite de geração de registros especificado em LoggingConfiguration. Se a importância do evento não atingir o limite atual, ele será descartado e a função retornará um 0
como o ID do evento resultante.
Esta variante da invocação permite que o autor da chamada defina qualquer combinação de EventOptions
:
- carimbo de data/hora, quando 0 tem como padrão a hora atual no ponto da chamada,
- “raiz” Seção da origem do evento (origem do evento e ID da característica). Se NULL, o padrão será o dispositivo atual. o evento será marcado como relacionado ao dispositivo que está fazendo a chamada;
- um ID de evento relacionado para agrupar IDs de eventos; Quando o ID do evento relacionado é 0, ele é marcado como não relacionado a outros eventos.
- urgência não urgentes por padrão.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Retornos |
event_id_t O ID do evento, se o evento tiver sido gravado no registro. Caso contrário, será 0.
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData )
Registre um evento usando um callback.
A função registra um evento representado como um EventWriterFunct e um contexto appData
específico do app. A função grava os metadados do evento e chama inEventWriter
com uma referência nl::Weave::TLV::TLVWriter e contexto inAppData
para que o código do usuário possa emitir os dados do evento diretamente para o log de eventos. Essa forma de log de eventos minimiza o consumo de memória, uma vez que os dados de eventos são serializados diretamente no buffer de destino. Os dados do evento PRECISAM conter tags de contexto para serem interpretadas no esquema identificado por inProfileID
e inEventType
. A tag do primeiro elemento será ignorada. o sistema de geração de registros de eventos a substituirá pela tag eventData.
O evento é registrado se a inimportância dele excede o limite de geração de registros especificado em LoggingConfiguration. Se a importância do evento não atingir o limite atual, ele será descartado e a função retornará um 0
como o ID do evento resultante.
Esta variante da invocação especifica implicitamente todas as opções de evento padrão:
- o evento recebe o carimbo de data/hora com a hora atual no ponto da chamada,
- o evento será marcado como relacionado ao dispositivo que está fazendo a chamada;
- o evento é independente, não relacionado a outros eventos;
- o evento é marcado como não urgente,
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Retornos |
event_id_t O ID do evento, se o evento tiver sido gravado no registro. Caso contrário, será 0.
|
LogEvent
event_id_t LogEvent( const EventSchema & inSchema, EventWriterFunct inEventWriter, void *inAppData, const EventOptions *inOptions )
Registra um evento usando um callback, com opções.
A função registra um evento representado como um EventWriterFunct e um contexto appData
específico do app. A função grava os metadados do evento e chama inEventWriter
com uma referência nl::Weave::TLV::TLVWriter e contexto inAppData
para que o código do usuário possa emitir os dados do evento diretamente para o log de eventos. Essa forma de log de eventos minimiza o consumo de memória, uma vez que os dados de eventos são serializados diretamente no buffer de destino. Os dados do evento PRECISAM conter tags de contexto para serem interpretadas no esquema identificado por inProfileID
e inEventType
. A tag do primeiro elemento será ignorada. o sistema de geração de registros de eventos a substituirá pela tag eventData.
O evento é registrado se a inimportância dele excede o limite de geração de registros especificado em LoggingConfiguration. Se a importância do evento não atingir o limite atual, ele será descartado e a função retornará um 0
como o ID do evento resultante.
Esta variante da invocação permite que o autor da chamada defina qualquer combinação de EventOptions
:
- carimbo de data/hora, quando 0 tem como padrão a hora atual no ponto da chamada,
- “raiz” Seção da origem do evento (origem do evento e ID da característica). Se NULL, o padrão será o dispositivo atual. o evento será marcado como relacionado ao dispositivo que está fazendo a chamada;
- um ID de evento relacionado para agrupar IDs de eventos; Quando o ID do evento relacionado é 0, ele é marcado como não relacionado a outros eventos.
- urgência não urgentes por padrão.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||
Retornos |
event_id_t O ID do evento, se o evento tiver sido gravado no registro. Caso contrário, será 0.
|
LogFreeform
event_id_t LogFreeform( ImportanceType inImportance, const char *inFormat, ... )
O LogFreeform emite uma string de formato livre para o fluxo de eventos padrão.
A string será encapsulada em uma estrutura de evento de depuração, estruturalmente idêntica a outras strings registradas. O ID do perfil vai ser o de um evento do Nest Debug, e o tipo de evento vai ser kNestDebug_StringLogEntryEvent
.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retornos |
event_id_t O ID do evento, se o evento tiver sido gravado no registro. Caso contrário, será 0.
|
LookForElementWithTag
WEAVE_ERROR LookForElementWithTag( const nl::Weave::TLV::TLVReader & aSrcReader, const uint64_t aTagInApiForm, nl::Weave::TLV::TLVReader *apDstReader )
PlainTextWriter
WEAVE_ERROR PlainTextWriter( TLVWriter & ioWriter, uint8_t inDataTag, void *appData )
Uma função auxiliar para emitir um texto de formato livre como um evento de depuração.
O evento de depuração é uma estrutura com uma região de registro e um texto de formato livre.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Valores de retorno |
|
PlainTextWriter
WEAVE_ERROR PlainTextWriter( ::nl::Weave::TLV::TLVWriter & ioWriter, uint8_t inDataTag, void *appData )
Uma função auxiliar para emitir um texto de formato livre como um evento de depuração.
O evento de depuração é uma estrutura com uma região de registro e um texto de formato livre.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Valores de retorno |
|