nl:: Weave:: Profiles:: ReferencedTLVData
#include <src/lib/profiles/common/WeaveMessage.h>
Da mesma forma, precisamos representar um blob antigo e grande de dados TLV.
Resumo
Herança
Herda de: nl::Weave::Profiles::RetainedPacketBuffer
Construtores e destruidores |
|
---|---|
ReferencedTLVData(void)
-------------- definições para dados TLV --------------
|
Tipos públicos |
|
---|---|
TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)
|
typedefvoid(*
|
Atributos públicos |
|
---|---|
theData
|
uint8_t *
|
theLength
|
uint16_t
|
theMaxLength
|
uint16_t
|
Funções públicas |
|
---|---|
free(void)
|
void
Libera um objeto ReferencedTLVData, ou seja, indefinido.
|
init(System::PacketBuffer *aBuffer)
|
Inicialize o objeto ReferencedTLVData considerando um PackageBuffer.
|
init(MessageIterator & i)
|
Inicialize um objeto ReferencedTLVData considerando um MessageIterator.
|
init(uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString)
|
Inicialize um ReferencedTLVObject com base em uma string de bytes.
|
init(TLVWriteCallback aWriteCallback, void *anAppState)
|
Inicialize um objeto RefererencedTLVData com uma função de callback.
|
isEmpty(void)
|
bool
Verifique se um objeto ReferencedTLVData contém algo.
|
isFree(void)
|
bool
Verifique se um objeto ReferencedTLVData está "sem custo financeiro", ou seja,
|
operator==(const ReferencedTLVData &) const
|
bool
Verifique a igualdade de um objeto ReferencedTLVData em relação a outro.
|
pack(System::PacketBuffer *buff)
|
Empacotar um objeto ReferencedTLVData diretamente em um PacketBuffer.
|
pack(MessageIterator & i, uint32_t maxLen)
|
|
packedLength(void)
|
uint16_t
Retorne o comprimento dos dados, supondo que o objeto tenha sido empacotado em um buffer.
|
Funções estáticas públicas |
|
---|---|
parse(System::PacketBuffer *buff, ReferencedTLVData & aTarget)
|
Analisa um objeto ReferencedTLVData de um PackageBuffer fornecido.
|
parse(MessageIterator & i, ReferencedTLVData & aTarget)
|
Analisa um objeto ReferencedTLVData de um MessageIterator fornecido.
|
Tipos públicos
TLVWriteCallback
void(* TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)
Atributos públicos
theData
uint8_t * theData
theLength
uint16_t theLength
theMaxLength
uint16_t theMaxLength
Funções públicas
ReferencedTLVData
ReferencedTLVData( void )
init
WEAVE_ERROR init( System::PacketBuffer *aBuffer )
Inicialize o objeto ReferencedTLVData considerando um PackageBuffer.
Inicialize um objeto ReferencedTLVData considerando um buffer cheio de TLV. Isso pressupõe que o buffer contém APENAS TLV.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
||
Valores de retorno |
|
init
WEAVE_ERROR init( MessageIterator & i )
Inicialize um objeto ReferencedTLVData considerando um MessageIterator.
Inicialize um objeto ReferencedTLVData considerando um MessageIterator. Nesse caso, o TLV é a última parte do buffer e passamos um iterador de mensagens apontando para ele.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
||
Valores de retorno |
|
init
WEAVE_ERROR init( uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString )
Inicialize um ReferencedTLVObject com base em uma string de bytes.
Inicialize o objeto ReferencedTLVData com uma string de bytes contendo TLV. Esse inicializador é o que usamos se não houver outro PackagerBuffer, porque estamos criando um deles para empacotar e enviar.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Valores de retorno |
|
init
WEAVE_ERROR init( TLVWriteCallback aWriteCallback, void *anAppState )
Inicialize um objeto RefererencedTLVData com uma função de callback.
Inicialize um objeto ReferencedTLVData. Em vez de fornecer os dados explicitamente, essa versão fornece a função, o callback de gravação e um objeto de referência, que serão passados a ela, junto com um objeto TLVWriter, quando os dados referenciados devem ser empacotados e enviados. A assinatura desse callback é:
typedef void (*TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState);
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
Vazio
bool isEmpty( void )
Verifique se um objeto ReferencedTLVData contém algo.
Um objeto pode "ter" de duas maneiras possíveis alguma coisa. Ele pode ter 0 comprimento OU não ter nenhum callback de gravação.
Detalhes | |
---|---|
Retornos |
verdadeiro se o conjunto de dados tiver um comprimento 0 ou não houver nenhum callback de gravação disponível. Caso contrário, será falso.
|
isFree
bool isFree( void )
Verifique se um objeto ReferencedTLVData está "sem custo financeiro", ou seja,
indefinido.
Detalhes | |
---|---|
Retornos |
verdadeiro se o objeto for indefinido. Caso contrário, será falso.
|
operador==
bool operator==( const ReferencedTLVData & ) const
Verifique a igualdade de um objeto ReferencedTLVData em relação a outro.
Isso só faz sentido no caso de dois objetos que têm dados reais apoiados por um buffer ou string.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
pacote
WEAVE_ERROR pack( System::PacketBuffer *buff )
Empacotar um objeto ReferencedTLVData diretamente em um PacketBuffer.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
||
Retornos |
um WEAVE_ERROR que reflete o sucesso da chamada do pacote subjacente.
|
pacote
WEAVE_ERROR pack( MessageIterator & i, uint32_t maxLen )
packedLength
uint16_t packedLength( void )
Retorne o comprimento dos dados, supondo que o objeto tenha sido empacotado em um buffer.
Detalhes | |
---|---|
Retornos |
o comprimento inteiro dos dados empacotados.
|
Funções estáticas públicas
parse
WEAVE_ERROR parse( System::PacketBuffer *buff, ReferencedTLVData & aTarget )
Analisa um objeto ReferencedTLVData de um PackageBuffer fornecido.
Analisa um objeto ReferencedTLVData fora de um buffer inet (supondo que ele contenha apenas TLV).
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retornos |
um WEAVE_ERROR que reflete o sucesso da chamada de análise subjacente.
|
parse
WEAVE_ERROR parse( MessageIterator & i, ReferencedTLVData & aTarget )
Analisa um objeto ReferencedTLVData de um MessageIterator fornecido.
Analisa um objeto ReferenceTLVData de um objeto MessageIterator que considera-se apontando para a parte TLV de uma mensagem.
Nenhuma "análise" real é feito aqui já que o TLV é deixado no buffer e não manipulado. Esse método apenas configura a estrutura ReferencedTLVData para uso posterior.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|