nl

Override di nlassert.h specifici per Weave.

Riepilogo

Enumerazioni

@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
Un elenco dei tipi di TLV da scrivere con un campo TLV.
SerializedFieldTypeBits enum
Bitfield di SerializedFieldType.
SerializedFieldTypeMasks enum
Maschere per l'accesso ai bit di SerializedFieldType.

Typedef

Base64CharToValFunct)(uint8_t c) typedef
uint8_t(*
Base64ValToCharFunct)(uint8_t val) typedef
char(*
MemoryAllocate)(size_t size) typedef
void *(*
Allocazione della memoria/punteggiatori di funzioni liberi.
MemoryFree)(void *ptr) typedef
void(*
MemoryReallocate)(void *ptr, size_t size) typedef
void *(*

Variabili

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 *
Elenco collegato di funzioni di formattazione degli errori.
sErrorStr[WEAVE_CONFIG_ERROR_STR_SIZE]
char
Buffer statico per archiviare la stringa di errore formattata.
sErrorStr[1024]
char
Questa routine restituisce una stringa C con terminazione NULL leggibile che descrive il codice di stato fornito associato al profilo specificato.
sWeaveErrorFormatter = { nl::Weave::FormatWeaveError, &sASN1ErrorFormatter }

Funzioni

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 *
Questa routine restituisce una stringa C con terminazione NULL leggibile che descrive l'errore fornito.
ExtractManufacturingDateFromSerialNumber(const char *serialNum, uint16_t & year, uint8_t & month, uint8_t & day)
FindNullifiedFieldsArray(void *aStructureData, const SchemaFieldDescriptor *aSchemaDescriptor, uint8_t *& aNullifiedFields)
Una funzione helper per trovare la posizione della matrice dei campi nulli situata alla fine dello struct 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
Genera una stringa C con terminazione NULL leggibile che descrive l'errore fornito.
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)
Una funzione di lettura per leggere una voce specifica dal TLV in base ai dati della struttura.
ReadNullableDataForType(TLVReader & aReader, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool & aIsNullified, SerializationContext *aContext)
Una funzione di lettura per verificare se è possibile annullare o annullare i dati prima di leggere dal TLV.
RegisterErrorFormatter(ErrorFormatter *errFormatter)
NL_DLL_EXPORT void
Aggiungi una nuova funzione di formattazione degli errori all'elenco globale dei formattatitori degli errori.
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)
Una funzione writer per convertire una struttura di dati in una struttura TLV.
SerializedDataToTLVWriterHelper(TLVWriter & aWriter, uint8_t aDataTag, void *aAppData)
Una funzione di scrittura wrapper che circonda SerializedDataToTLVWriter con un container.
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)
Una funzione di lettura per convertire TLV in uno struct C.
TLVReaderToDeserializedDataHelper(nl::Weave::TLV::TLVReader & aReader, uint8_t aDataTag, void *aAppData, SerializationContext *aContext)
Una funzione helper che deserializza un singolo elemento di dati TLV.
WriteArrayData(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *aFieldPtr)
Una funzione writer che scrive una struttura array.
WriteDataForType(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aInArray)
Una funzione writer scrive una voce specifica nel TLV in base ai dati della struttura.
WriteNullableDataForType(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aIsNullified)
Una funzione writer per verificare se i dati sono nulli o annullati prima di scrivere nel TLV.
secondsToMilliseconds(uint32_t seconds)
uint32_t

Strutture

nl::ArrayLengthAndBuffer

Un helper per il wrapping di un array con una lunghezza.

nl::ErrorFormatter
nl::FieldDescriptor

Struttura che descrive un campo TLV in una struttura di schema e lo collega ai dati in un c-struct.

nl::MemoryManagement

Uno struct C delle funzioni di allocazione/libera della memoria.

nl::SchemaFieldDescriptor

Esegui il wrapper intorno a un array di FieldDescriptor per descrivere la struttura/struttura di uno schema.

nl::SerializationContext

Un c-struct contenente qualsiasi contesto o stato necessario per la serializzazione o la deserializzazione.

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

Coppia di dati con una struttura c-struct di dati e lo structSchemaDescriptor per scrivere una struttura TLV basata su questi dati.

