nl

Substituições de nlassert.h específicas do Weave.

Resumo

Enumerações

@357 enum
@358 enum
@359 enum
@360 enum
@361 enum
SerializedFieldType{
  SerializedFieldTypeBoolean = 0x00,
  SerializedFieldTypeUInt8,
  SerializedFieldTypeUInt16,
  SerializedFieldTypeUInt32,
  SerializedFieldTypeUInt64,
  SerializedFieldTypeInt8,
  SerializedFieldTypeInt16,
  SerializedFieldTypeInt32,
  SerializedFieldTypeInt64,
  SerializedFieldTypeFloatingPoint32,
  SerializedFieldTypeFloatingPoint64,
  SerializedFieldTypeUTF8String,
  SerializedFieldTypeByteString,
  SerializedFieldTypeStructure,
  SerializedFieldTypeArray
}
enum
Uma lista de tipos de TLV a serem gravados com um campo TLV.
SerializedFieldTypeBits enum
Bitfield de SerializedFieldType.
SerializedFieldTypeMasks enum
Máscaras para acessar bits de SerializedFieldType.

Typedefs

Base64CharToValFunct)(uint8_t c) typedef
uint8_t(*
Base64ValToCharFunct)(uint8_t val) typedef
char(*
MemoryAllocate)(size_t size) typedef
void *(*
Ponteiros de função de alocação/liberação de memória.
MemoryFree)(void *ptr) typedef
void(*
MemoryReallocate)(void *ptr, size_t size) typedef
void *(*

Variáveis

sASN1ErrorFormatter = { nl::Weave::ASN1::FormatASN1Error, NULL }
sElementSize = { sizeof(bool), sizeof(uint8_t), sizeof(uint16_t), sizeof(uint32_t), sizeof(uint64_t), sizeof(int8_t), sizeof(int16_t), sizeof(int32_t), sizeof(int64_t), sizeof(float), sizeof(double), sizeof(char *), sizeof(SerializedByteString), sizeof(void *), sizeof(void *) }[]
const uint8_t
sErrorFormatterList = &sWeaveErrorFormatter
const ErrorFormatter *
Lista vinculada de funções do formatador de erro.
sErrorStr[WEAVE_CONFIG_ERROR_STR_SIZE]
char
Buffer estático para armazenar a string de erro formatada.
sErrorStr[1024]
char
Essa rotina retorna uma string C terminada em NULL legível por humanos que descreve o código de status fornecido associado ao perfil especificado.
sWeaveErrorFormatter = { nl::Weave::FormatWeaveError, &sASN1ErrorFormatter }

Funções

AdjustCalendarDate(uint16_t & year, uint8_t & month, uint8_t & dayOfMonth, int32_t relativeDays)
void
Base64CharToVal(uint8_t c)
uint8_t
Base64Decode(const char *in, uint16_t inLen, uint8_t *out, Base64CharToValFunct charToValFunct)
uint16_t
Base64Decode(const char *in, uint16_t inLen, uint8_t *out)
uint16_t
Base64Decode32(const char *in, uint32_t inLen, uint8_t *out, Base64CharToValFunct charToValFunct)
uint32_t
Base64Decode32(const char *in, uint32_t inLen, uint8_t *out)
uint32_t
Base64Encode(const uint8_t *in, uint16_t inLen, char *out, Base64ValToCharFunct valToCharFunct)
uint16_t
Base64Encode(const uint8_t *in, uint16_t inLen, char *out)
uint16_t
Base64Encode32(const uint8_t *in, uint32_t inLen, char *out, Base64ValToCharFunct valToCharFunct)
uint32_t
Base64Encode32(const uint8_t *in, uint32_t inLen, char *out)
uint32_t
Base64URLCharToVal(uint8_t c)
uint8_t
Base64URLDecode(const char *in, uint16_t inLen, uint8_t *out)
uint16_t
Base64URLEncode(const uint8_t *in, uint16_t inLen, char *out)
uint16_t
Base64URLValToChar(uint8_t val)
char
Base64ValToChar(uint8_t val)
char
CalendarDateToDaysSinceEpoch(uint16_t year, uint8_t month, uint8_t dayOfMonth, uint32_t & daysSinceEpoch)
bool
CalendarDateToOrdinalDate(uint16_t year, uint8_t month, uint8_t dayOfMonth, uint16_t & dayOfYear)
void
CalendarTimeToSecondsSinceEpoch(uint16_t year, uint8_t month, uint8_t dayOfMonth, uint8_t hour, uint8_t minute, uint8_t second, uint32_t & secondsSinceEpoch)
bool
ClearFlag(FlagsT & inFlags, const FlagT inFlag)
void
DateToManufacturingWeek(uint16_t year, uint8_t month, uint8_t day, uint16_t & mfgYear, uint8_t & mfgWeek)
void
DaysInMonth(uint16_t year, uint8_t month)
uint8_t
DaysSinceEpochToCalendarDate(uint32_t daysSinceEpoch, uint16_t & year, uint8_t & month, uint8_t & dayOfMonth)
void
DaysToMarch1(uint16_t year)
uint8_t
DeallocateDeserializedStructure(void *aStructureData, const SchemaFieldDescriptor *aFieldDescriptors, SerializationContext *aContext)
ErrorStr(int32_t err)
NL_DLL_EXPORT const char *
Essa rotina retorna uma string C legível terminada em NULL que descreve o erro fornecido.
ExtractManufacturingDateFromSerialNumber(const char *serialNum, uint16_t & year, uint8_t & month, uint8_t & day)
FindNullifiedFieldsArray(void *aStructureData, const SchemaFieldDescriptor *aSchemaDescriptor, uint8_t *& aNullifiedFields)
Uma função auxiliar para encontrar a localização da matriz de campos anulados localizada no fim da estrutura C.
FindStatusReportStr(uint32_t inProfileId, uint16_t inStatusCode)
const char *
FirstWeekdayOfYear(uint16_t year)
uint8_t
FormatError(char *buf, uint16_t bufSize, const char *subsys, int32_t err, const char *desc)
void
Gera uma string C terminada em NULL legível por humanos que descreve o erro fornecido.
GetArrayElementSize(uint32_t & aOutSize, const FieldDescriptor *aFieldPtr, SerializedFieldType aType)
GetFlag(const FlagsT & inFlags, const FlagT inFlag)
bool
IsBase34NoIOChar(char ch)
bool
IsLeapYear(uint16_t year)
bool
IsValidFieldType(SerializedFieldType aType)
bool
IsValidSerialNumber(const char *serialNum)
bool
LogEvent(TEvent *aEvent)
nl::Weave::Profiles::DataManagement::event_id_t
LogEvent(TEvent *aEvent, const nl::Weave::Profiles::DataManagement::EventOptions & aOptions)
nl::Weave::Profiles::DataManagement::event_id_t
ManufacturingWeekToDate(uint16_t mfgYear, uint8_t mfgWeek, uint16_t & year, uint8_t & month, uint8_t & day)
void
MarchBasedDayOfYearToMonth(uint16_t dayOfYear)
uint8_t
MarchBasedMonthToDayOfYear(uint8_t month)
uint16_t
NullifyAllEventFields(TEvent *aEvent)
void
OrdinalDateToCalendarDate(uint16_t year, uint16_t dayOfYear, uint8_t & month, uint8_t & dayOfMonth)
void
ReadDataForType(TLVReader & aReader, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aInArray, SerializationContext *aContext)
Uma função de leitor para ler uma entrada específica do TLV com base em dados de estrutura.
ReadNullableDataForType(TLVReader & aReader, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool & aIsNullified, SerializationContext *aContext)
Uma função de leitor para verificar se os dados são anuláveis/anulados antes de ler o TLV.
RegisterErrorFormatter(ErrorFormatter *errFormatter)
NL_DLL_EXPORT void
Adicione uma nova função do formatador de erros à lista global de formatadores de erros.
SecondsSinceEpochToCalendarTime(uint32_t secondsSinceEpoch, uint16_t & year, uint8_t & month, uint8_t & dayOfMonth, uint8_t & hour, uint8_t & minute, uint8_t & second)
void
SerializedDataToTLVWriter(TLVWriter & aWriter, void *aStructureData, const SchemaFieldDescriptor *aFieldDescriptors)
Uma função de gravador para converter uma estrutura de dados em uma estrutura TLV.
SerializedDataToTLVWriterHelper(TLVWriter & aWriter, uint8_t aDataTag, void *aAppData)
Uma função de gravador de wrapper que envolve o SerializedDataToTLVWriter com um contêiner.
SetFlag(FlagsT & inFlags, const FlagT inFlag)
void
SetFlag(FlagsT & inFlags, const FlagT inFlag, const bool inValue)
void
StatusReportStr(uint32_t profileId, uint16_t statusCode)
const char *
TLVReaderToDeserializedData(nl::Weave::TLV::TLVReader & aReader, void *aStructureData, const SchemaFieldDescriptor *aFieldDescriptors, SerializationContext *aContext)
Uma função de leitor para converter TLV em uma estrutura C.
TLVReaderToDeserializedDataHelper(nl::Weave::TLV::TLVReader & aReader, uint8_t aDataTag, void *aAppData, SerializationContext *aContext)
Uma função auxiliar que desserializa um único elemento de dados TLV.
WriteArrayData(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *aFieldPtr)
Uma função de gravação que grava uma estrutura de matriz.
WriteDataForType(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aInArray)
Uma função de escritor escreve uma entrada específica no TLV com base nos dados de estrutura.
WriteNullableDataForType(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aIsNullified)
Uma função de gravação para verificar se os dados são anuláveis/anulados antes de gravar no TLV.
secondsToMilliseconds(uint32_t seconds)
uint32_t

Estruturas

nl::ArrayLengthAndBuffer

Um auxiliar para unir uma matriz com um comprimento.

nl::ErrorFormatter
nl::FieldDescriptor

Estrutura que descreve um campo TLV em uma estrutura de esquema e o conecta aos dados em uma c-struct.

nl::Gerenciamento de memória

Uma c-struct de funções de alocação/livre de memória.

nl::SchemaFieldDescriptor

Wrapper em torno de uma matriz de FieldDescriptors para descrever uma estrutura/estrutura de esquema.

nl::SerializationContext

Uma c-struct contendo qualquer contexto ou estado necessário para serializar ou desserializar.

nl::SerializedByteString
nl::SerializedFieldTypeBoolean_array
nl::SerializedFieldTypeByteString_array
nl::SerializedFieldTypeFloatingPoint32_array
nl::SerializedFieldTypeFloatingPoint64_array
nl::SerializedFieldTypeInt16_array
nl::SerializedFieldTypeInt32_array
nl::SerializedFieldTypeInt64_array
nl::SerializedFieldTypeInt8_array
nl::SerializedFieldTypeUInt16_array
nl::SerializedFieldTypeUInt32_array
nl::SerializedFieldTypeUInt64_array
nl::SerializedFieldTypeUInt8_array
nl::SerializedFieldTypeUTF8String_array
nl::StructureSchemaPointerPair

Um par de dados com uma c-struct de dados e o StructureSchemaDescriptor para criar uma estrutura TLV com base nesses dados.

Namespaces

nl::ArgParser
nl::Ble

Esse namespace inclui todas as interfaces do Weave para Bluetooth de baixa energia (BLE), também conhecido como Bluetooth Smart.

nl::Inet
nl::NestCerts

Esse namespace inclui símbolos globais para certificados de infraestrutura de chave pública (ICP) do Nest Weave.

nl::PairingCode
nl::Quente
nl::Weave

Enumerações

@357

 @357

@358

 @358

@359

 @359

@360

 @360

@361

 @361

SerializedFieldType

 SerializedFieldType

Uma lista de tipos de TLV a serem gravados com um campo TLV.

Propriedades
SerializedFieldTypeArray

Tipo de matriz.

SerializedFieldTypeBoolean

Tipo booleano.

SerializedFieldTypeByteString

Tipo de string de bytes.

SerializedFieldTypeFloatingPoint32

Tipo flutuante de 32 bits

SerializedFieldTypeFloatingPoint64

Tipo flutuante de 64 bits

SerializedFieldTypeInt16

Tipo assinado de 16 bits.

SerializedFieldTypeInt32

Tipo assinado de 32 bits.

SerializedFieldTypeInt64

Tipo assinado de 64 bits.

SerializedFieldTypeInt8

Tipo assinado de 8 bits.

SerializedFieldTypeStructure

Tipo de estrutura definido pelo usuário.

SerializedFieldTypeUInt16

Tipo de 16 bits não assinado.

SerializedFieldTypeUInt32

Tipo de 32 bits não assinado.

SerializedFieldTypeUInt64

Tipo de 64 bits não assinado.

SerializedFieldTypeUInt8

Tipo de 8 bits não assinado.

SerializedFieldTypeUTF8String

Tipo de string UTF-8.

SerializedFieldTypeBits

 SerializedFieldTypeBits

Bitfield de SerializedFieldType.

SerializedFieldTypeMasks

 SerializedFieldTypeMasks

Máscaras para acessar bits de SerializedFieldType.

Typedefs

Base64CharToValFunct

uint8_t(* Base64CharToValFunct)(uint8_t c)

Base64ValToCharFunct

char(* Base64ValToCharFunct)(uint8_t val)

MemoryAllocate

void *(* MemoryAllocate)(size_t size)

Ponteiros de função de alocação/liberação de memória.

MemoryFree

void(* MemoryFree)(void *ptr)

MemoryReallocate

void *(* MemoryReallocate)(void *ptr, size_t size)

Variáveis

sASN1ErrorFormatter

const ErrorFormatter sASN1ErrorFormatter =
{
    nl::Weave::ASN1::FormatASN1Error,
    NULL
}

sElementSize

const uint8_t sElementSize[] =
{
    sizeof(bool),                   
    sizeof(uint8_t),                
    sizeof(uint16_t),               
    sizeof(uint32_t),               
    sizeof(uint64_t),               
    sizeof(int8_t),                 
    sizeof(int16_t),                
    sizeof(int32_t),                
    sizeof(int64_t),                
    sizeof(float),                  
    sizeof(double),                 
    sizeof(char *),                 
    sizeof(SerializedByteString),   
    sizeof(void *),                 
    sizeof(void *)                  
}

sErrorFormatterList

const ErrorFormatter * sErrorFormatterList = &sWeaveErrorFormatter

Lista vinculada de funções do formatador de erro.

sErrorStr

char sErrorStr[WEAVE_CONFIG_ERROR_STR_SIZE]

Buffer estático para armazenar a string de erro formatada.

sErrorStr

char sErrorStr[1024]

Essa rotina retorna uma string C terminada em NULL legível por humanos que descreve o código de status fornecido associado ao perfil especificado.

Detalhes
Parâmetros
[in] profileId
O identificador de perfil do Weave associado a .
[in] statusCode
O código de status em profileId para o qual fornecer uma string descritiva.
Retornos
Um ponteiro para uma string C terminada em NULL que descreve o código de status fornecido dentro do perfil especificado.
Confira também:
WEAVE_CONFIG_SHORT_ERROR_STR

sWeaveErrorFormatter

const ErrorFormatter sWeaveErrorFormatter =
{
    nl::Weave::FormatWeaveError,
    &sASN1ErrorFormatter
}

Funções

AdjustCalendarDate

void AdjustCalendarDate(
  uint16_t & year,
  uint8_t & month,
  uint8_t & dayOfMonth,
  int32_t relativeDays
)

CharToVal Base64

uint8_t Base64CharToVal(
  uint8_t c
)

Base64Decode

uint16_t Base64Decode(
  const char *in,
  uint16_t inLen,
  uint8_t *out,
  Base64CharToValFunct charToValFunct
)

Base64Decode

uint16_t Base64Decode(
  const char *in,
  uint16_t inLen,
  uint8_t *out
)

Base64Decode32

uint32_t Base64Decode32(
  const char *in,
  uint32_t inLen,
  uint8_t *out,
  Base64CharToValFunct charToValFunct
)

Base64Decode32

uint32_t Base64Decode32(
  const char *in,
  uint32_t inLen,
  uint8_t *out
)

Base64Encode

uint16_t Base64Encode(
  const uint8_t *in,
  uint16_t inLen,
  char *out,
  Base64ValToCharFunct valToCharFunct
)

Base64Encode

uint16_t Base64Encode(
  const uint8_t *in,
  uint16_t inLen,
  char *out
)

Base64Encode32

uint32_t Base64Encode32(
  const uint8_t *in,
  uint32_t inLen,
  char *out,
  Base64ValToCharFunct valToCharFunct
)

Base64Encode32

uint32_t Base64Encode32(
  const uint8_t *in,
  uint32_t inLen,
  char *out
)

Base64URLCharToVal

uint8_t Base64URLCharToVal(
  uint8_t c
)

Decodificação Base64URL

uint16_t Base64URLDecode(
  const char *in,
  uint16_t inLen,
  uint8_t *out
)

Codificação de URL Base64

uint16_t Base64URLEncode(
  const uint8_t *in,
  uint16_t inLen,
  char *out
)

Base64URLValToChar

char Base64URLValToChar(
  uint8_t val
)

Base64ValToChar

char Base64ValToChar(
  uint8_t val
)

CalendarDateToDaysSinceEpoch

bool CalendarDateToDaysSinceEpoch(
  uint16_t year,
  uint8_t month,
  uint8_t dayOfMonth,
  uint32_t & daysSinceEpoch
)

CalendarDateToOrdinalDate

void CalendarDateToOrdinalDate(
  uint16_t year,
  uint8_t month,
  uint8_t dayOfMonth,
  uint16_t & dayOfYear
)

CalendarTimeToSecondsSinceEpoch

bool CalendarTimeToSecondsSinceEpoch(
  uint16_t year,
  uint8_t month,
  uint8_t dayOfMonth,
  uint8_t hour,
  uint8_t minute,
  uint8_t second,
  uint32_t & secondsSinceEpoch
)

ClearFlag

void ClearFlag(
  FlagsT & inFlags,
  const FlagT inFlag
)

DateToManufacturingWeek

void DateToManufacturingWeek(
  uint16_t year,
  uint8_t month,
  uint8_t day,
  uint16_t & mfgYear,
  uint8_t & mfgWeek
)

DaysInMonth

uint8_t DaysInMonth(
  uint16_t year,
  uint8_t month
)

DaysSinceEpochToCalendarDate

void DaysSinceEpochToCalendarDate(
  uint32_t daysSinceEpoch,
  uint16_t & year,
  uint8_t & month,
  uint8_t & dayOfMonth
)

DaysToMarch1

uint8_t DaysToMarch1(
  uint16_t year
)

DeallocateDeserializedStructure

WEAVE_ERROR DeallocateDeserializedStructure(
  void *aStructureData,
  const SchemaFieldDescriptor *aFieldDescriptors,
  SerializationContext *aContext
)

ErrorStr

NL_DLL_EXPORT const char * ErrorStr(
  int32_t err
)

Essa rotina retorna uma string C legível terminada em NULL que descreve o erro fornecido.

Detalhes
Parâmetros
[in] err
O erro de formato e descrição.
Retornos
Um ponteiro para uma string C terminada em NULL que descreve o erro fornecido.

ExtractManufacturingDateFromSerialNumber

WEAVE_ERROR ExtractManufacturingDateFromSerialNumber(
  const char *serialNum,
  uint16_t & year,
  uint8_t & month,
  uint8_t & day
)

FindNullifiedFieldsArray

WEAVE_ERROR FindNullifiedFieldsArray(
  void *aStructureData,
  const SchemaFieldDescriptor *aSchemaDescriptor,
  uint8_t *& aNullifiedFields
)

Uma função auxiliar para encontrar a localização da matriz de campos anulados localizada no fim da estrutura C.

O membro nullified_fields da estrutura C precisa estar localizado logo após o último membro descrito pela matriz de FieldDescriptors. Ele não está na lista de descritores de campo porque foi feito para ser um utilitário oculto para criadores e consumidores de eventos anuláveis. Esse membro de struct não existe para eventos sem campos anuláveis. No entanto, devido à construção de setters e getters, nenhum acesso fora dos limites deve ocorrer.

Detalhes
Parâmetros
[in] aStructureData
Um ponteiro para o c-struct.
[in] aSchemaDescriptor
SchemaFieldDescriptors para descrever a estrutura c.
[out] aNullifiedFields
Um ponteiro para o membro nullified_fields do struct.
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.
WEAVE_ERROR_INVALID_ARGUMENT
Se o ponteiro do descritor do campo for NULL.
WEAVE_ERROR_INCORRECT_STATE
Se o formato dos descritores de campo não corresponder ao esperado.

FindStatusReportStr

const char * FindStatusReportStr(
  uint32_t inProfileId,
  uint16_t inStatusCode
)

FirstWeekdayOfYear

uint8_t FirstWeekdayOfYear(
  uint16_t year
)

FormatError

void FormatError(
  char *buf,
  uint16_t bufSize,
  const char *subsys,
  int32_t err,
  const char *desc
)

Gera uma string C terminada em NULL legível por humanos que descreve o erro fornecido.

Detalhes
Parâmetros
[in] buf
Buffer no qual a string de erro será colocada.
[in] bufSize
Tamanho do buffer fornecido em bytes.
[in] subsys
Uma string curta que descreve o subsistema que originou o erro ou NULL se a origem do erro for desconhecida/indisponível. Essa string deve ter 10 caracteres ou menos.
[in] err
O erro a ser formatado.
[in] desc
Uma string que descreve a causa ou o significado do erro ou NULL se essas informações não estiverem disponíveis.

GetArrayElementSize

WEAVE_ERROR GetArrayElementSize(
  uint32_t & aOutSize,
  const FieldDescriptor *aFieldPtr,
  SerializedFieldType aType
)

GetFlag

bool GetFlag(
  const FlagsT & inFlags,
  const FlagT inFlag
)

IsBase34NoIOChar

bool IsBase34NoIOChar(
  char ch
)

IsLeapYear

bool IsLeapYear(
  uint16_t year
)

IsValidFieldType

bool IsValidFieldType(
  SerializedFieldType aType
)

IsValidSerialNumber

bool IsValidSerialNumber(
  const char *serialNum
)

LogEvent

nl::Weave::Profiles::DataManagement::event_id_t LogEvent(
  TEvent *aEvent
)

LogEvent

nl::Weave::Profiles::DataManagement::event_id_t LogEvent(
  TEvent *aEvent,
  const nl::Weave::Profiles::DataManagement::EventOptions & aOptions
)

ManufacturingWeekToDate

void ManufacturingWeekToDate(
  uint16_t mfgYear,
  uint8_t mfgWeek,
  uint16_t & year,
  uint8_t & month,
  uint8_t & day
)

MarchBasedDayOfYearToMonth

uint8_t MarchBasedDayOfYearToMonth(
  uint16_t dayOfYear
)

MarchBasedMonthToDayOfYear

uint16_t MarchBasedMonthToDayOfYear(
  uint8_t month
)

NullifyAllEventFields

void NullifyAllEventFields(
  TEvent *aEvent
)

OrdinalDateToCalendarDate

void OrdinalDateToCalendarDate(
  uint16_t year,
  uint16_t dayOfYear,
  uint8_t & month,
  uint8_t & dayOfMonth
)

ReadDataForType

WEAVE_ERROR ReadDataForType(
  TLVReader & aReader,
  void *aStructureData,
  const FieldDescriptor *& aFieldPtr,
  SerializedFieldType aType,
  bool aInArray,
  SerializationContext *aContext
)

Uma função de leitor para ler uma entrada específica do TLV com base em dados de estrutura.

Detalhes
Parâmetros
[in] aReader
O leitor a ser usado para ler a estrutura
[in] aStructureData
Um ponteiro para os dados c-structure a serem lidos
[in,out] aFieldPtr
FieldDescriptor para descrever os campos e a tag TLV A função incrementa o ponteiro s.t. ele apontará para o próximo elemento na matriz FieldDescritor
[in] aType
O SerializedFieldType do campo.
[in] aInArray
Verdadeiro se estivermos lendo uma matriz (use tag anônima)
[in] aContext
Contexto de serialização que contém qualquer estado necessário para a operação.
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.
other
Outros erros que podem ser retornados do aReader.

ReadNullableDataForType

WEAVE_ERROR ReadNullableDataForType(
  TLVReader & aReader,
  void *aStructureData,
  const FieldDescriptor *& aFieldPtr,
  SerializedFieldType aType,
  bool & aIsNullified,
  SerializationContext *aContext
)

Uma função de leitor para verificar se os dados são anuláveis/anulados antes de ler o TLV.

Detalhes
Parâmetros
[in] aReader
O leitor a ser usado para ler a estrutura
[in] aStructureData
Um ponteiro para os dados c-structure a serem lidos
[in,out] aFieldPtr
FieldDescriptor para descrever os campos e a tag TLV A função incrementa o ponteiro s.t. ele apontará para o próximo elemento na matriz FieldDescriptor.
[in] aType
O SerializedFieldType do campo.
[out] aIsNullified
Defina para indicar que um campo está anulado.
[in] aContext
Contexto de serialização que contém qualquer estado necessário para a operação.
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.
other
Erros do TLV durante a gravação.

RegisterErrorFormatter

NL_DLL_EXPORT void RegisterErrorFormatter(
  ErrorFormatter *errFormatter
)

Adicione uma nova função do formatador de erros à lista global de formatadores de erros.

Detalhes
Parâmetros
[in] errFormatter
Uma estrutura ErrorFormatter que contém um ponteiro para a nova função de erro. Um ponteiro para a estrutura ErrorFormatter fornecida será mantido pela função. Assim, a memória da estrutura deve permanecer reservada.

SecondsSinceEpochToCalendarTime

void SecondsSinceEpochToCalendarTime(
  uint32_t secondsSinceEpoch,
  uint16_t & year,
  uint8_t & month,
  uint8_t & dayOfMonth,
  uint8_t & hour,
  uint8_t & minute,
  uint8_t & second
)

SerializedDataToTLVWriter

WEAVE_ERROR SerializedDataToTLVWriter(
  TLVWriter & aWriter,
  void *aStructureData,
  const SchemaFieldDescriptor *aFieldDescriptors
)

Uma função de gravador para converter uma estrutura de dados em uma estrutura TLV.

Usa um SchemaFieldDescriptor para interpretar a estrutura de dados e gravar no TLV.

Detalhes
Parâmetros
[in] aWriter
O roteirista a ser usado para escrever a estrutura
[in] aStructureData
Um ponteiro para os dados c-structure a serem gravados com base no SchemaFieldDescriptor.
[in] aFieldDescriptors
SchemaFieldDescriptors para descrever o struct + TLV
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.
other
Outros erros podem ser retornados do aWriter.

SerializedDataToTLVWriterHelper

WEAVE_ERROR SerializedDataToTLVWriterHelper(
  TLVWriter & aWriter,
  uint8_t aDataTag,
  void *aAppData
)

Uma função de gravador de wrapper que envolve o SerializedDataToTLVWriter com um contêiner.

Também divide um StructureSchemaPointerPair em dados da estrutura e descritores para transmitir.

Detalhes
Parâmetros
[in] aWriter
O roteirista a ser usado para escrever a estrutura
[in] aDataTag
Tag para gravar
[in] aAppData
StructureSchemaPointerPair que contém um ponteiro para estruturar dados e descritores de campo. nulo* devido ao protótipo
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.
other
Outros erros podem ser retornados do aWriter.

SetFlag

void SetFlag(
  FlagsT & inFlags,
  const FlagT inFlag
)

SetFlag

void SetFlag(
  FlagsT & inFlags,
  const FlagT inFlag,
  const bool inValue
)

StatusReportStr

const char * StatusReportStr(
  uint32_t profileId,
  uint16_t statusCode
)

TLVReaderToDeserializedData

WEAVE_ERROR TLVReaderToDeserializedData(
  nl::Weave::TLV::TLVReader & aReader,
  void *aStructureData,
  const SchemaFieldDescriptor *aFieldDescriptors,
  SerializationContext *aContext
)

Uma função de leitor para converter TLV em uma estrutura C.

Usa um SchemaFieldDescriptor para interpretar a estrutura de dados.

Ele precisa ser robusto para detectar campos desconhecidos e não encontrar um campo esperado.

Detalhes
Parâmetros
[in] aReader
O leitor a ser usado para ler os dados
[in] aStructureData
Um ponteiro para os dados da c-structure de destino, que serão lidos com base no SchemaFieldDescriptor.
[in] aFieldDescriptors
SchemaFieldDescriptors para descrever o struct + TLV
[in] aContext
Contexto de serialização que contém qualquer estado necessário para a operação.
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.
other
Outros erros que podem ser retornados do aReader.

TLVReaderToDeserializedDataHelper

WEAVE_ERROR TLVReaderToDeserializedDataHelper(
  nl::Weave::TLV::TLVReader & aReader,
  uint8_t aDataTag,
  void *aAppData,
  SerializationContext *aContext
)

Uma função auxiliar que desserializa um único elemento de dados TLV.

A função divide StructureSchemaPointerPair em dados da estrutura e descritores para transmitir para o ReadDataForType.

Detalhes
Parâmetros
[in] aReader
O leitor que contém os dados a serem desserializados
[in] aDataTag
Não usada no momento
[in] aAppData
StructureSchemaPointerPair que contém um ponteiro para estruturar dados e descritores de campo. nulo* devido ao protótipo
[in] aContext
Contexto de serialização que contém qualquer estado necessário para a operação.
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.
other
Outros erros que podem ser retornados do aReader.

WriteArrayData

WEAVE_ERROR WriteArrayData(
  TLVWriter & aWriter,
  void *aStructureData,
  const FieldDescriptor *aFieldPtr
)

Uma função de gravação que grava uma estrutura de matriz.

Detalhes
Parâmetros
[in] aWriter
O roteirista a ser usado para escrever a estrutura
[in] aStructureData
Um ponteiro para os dados c-structure a serem gravados com base no FieldDescriptor.
[in] aFieldPtr
FieldDescriptor para descrever a matriz c struct + TLV
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.
other
Outros erros podem ser retornados do aWriter.

WriteDataForType

WEAVE_ERROR WriteDataForType(
  TLVWriter & aWriter,
  void *aStructureData,
  const FieldDescriptor *& aFieldPtr,
  SerializedFieldType aType,
  bool aInArray
)

Uma função de escritor escreve uma entrada específica no TLV com base nos dados de estrutura.

Detalhes
Parâmetros
[in] aWriter
O roteirista a ser usado para escrever a estrutura
[in] aStructureData
Um ponteiro para os dados c-structure a serem gravados
[in,out] aFieldPtr
FieldDescriptor para descrever os campos e a tag TLV A função incrementa o ponteiro s.t. ele apontará para o próximo elemento na matriz FieldDescritor
[in] aType
O SerializedFieldType do campo.
[in] aInArray
Verdadeiro se estivermos escrevendo uma matriz (use a tag anônima)
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.
other
Outros erros podem ser retornados do aWriter.

WriteNullableDataForType

WEAVE_ERROR WriteNullableDataForType(
  TLVWriter & aWriter,
  void *aStructureData,
  const FieldDescriptor *& aFieldPtr,
  SerializedFieldType aType,
  bool aIsNullified
)

Uma função de gravação para verificar se os dados são anuláveis/anulados antes de gravar no TLV.

Detalhes
Parâmetros
[in] aWriter
O roteirista a ser usado para escrever a estrutura
[in] aStructureData
Um ponteiro para os dados c-structure a serem lidos
[in,out] aFieldPtr
FieldDescriptor para descrever os campos e a tag TLV A função incrementa o ponteiro s.t. ele apontará para o próximo elemento na matriz FieldDescriptor.
[in] aType
O SerializedFieldType do campo.
[in] aIsNullified
A tag TLV será anulada se esse valor for verdadeiro.
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.
other
Erros do TLV durante a gravação.

secondsToMilliseconds

uint32_t secondsToMilliseconds(
  uint32_t seconds
)