nl :: Tecer:: TLV
Definições para trabalhar com dados codificados em Weave TLV formato.
Resumo
Weave TLV é um método de codificação de dados para generalizada simples estruturado. Ele compartilha muitas propriedades com o formato de serialização JSON comumente usado, embora seja consideravelmente mais compacto durante a transmissão.
Enumerações | |
---|---|
@71 | enum |
@73 | enum |
@74 { | enum |
@75 | enum |
TLVCommonProfiles { | enum |
TLVElementType | enum |
TLVFieldSize | enum |
TLVTagControl | enum |
TLVTagFields | enum |
TLVType | enum Uma enumeração que identifica o tipo de um TLV elemento. |
Variáveis | |
---|---|
kWeaveTLVCopyChunkSize = 16 | const size_t Cópias de um TLV elemento a partir de um objecto leitor para o gravador. |
sTagSizes = { 0, 1, 2, 4, 2, 4, 6, 8 }[] | const uint8_t |
Funções | |
---|---|
CommonTag (uint32_t tagNum) | uint64_t Gera a representação API de um perfil comum TLV tag. |
ContextTag (uint8_t tagNum) | uint64_t Gera a representação API para de contexto específico TLV tag. |
GetTLVFieldSize (uint8_t type) | TLVFieldSize |
IsContextTag (uint64_t tag) | bool Retorna verdadeiro se a tag fornecida for uma tag específica do contexto. |
IsProfileTag (uint64_t tag) | bool Retorna verdadeiro se a tag fornecida for uma tag específica do perfil. |
IsSpecialTag (uint64_t tag) | bool |
IsValidTLVType (uint8_t type) | bool Retorna true se o especificado TLV tipo é válido. |
ProfileIdFromTag (uint64_t tag) | uint32_t Retorna o ID de perfil de um TLV tag. |
ProfileNumFromTag (uint64_t tag) | uint16_t Retorna o número de perfil de um TLV tag. |
ProfileTag (uint32_t profileId, uint32_t tagNum) | uint64_t Gera a representação API de um específico do perfil TLV tag de um ID de perfil e número da etiqueta. |
ProfileTag (uint16_t vendorId, uint16_t profileNum, uint32_t tagNum) | uint64_t Gera a representação API de um específico do perfil TLV tag de um ID de fornecedor, número do perfil e tag número. |
TLVFieldSizeToBytes (TLVFieldSize fieldSize) | uint8_t |
TLVTypeHasLength (uint8_t type) | bool Retorna true se o especificado TLV tipo implica a presença de um campo de comprimento associada. |
TLVTypeHasValue (uint8_t type) | bool Retorna true se o especificado TLV tipo implica a presença de um campo de valor associado. |
TLVTypeIsContainer (uint8_t type) | bool Retorna true se o especificado TLV tipo é um recipiente. |
TLVTypeIsString (uint8_t type) | bool Retorna true se o especificado TLV tipo é uma string UTF8 ou byte. |
TagNumFromTag (uint64_t tag) | uint32_t Retorna o número da etiqueta de um TLV tag. |
VendorIdFromTag (uint64_t tag) | uint16_t Retorna o ID de fornecedor a partir de um TLV tag. |
Aulas | |
---|---|
nl :: Weave :: TLV :: CircularTLVReader | |
nl :: Weave :: TLV :: CircularTLVWriter | |
nl :: Weave :: TLV :: TLVReader | Fornece um analisador eficiente de memória para dados codificados em Weave TLV formato. |
nl :: Weave :: TLV :: TLVUpdater | Fornece uma interface de leitor / gravador unificada para editar / adicionar / excluir elementos em TLV codificação. |
nl :: Weave :: TLV :: TLVWriter | Fornece um codificador eficiente de memória para gravar dados em Weave TLV formato. |
nl :: Weave :: TLV :: WeaveCircularTLVBuffer | WeaveCircularTLVBuffer fornece armazenamento circular para onl :: :: tecer TLV :: TLVWriter e nl :: :: tecer TLVTLVReader. |
Namespaces | |
---|---|
nl :: Weave :: TLV :: Debug | Este namespace inclui tipos e interfaces para depuração e registrando Weave TLV . |
nl :: Weave :: TLV :: Utilidades | Este namespace inclui tipos e interfaces de serviços públicos para gerenciar e trabalhar com Weave TLV . |
Enumerações
@ 71
@71
@ 73
@73
@ 74
@74
Propriedades | |
---|---|
AnonymousTag | Um valor significando um TLV elemento que não tem nenhuma marca (isto é, um elemento anônimo). |
@ 75
@75
TLVCommonProfiles
TLVCommonProfiles
Propriedades | |
---|---|
kProfileIdNotSpecified | Usado para indicar a ausência de um id de perfil em uma variável ou membro. Isto é, essencialmente, o mesmo como definido na kWeaveProfile_NotSpecified WeaveProfiles.h |
TLVElementType
TLVElementType
TLVFieldSize
TLVFieldSize
TLVTagControl
TLVTagControl
TLVTagFields
TLVTagFields
Variáveis
kWeaveTLVCopyChunkSize
const size_t kWeaveTLVCopyChunkSize = 16
Cópias de um TLV elemento a partir de um objecto leitor para o gravador.
O método CopyElement () codifica um novo TLV elemento cujo tipo e valor são tomadas a partir de umTLVReader objecto. Quando o método é chamado, o objeto leitor fornecido está prevista para ser posicionada sobre a fonte TLV elemento. O elemento recém-codificado terá o mesmo tipo e conteúdo do contêiner de entrada, no entanto, a tag será definida para o argumento especificado. Se o elemento fornecido é um TLV recipiente (estrutura, matriz ou caminho), todo o conteúdo do recipiente vai ser copiada.
Detalhes | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||||||||||||
Valores Retornados |
|
sTagSizes
const uint8_t sTagSizes[] = { 0, 1, 2, 4, 2, 4, 6, 8 }
Funções
CommonTag
uint64_t CommonTag( uint32_t tagNum )
Gera a representação API de um perfil comum TLV tag.
Detalhes | |||
---|---|---|---|
Parâmetros |
| ||
Devoluções | Um número inteiro de 64 bits que representa a tag. |
ContextTag
uint64_t ContextTag( uint8_t tagNum )
Gera a representação API para de contexto específico TLV tag.
Detalhes | |||
---|---|---|---|
Parâmetros |
| ||
Devoluções | Um número inteiro de 64 bits que representa a tag. |
GetTLVFieldSize
TLVFieldSize GetTLVFieldSize( uint8_t type )
IsContextTag
bool IsContextTag( uint64_t tag )
Retorna verdadeiro se a tag fornecida for uma tag específica do contexto.
IsProfileTag
bool IsProfileTag( uint64_t tag )
Retorna verdadeiro se a tag fornecida for uma tag específica do perfil.
IsSpecialTag
bool IsSpecialTag( uint64_t tag )
IsValidTLVType
bool IsValidTLVType( uint8_t type )
ProfileIdFromTag
uint32_t ProfileIdFromTag( uint64_t tag )
ProfileNumFromTag
uint16_t ProfileNumFromTag( uint64_t tag )
ProfileTag
uint64_t ProfileTag( uint32_t profileId, uint32_t tagNum )
Gera a representação API de um específico do perfil TLV tag de um ID de perfil e número da etiqueta.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
| ||||
Devoluções | Um número inteiro de 64 bits que representa a tag. |
ProfileTag
uint64_t ProfileTag( uint16_t vendorId, uint16_t profileNum, uint32_t tagNum )
Gera a representação API de um específico do perfil TLV tag de um ID de fornecedor, número do perfil e tag número.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||
Devoluções | Um número inteiro de 64 bits que representa a tag. |
TLVFieldSizeToBytes
uint8_t TLVFieldSizeToBytes( TLVFieldSize fieldSize )
TLVTypeHasLength
bool TLVTypeHasLength( uint8_t type )
TLVTypeHasValue
bool TLVTypeHasValue( uint8_t type )
TLVTypeIsContainer
bool TLVTypeIsContainer( uint8_t type )
TLVTypeIsString
bool TLVTypeIsString( uint8_t type )
TagNumFromTag
uint32_t TagNumFromTag( uint64_t tag )
Retorna o número da etiqueta de um TLV tag.
Detalhes | |||
---|---|---|---|
Parâmetros |
| ||
Devoluções | O número da etiqueta associada. |
IsProfileTag () e IsContextTag ()