Spazi dei nomi

nl::ArgParser
nl::Ble

Questo spazio dei nomi include tutte le interfacce all'interno di Weave per Bluetooth Low Energy (BLE), noto anche come Bluetooth Smart.

nl::Inet
nl::NestCerts

Questo spazio dei nomi include simboli globali per i certificati dell'infrastruttura a chiave pubblica (PKI) di Nest Weave.

nl::PairingCode
nl::Caldo
nl::Weave

Enumerazioni

@357

 @357

@358

 @358

@359

 @359

@360

 @360

@361

 @361

SerializedFieldType

 SerializedFieldType

Un elenco dei tipi di TLV da scrivere con un campo TLV.

Proprietà
SerializedFieldTypeArray

Tipo di array.

SerializedFieldTypeBoolean

Tipo booleano.

SerializedFieldTypeByteString

Tipo di stringa di byte.

SerializedFieldTypeFloatingPoint32

Tipo in virgola mobile a 32 bit

SerializedFieldTypeFloatingPoint64

Tipo in virgola mobile a 64 bit

SerializedFieldTypeInt16

Tipo a 16 bit firmato.

SerializedFieldTypeInt32

Tipo a 32 bit firmato.

SerializedFieldTypeInt64

Tipo a 64 bit firmato.

SerializedFieldTypeInt8

Tipo a 8 bit firmato.

SerializedFieldTypeStructure

Tipo di struttura definita dall'utente.

SerializedFieldTypeUInt16

Tipo a 16 bit senza firma.

SerializedFieldTypeUInt32

Tipo a 32 bit senza firma.

SerializedFieldTypeUInt64

Tipo a 64 bit senza firma.

SerializedFieldTypeUInt8

Tipo a 8 bit senza firma.

SerializedFieldTypeUTF8String

Tipo di stringa UTF-8.

SerializedFieldTypeBits

 SerializedFieldTypeBits

Bitfield di SerializedFieldType.

SerializedFieldTypeMasks

 SerializedFieldTypeMasks

Maschere per l'accesso ai bit di SerializedFieldType.

Typedef

Base64CharToValFunct

uint8_t(* Base64CharToValFunct)(uint8_t c)

Base64ValToCharFunct

char(* Base64ValToCharFunct)(uint8_t val)

MemoryAllocate

void *(* MemoryAllocate)(size_t size)

Allocazione della memoria/punteggiatori di funzioni liberi.

MemoryFree

void(* MemoryFree)(void *ptr)

MemoryReallocate

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

Variabili

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

Elenco collegato di funzioni di formattazione degli errori.

sErrorStr

char sErrorStr[WEAVE_CONFIG_ERROR_STR_SIZE]

Buffer statico per archiviare la stringa di errore formattata.

sErrorStr

char sErrorStr[1024]

Questa routine restituisce una stringa C con terminazione NULL leggibile che descrive il codice di stato fornito associato al profilo specificato.

Dettagli
Parametri
[in] profileId
L'identificatore del profilo Weave associato a .
[in] statusCode
Il codice di stato in profileId per fornire una stringa descrittiva.
Restituisce
Un puntatore a una stringa C con terminazione NULL che descrive il codice di stato fornito all'interno del profilo specificato.
Vedi anche:
WEAVE_CONFIG_SHORT_ERROR_STR

sWeaveErrorFormatter

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

Funzioni

AdjustCalendarDate

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

CartoVal di 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
)

Decodifica Base6432

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

Decodifica Base6432

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
)

Codifica Base6432

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

Codifica Base6432

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

CartoVal URL Base64

uint8_t Base64URLCharToVal(
  uint8_t c
)

Decodifica URL Base64

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

Codifica URL Base64

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

Valore URL Base64ValToChar

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
)

Questa routine restituisce una stringa C con terminazione NULL leggibile che descrive l'errore fornito.

Dettagli
Parametri
[in] err
L'errore relativo al formato e alla descrizione.
Restituisce
Un puntatore a una stringa C con terminazione NULL che descrive l'errore fornito.

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
)

Una funzione helper per trovare la posizione della matrice dei campi nulli situata alla fine dello struct C.

