nl:: Weave:: Profiles:: ReferencedTLVData
#include <src/lib/profiles/common/WeaveMessage.h>
Da mesma forma, precisamos representar um grande e antigo blob de dados TLV.
Resumo
Herança
Herda de: nl::Weave::Profiles::RetainedPacketBuffer
Construtores e destrutores |
|
---|---|
ReferencedTLVData(void)
-------------- Definições dos dados de 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
Liberar um objeto ReferencedTLVData, ou seja, cancelar a definição dele.
|
init(System::PacketBuffer *aBuffer)
|
Inicializar 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)
|
Inicializa um ReferencedTLVObject com uma string de bytes fornecida.
|
init(TLVWriteCallback aWriteCallback, void *anAppState)
|
Inicializar um objeto RefererencedTLVData com uma função de callback.
|
isEmpty(void)
|
bool
Verifique se há algo em um objeto ReferencedTLVData.
|
isFree(void)
|
bool
Verifique se um objeto ReferencedTLVData é "sem custo financeiro", ou seja,
|
operator==(const ReferencedTLVData &) const
|
bool
Compare um objeto ReferencedTLVData em relação a outro para garantir a igualdade.
|
pack(System::PacketBuffer *buff)
|
Empacotar um objeto ReferencedTLVData diretamente em um PackageBuffer.
|
pack(MessageIterator & i, uint32_t maxLen)
|
|
packedLength(void)
|
uint16_t
Retorne o comprimento dos dados supondo que o objeto tenha sido compactado em um buffer.
|
Funções estáticas públicas |
|
---|---|
parse(System::PacketBuffer *buff, ReferencedTLVData & aTarget)
|
Analisa um objeto ReferencedTLVData de um PacketBuffer 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 )
sem custo financeiro
void free( void )
Liberar um objeto ReferencedTLVData, ou seja, cancelar a definição dele.
init
WEAVE_ERROR init( System::PacketBuffer *aBuffer )
Inicializar o objeto ReferencedTLVData considerando um PackageBuffer.
Inicializar 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 transmitimos um iterador de mensagens que aponta para ele.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
||
Valores de retorno |
|
init
WEAVE_ERROR init( uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString )
Inicializa um ReferencedTLVObject com uma string de bytes fornecida.
Inicialize o objeto ReferencedTLVData com uma string de bytes contendo TLV. Esse inicializador é o que usamos se não houver nenhum PackagerBuffer porque estamos criando um deles para compactar e enviar.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Valores de retorno |
|
init
WEAVE_ERROR init( TLVWriteCallback aWriteCallback, void *anAppState )
Inicializar um objeto RefererencedTLVData com uma função de callback.
Inicialize um objeto ReferencedTLVData. Em vez de fornecer explicitamente os dados, essa versão fornece a função, o callback de gravação e um objeto de referência, que será transmitido a ele com um objeto TLVWriter, quando os dados referenciados vão ser compactados e enviados. A assinatura desse callback é:
typedef void (*TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState);
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
isEmpty
bool isEmpty( void )
Verifique se há algo em um objeto ReferencedTLVData.
Esse objeto pode "ter" algo de duas formas possíveis. Pode ter tamanho 0 OU não pode ter nenhum callback de gravação.
Detalhes | |
---|---|
Retorna |
verdadeiro se o conjunto de dados tiver comprimento 0 ou não houver retorno de gravação disponível; caso contrário, será falso.
|
isFree
bool isFree( void )
Verifique se um objeto ReferencedTLVData é "sem custo financeiro", ou seja,
indefinido.
Detalhes | |
---|---|
Retorna |
verdadeiro se o objeto for indefinido. Caso contrário, será falso.
|
operador==
bool operator==( const ReferencedTLVData & ) const
Compare um objeto ReferencedTLVData em relação a outro para garantir a igualdade.
Observe que 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 PackageBuffer.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
||
Retorna |
um WEAVE_ERROR refletindo 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 compactado em um buffer.
Detalhes | |
---|---|
Retorna |
o comprimento inteiro dos dados compactados.
|
Funções estáticas públicas
parse
WEAVE_ERROR parse( System::PacketBuffer *buff, ReferencedTLVData & aTarget )
Analisa um objeto ReferencedTLVData de um PacketBuffer fornecido.
Analisa um objeto ReferencedTLVData fora de um buffer inet (supondo que ele contenha apenas TLV).
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retorna |
um WEAVE_ERROR refletindo 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 se presume apontar para a parte TLV de uma mensagem.
Nenhuma "análise" real é feita 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 |
|