Il membro nullified_fields dello struct C dovrebbe trovarsi direttamente dopo l'ultimo membro descritto dall'array di FieldDescriptors. Non è incluso nell'elenco dei descrittori di campo, in quanto intende essere un'utilità nascosta per gli autori e i consumatori di eventi con valori null. Questo membro struct non esiste per gli eventi senza campi null su cui è possibile assegnare valori. Tuttavia, in base alla creazione di setter e getter, non devono verificarsi accessi oltre i limiti.

Dettagli
Parametri
[in] aStructureData
Un puntatore al c-struct.
[in] aSchemaDescriptor
SchemaFieldDescriptors per descrivere lo struct c.
[out] aNullifiedFields
Un puntatore al membro nullified_fields dello struct c.
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.
WEAVE_ERROR_INVALID_ARGUMENT
Se il puntatore del descrittore di campo è NULL.
WEAVE_ERROR_INCORRECT_STATE
Se il formato dei descrittori di campo non corrisponde alle aspettative.

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
)

Genera una stringa C con terminazione NULL leggibile che descrive l'errore fornito.

Dettagli
Parametri
[in] buf
Buffer in cui verrà inserita la stringa di errore.
[in] bufSize
Dimensione in byte del buffer fornito.
[in] subsys
Una stringa breve che descrive il sottosistema che ha generato l'errore oppure NULL se l'origine dell'errore è sconosciuta o non disponibile. Questa stringa deve contenere al massimo 10 caratteri.
[in] err
L'errore da formattare.
[in] desc
Una stringa che descrive la causa o il significato dell'errore oppure NULL se non sono disponibili informazioni di questo tipo.

GetArrayElementSize

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

GetFlag

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

ÈBase34NoIOChar

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
)

Una funzione di lettura per leggere una voce specifica dal TLV in base ai dati della struttura.

Dettagli
Parametri
[in] aReader
Il lettore da utilizzare per la lettura nella struttura
[in] aStructureData
Un puntatore ai dati della struttura c da leggere
[in,out] aFieldPtr
FieldDescriptor per descrivere i campi e il tag TLV. La funzione aumenterà il puntatore s.t., puntando all'elemento successivo nell'array FieldDescritor
[in] aType
Il valore SerializedFieldType del campo
[in] aInArray
True se leggiamo un array (utilizza un tag anonimo)
[in] aContext
Contesto di serializzazione contenente qualsiasi stato richiesto per l'operazione.
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.
other
Altri errori che possono essere restituiti da aReader.

ReadNullableDataForType

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

Una funzione di lettura per verificare se è possibile annullare o annullare i dati prima di leggere dal TLV.

Dettagli
Parametri
[in] aReader
Il lettore da utilizzare per la lettura nella struttura
[in] aStructureData
Un puntatore ai dati della struttura c da leggere
[in,out] aFieldPtr
FieldDescriptor per descrivere i campi e il tag TLV. La funzione incrementa il cursore s.t. punterà all'elemento successivo nell'array FieldDescriptor
[in] aType
Il valore SerializedFieldType del campo
[out] aIsNullified
Impostalo per indicare che un campo è nullo.
[in] aContext
Contesto di serializzazione contenente qualsiasi stato richiesto per l'operazione.
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.
other
Errori TLV durante la scrittura.

RegisterErrorFormatter

NL_DLL_EXPORT void RegisterErrorFormatter(
  ErrorFormatter *errFormatter
)

Aggiungi una nuova funzione di formattazione degli errori all'elenco globale dei formattatitori degli errori.

Dettagli
Parametri
[in] errFormatter
Una struttura ErrorFormatter contenente un puntatore alla nuova funzione di errore. Tieni presente che un puntatore alla struttura ErrorFormatter fornita verrà mantenuto dalla funzione. Di conseguenza, la memoria della struttura deve rimanere riservata.

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
)

Una funzione writer per convertire una struttura di dati in una struttura TLV.

Utilizza uno SchemaFieldDescriptor per interpretare la struttura dei dati e scrivere nel TLV.

Dettagli
Parametri
[in] aWriter
L'autore da utilizzare per scrivere la struttura
[in] aStructureData
Un puntatore ai dati della struttura c da scrivere in base allo schema SchemaFieldDescriptor
[in] aFieldDescriptors
SchemaFieldDescriptors per descrivere lo struct c + TLV
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.
other
Altri errori che possono essere restituiti da aWriter.

SerializedDataToTLVWriterHelper

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

Una funzione di scrittura wrapper che circonda SerializedDataToTLVWriter con un container.

Suddivide anche uno StructureSchemaPointerPair in dati della struttura e descrittori da passare.

Dettagli
Parametri
[in] aWriter
L'autore da utilizzare per scrivere la struttura
[in] aDataTag
Tag da scrivere
[in] aAppData
StructureSchemaPointerPair che contiene un puntatore alla struttura di dati e descrittori di campo. void* a causa del prototipo
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.
other
Altri errori che possono essere restituiti da 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
)

Una funzione di lettura per convertire TLV in uno struct C.

Utilizza un campo SchemaFieldDescriptor per interpretare la struttura dei dati.

Deve essere efficace sia per integrare campi sconosciuti sia per evitare di incontrare campi previsti.

Dettagli
Parametri
[in] aReader
Il lettore da utilizzare per leggere i dati
[in] aStructureData
Un puntatore ai dati della struttura c di destinazione in cui leggeremo in base allo schema SchemaFieldDescriptor
[in] aFieldDescriptors
SchemaFieldDescriptors per descrivere lo struct c + TLV
[in] aContext
Contesto di serializzazione contenente qualsiasi stato richiesto per l'operazione.
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.
other
Altri errori che potrebbero essere restituiti da aReader.

TLVReaderToDeserializedDataHelper

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

Una funzione helper che deserializza un singolo elemento di dati TLV.

La funzione suddivide StructureSchemaPointerPair in dati della struttura e descrittori da passare a ReadDataForType.

Dettagli
Parametri
[in] aReader
Il lettore contenente i dati da deserializzare
[in] aDataTag
Non utilizzato al momento
[in] aAppData
StructureSchemaPointerPair che contiene un puntatore alla struttura di dati e descrittori di campo. void* a causa del prototipo
[in] aContext
Contesto di serializzazione contenente qualsiasi stato richiesto per l'operazione.
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.
other
Altri errori che possono essere restituiti da aReader.

WriteArrayData

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

Una funzione writer che scrive una struttura array.

Dettagli
Parametri
[in] aWriter
L'autore da utilizzare per scrivere la struttura
[in] aStructureData
Un puntatore ai dati della struttura c da scrivere in base al parametro FieldDescriptor
[in] aFieldPtr
FieldDescriptor per descrivere lo struct c dell'array + TLV
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.
other
Altri errori che possono essere restituiti da aWriter.

WriteDataForType

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

Una funzione writer scrive una voce specifica nel TLV in base ai dati della struttura.

Dettagli
Parametri
[in] aWriter
L'autore da utilizzare per scrivere la struttura
[in] aStructureData
Un puntatore ai dati della struttura c da scrivere
[in,out] aFieldPtr
FieldDescriptor per descrivere i campi e il tag TLV. La funzione aumenterà il puntatore s.t., puntando all'elemento successivo nell'array FieldDescritor
[in] aType
Il valore SerializedFieldType del campo
[in] aInArray
True se stiamo scrivendo un array (utilizza un tag anonimo)
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.
other
Altri errori che possono essere restituiti da aWriter.

WriteNullableDataForType

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

Una funzione writer per verificare se i dati sono nulli o annullati prima di scrivere nel TLV.

Dettagli
Parametri
[in] aWriter
L'autore da utilizzare per scrivere la struttura
[in] aStructureData
Un puntatore ai dati della struttura c da leggere
[in,out] aFieldPtr
FieldDescriptor per descrivere i campi e il tag TLV. La funzione incrementa il cursore s.t. punterà all'elemento successivo nell'array FieldDescriptor
[in] aType
Il valore SerializedFieldType del campo
[in] aIsNullified
Il tag TLV verrà annullato se questo è vero.
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.
other
Errori TLV durante la scrittura.

secondsToMilliseconds

uint32_t secondsToMilliseconds(
  uint32_t seconds
)