Нидерланды

Переопределения nlassert.h, специфичные для Weave.

Краткое содержание

Перечисления

@357 перечисление
@358 перечисление
@359 перечисление
@360 перечисление
@361 перечисление
SerializedFieldType {
SerializedFieldTypeBoolean = 0x00,
SerializedFieldTypeUInt8 ,
SerializedFieldTypeUInt16 ,
SerializedFieldTypeUInt32 ,
SerializedFieldTypeUInt64 ,
SerializedFieldTypeInt8 ,
SerializedFieldTypeInt16 ,
SerializedFieldTypeInt32 ,
SerializedFieldTypeInt64 ,
SerializedFieldTypeFloatingPoint32 ,
SerializedFieldTypeFloatingPoint64 ,
SerializedFieldTypeUTF8String ,
SerializedFieldTypeByteString ,
SerializedFieldTypeStructure ,
SerializedFieldTypeArray
}
перечисление
Список типов TLV для записи в поле TLV.
SerializedFieldTypeBits перечисление
Битовое поле SerializedFieldType.
SerializedFieldTypeMasks перечисление
Маски для доступа к битам SerializedFieldType.

Определения типов

Base64CharToValFunct )(uint8_t c) определение типа
uint8_t(*
Base64ValToCharFunct )(uint8_t val) определение типа
char(*
MemoryAllocate )(size_t size) определение типа
void *(*
Указатели на функции выделения/освобождения памяти.
MemoryFree )(void *ptr) определение типа
void(*
MemoryReallocate )(void *ptr, size_t size) определение типа
void *(*

Переменные

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
Связанный список функций форматирования ошибок.
sErrorStr [WEAVE_CONFIG_ERROR_STR_SIZE]
char
Статический буфер для хранения форматированной строки ошибки.
sErrorStr [1024]
char
Эта процедура возвращает удобочитаемую строку C с завершающим NULL, описывающую предоставленный код состояния, связанный с указанным профилем.
sWeaveErrorFormatter = { nl::Weave::FormatWeaveError, &sASN1ErrorFormatter }

Функции

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 *
Эта процедура возвращает удобочитаемую строку C с завершающим NULL, описывающую предоставленную ошибку.
ExtractManufacturingDateFromSerialNumber (const char *serialNum, uint16_t & year, uint8_t & month, uint8_t & day)
FindNullifiedFieldsArray (void *aStructureData, const SchemaFieldDescriptor *aSchemaDescriptor, uint8_t *& aNullifiedFields)
Вспомогательная функция для поиска расположения массива обнулённых полей, расположенного в конце структуры 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
Создает удобочитаемую строку C с завершающим NULL, описывающую предоставленную ошибку.
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)
Функция чтения для чтения определенной записи из TLV на основе данных структуры.
ReadNullableDataForType ( TLVReader & aReader, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool & aIsNullified, SerializationContext *aContext)
Функция чтения для проверки того, являются ли данные обнуляемыми перед чтением из TLV.
RegisterErrorFormatter ( ErrorFormatter *errFormatter)
NL_DLL_EXPORT void
Добавьте новую функцию форматирования ошибок в глобальный список средств форматирования ошибок.
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)
Функция записи для преобразования структуры данных в структуру TLV.
SerializedDataToTLVWriterHelper ( TLVWriter & aWriter, uint8_t aDataTag, void *aAppData)
Функция записи оболочки, которая окружает SerializedDataToTLVWriter контейнером.
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)
Функция чтения для преобразования TLV в C-структуру.
TLVReaderToDeserializedDataHelper ( nl::Weave::TLV::TLVReader & aReader, uint8_t aDataTag, void *aAppData, SerializationContext *aContext)
Вспомогательная функция, десериализующая один элемент данных TLV.
WriteArrayData ( TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *aFieldPtr)
Функция записи, которая записывает структуру массива.
WriteDataForType ( TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aInArray)
Функция записи записывает определенную запись в TLV на основе данных структуры.
WriteNullableDataForType ( TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aIsNullified)
Функция записи, проверяющая, являются ли данные обнуляемыми перед записью в TLV.
secondsToMilliseconds (uint32_t seconds)
uint32_t

Структуры

nl::ArrayLengthAndBuffer

Помощник для переноса массива по длине.

nl::ErrorFormatter
nl::Филддескриптор

Структура, описывающая поле TLV в структуре схемы и соединяющая его с данными в c-структуре.

nl:: Управление памятью

c-структура функций выделения/освобождения памяти.

nl:: SchemaFieldDescriptor

Обертка вокруг массива FieldDescriptors для описания структуры/структуры схемы.

nl::Контекст сериализации

c-структура, содержащая любой контекст или состояние, необходимое для сериализации или десериализации.

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:: СтруктурСхемаПоинтерПаир

Пара данных с c-структурой данных и StructureSchemaDescriptor для записи структуры TLV на основе этих данных.

Пространства имен

nl:: АргПарсер
нл:: Бле

Это пространство имен включает в себя все интерфейсы Weave для Bluetooth Low Energy (BLE), также известные как Bluetooth Smart.

nl::Инет
нл:: Нестцертс

Это пространство имен включает глобальные символы для сертификатов инфраструктуры открытых ключей (PKI) Nest Weave.

nl:: PairingCode
nl:: Теплый
nl:: Плетение

Перечисления

@357

 @357

@358

 @358

@359

 @359

@360

 @360

@361

 @361

СериализованноеПолеТип

 SerializedFieldType

Список типов TLV для записи в поле TLV.

Характеристики
SerializedFieldTypeArray

Тип массива.

SerializedFieldTypeBoolean

Булев тип.

SerializedFieldTypeByteString

Тип байтовой строки.

SerializedFieldTypeFloatingPoint32

32-битный тип с плавающей запятой

SerializedFieldTypeFloatingPoint64

64-битный тип с плавающей запятой

SerializedFieldTypeInt16

Знаковый 16-битный тип.

SerializedFieldTypeInt32

Знаковый 32-битный тип.

SerializedFieldTypeInt64

Знаковый 64-битный тип.

SerializedFieldTypeInt8

Знаковый 8-битный тип.

SerializedFieldTypeStructure

Тип структуры, определяемый пользователем.

SerializedFieldTypeUInt16

Беззнаковый 16-битный тип.

SerializedFieldTypeUInt32

Беззнаковый 32-битный тип.

SerializedFieldTypeUInt64

Беззнаковый 64-битный тип.

SerializedFieldTypeUInt8

Беззнаковый 8-битный тип.

SerializedFieldTypeUTF8String

Тип строки UTF-8.

СериализованноеFieldTypeBits

 SerializedFieldTypeBits

Битовое поле SerializedFieldType.

Маски сериализованного полятипе

 SerializedFieldTypeMasks

Маски для доступа к битам SerializedFieldType.

Определения типов

Base64CharToValFunct

uint8_t(* Base64CharToValFunct)(uint8_t c)

Base64ValToCharFunct

char(* Base64ValToCharFunct)(uint8_t val)

Выделение памяти

void *(* MemoryAllocate)(size_t size)

Указатели на функции выделения/освобождения памяти.

ПамятьБесплатно

void(* MemoryFree)(void *ptr)

Перераспределение памяти

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

Переменные

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 *)                  
}

серрорформаттерлист

const ErrorFormatter * sErrorFormatterList = &sWeaveErrorFormatter

Связанный список функций форматирования ошибок.

сErrorStr

char sErrorStr[WEAVE_CONFIG_ERROR_STR_SIZE]

Статический буфер для хранения форматированной строки ошибки.

сErrorStr

char sErrorStr[1024]

Эта процедура возвращает удобочитаемую строку C с завершающим NULL, описывающую предоставленный код состояния, связанный с указанным профилем.

Подробности
Параметры
[in] profileId
Идентификатор профиля Weave, связанный с файлом .
[in] statusCode
Код состояния в ProfileId , для которого требуется предоставить описательную строку.
Возврат
Указатель на строку C, завершающуюся NULL, описывающую предоставленный код состояния в указанном профиле.
См. также:
WEAVE_CONFIG_SHORT_ERROR_STR

sWeaveErrorFormatter

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

Функции

НастроитьКалендарьДата

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

Base64CharToVal

uint8_t Base64CharToVal(
  uint8_t c
)

Base64декодирование

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

Base64декодирование

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
)

Base64URLDecode

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

Base64URLEncode

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
)

Календарьдатетоординалдате

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
)

Очиститьфлаг

void ClearFlag(
  FlagsT & inFlags,
  const FlagT inFlag
)

ДатаДоПроизводственнойНедели

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

ДниВМесяце

uint8_t DaysInMonth(
  uint16_t year,
  uint8_t month
)

ДнейСЭпохиToКалендарьДата

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

ДнейДоМарта1

uint8_t DaysToMarch1(
  uint16_t year
)

Освободить десериализованную структуру

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

ErrorStr

NL_DLL_EXPORT const char * ErrorStr(
  int32_t err
)

Эта процедура возвращает удобочитаемую строку C с завершающим NULL, описывающую предоставленную ошибку.

Подробности
Параметры
[in] err
Ошибка формата и описания.
Возврат
Указатель на строку C, завершающуюся NULL, описывающую предоставленную ошибку.

Извлечь дату производства из серийного номера

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

НайтиNullifiedFieldsArray

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

Вспомогательная функция для поиска расположения массива обнулённых полей, расположенного в конце структуры C.

Ожидается, что член nullified_fields структуры C будет расположен сразу после последнего члена, описанного массивом FieldDescriptors. Его нет в списке дескрипторов полей, поскольку он предназначен для скрытой утилиты для создателей и потребителей событий, допускающих значение NULL. Этот член структуры не существует для событий без полей, допускающих значение NULL, однако благодаря конструкции установщиков и геттеров не должно происходить никаких выходов за пределы.

Подробности
Параметры
[in] aStructureData
Указатель на c-структуру.
[in] aSchemaDescriptor
SchemaFieldDescriptors для описания структуры c.
[out] aNullifiedFields
Указатель на член nullified_fields структуры c.
Возвращаемые значения
WEAVE_NO_ERROR
Об успехе.
WEAVE_ERROR_INVALID_ARGUMENT
Если указатель дескриптора поля равен NULL.
WEAVE_ERROR_INCORRECT_STATE
Если формат дескрипторов полей не соответствует ожидаемому.

Найтистатусрепортстр

const char * FindStatusReportStr(
  uint32_t inProfileId,
  uint16_t inStatusCode
)

Первый будний день года

uint8_t FirstWeekdayOfYear(
  uint16_t year
)

Ошибка формата

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

Создает удобочитаемую строку C с завершающим NULL, описывающую предоставленную ошибку.

Подробности
Параметры
[в] буф
Буфер, в который будет помещена строка ошибки.
[in] bufSize
Размер предоставленного буфера в байтах.
[в] подсистеме
Короткая строка, описывающая подсистему, вызвавшую ошибку, или NULL, если источник ошибки неизвестен/недоступен. Эта строка должна содержать не более 10 символов.
[в] ошибка
Ошибка форматирования.
[в] описание
Строка, описывающая причину или значение ошибки, или NULL, если такая информация отсутствует.

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
)

Исвалидфилдтипе

bool IsValidFieldType(
  SerializedFieldType aType
)

Исвалидсерийный номер

bool IsValidSerialNumber(
  const char *serialNum
)

ЖурналСобытие

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

ЖурналСобытие

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

ПроизводствоНеделяToDate

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

МартНа основеДняГодаМесяца

uint8_t MarchBasedDayOfYearToMonth(
  uint16_t dayOfYear
)

МартНа основеМесяцаToДеньГода

uint16_t MarchBasedMonthToDayOfYear(
  uint8_t month
)

NullifyAllEventFields

void NullifyAllEventFields(
  TEvent *aEvent
)

Ординалдатетокалендардате

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

Реаддатафортипе

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

Функция чтения для чтения определенной записи из TLV на основе данных структуры.

Подробности
Параметры
[в] aReader
Читатель, используемый для чтения в структуре
[в] aStructureData
Указатель на данные c-структуры для чтения.
[вход, выход] aFieldPtr
FieldDescriptor для описания полей и тега TLV. Функция увеличит указатель, который будет указывать на следующий элемент массива FieldDescritor.
[в] aType
SerializedFieldType поля
[в] aInArray
Истинно, если мы читаем массив (используйте анонимный тег)
[в] Контекст
Контекст сериализации, содержащий любое состояние, необходимое для операции.
Возвращаемые значения
WEAVE_NO_ERROR
Об успехе.
другой
Другие ошибки, которые могут быть возвращены aReader.

Реаднуллабледатафортипе

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

Функция чтения для проверки того, являются ли данные обнуляемыми перед чтением из TLV.

Подробности
Параметры
[в] aReader
Читатель, используемый для чтения в структуре
[в] aStructureData
Указатель на данные c-структуры для чтения.
[вход, выход] aFieldPtr
FieldDescriptor для описания полей и тега TLV. Функция увеличит указатель, который будет указывать на следующий элемент в массиве FieldDescriptor.
[в] aType
SerializedFieldType поля
[выход]
Устанавливается, чтобы указать, что поле обнулено.
[в] Контекст
Контекст сериализации, содержащий любое состояние, необходимое для операции.
Возвращаемые значения
WEAVE_NO_ERROR
Об успехе.
другой
Ошибки TLV при записи.

РегистрацияErrorFormatter

NL_DLL_EXPORT void RegisterErrorFormatter(
  ErrorFormatter *errFormatter
)

Добавьте новую функцию форматирования ошибок в глобальный список средств форматирования ошибок.

Подробности
Параметры
[в] errFormatter
Структура ErrorFormatter, содержащая указатель на новую функцию ошибки. Обратите внимание, что функция сохранит указатель на предоставленную структуру ErrorFormatter. Таким образом, память для структуры должна оставаться зарезервированной.

СекундыСЭпохиToКалендарьВремя

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

Сериализованные данныеToTLVWriter

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

Функция записи для преобразования структуры данных в структуру TLV.

Использует SchemaFieldDescriptor для интерпретации структуры данных и записи в TLV.

Подробности
Параметры
[в] Писатель
Писатель, используемый для записи структуры
[в] aStructureData
Указатель на данные c-структуры для записи на основе SchemaFieldDescriptor.
[в] дескрипторы поля
SchemaFieldDescriptors для описания структуры c + TLV
Возвращаемые значения
WEAVE_NO_ERROR
Об успехе.
другой
Другие ошибки, которые могут быть возвращены aWriter.

SerializedDataToTLVWriterHelper

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

Функция записи оболочки, которая окружает SerializedDataToTLVWriter контейнером.

Также разбивает StructureSchemaPointerPair на данные структуры и дескрипторы для передачи.

Подробности
Параметры
[в] Писатель
Писатель, используемый для записи структуры
[в] aDataTag
Отметить, чтобы написать
[в] aAppData
StructureSchemaPointerPair, содержащий указатель на данные структуры и дескрипторы полей. недействительно* из-за прототипа
Возвращаемые значения
WEAVE_NO_ERROR
Об успехе.
другой
Другие ошибки, которые могут быть возвращены aWriter.

SetFlag

void SetFlag(
  FlagsT & inFlags,
  const FlagT inFlag
)

SetFlag

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

Статусрепортстр

const char * StatusReportStr(
  uint32_t profileId,
  uint16_t statusCode
)

Тлвриадертодесериализованные данные

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

Функция чтения для преобразования TLV в C-структуру.

Использует SchemaFieldDescriptor для интерпретации структуры данных.

Он должен быть устойчивым как к обнаружению неизвестных полей, так и к невстрече ожидаемого поля.

Подробности
Параметры
[в] aReader
Читатель, который будет использоваться для чтения данных
[в] aStructureData
Указатель на целевые данные c-структуры, которые мы будем читать на основе SchemaFieldDescriptor.
[в] дескрипторы поля
SchemaFieldDescriptors для описания структуры c + TLV
[в] Контекст
Контекст сериализации, содержащий любое состояние, необходимое для операции.
Возвращаемые значения
WEAVE_NO_ERROR
Об успехе.
другой
Другие ошибки, которые могут быть возвращены aReader.

TLVReaderToDeserializedDataHelper

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

Вспомогательная функция, десериализующая один элемент данных TLV.

Функция разбивает StructureSchemaPointerPair на данные структуры и дескрипторы для передачи в ReadDataForType.

Подробности
Параметры
[в] aReader
Читатель, содержащий данные для десериализации
[в] aDataTag
На данный момент не используется
[в] aAppData
StructureSchemaPointerPair, содержащий указатель на данные структуры и дескрипторы полей. недействительно* из-за прототипа
[в] Контекст
Контекст сериализации, содержащий любое состояние, необходимое для операции.
Возвращаемые значения
WEAVE_NO_ERROR
Об успехе.
другой
Другие ошибки, которые могут быть возвращены aReader.

WriteArrayData

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

Функция записи, которая записывает структуру массива.

Подробности
Параметры
[в] Писатель
Писатель, используемый для записи структуры
[в] aStructureData
Указатель на данные c-структуры для записи на основе FieldDescriptor.
[в] aFieldPtr
FieldDescriptor для описания массива c struct + TLV
Возвращаемые значения
WEAVE_NO_ERROR
Об успехе.
другой
Другие ошибки, которые могут быть возвращены aWriter.

WriteDataForType

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

Функция записи записывает определенную запись в TLV на основе данных структуры.

Подробности
Параметры
[в] Писатель
Писатель, используемый для записи структуры
[в] aStructureData
Указатель на данные c-структуры для записи.
[вход, выход] aFieldPtr
FieldDescriptor для описания полей и тега TLV. Функция увеличит указатель, который будет указывать на следующий элемент массива FieldDescritor.
[в] aType
SerializedFieldType поля
[в] aInArray
Истинно, если мы пишем массив (используйте анонимный тег)
Возвращаемые значения
WEAVE_NO_ERROR
Об успехе.
другой
Другие ошибки, которые могут быть возвращены aWriter.

WriteNullableDataForType

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

Функция записи, проверяющая, являются ли данные обнуляемыми перед записью в TLV.

Подробности
Параметры
[в] Писатель
Писатель, используемый для записи структуры
[в] aStructureData
Указатель на данные c-структуры для чтения.
[вход, выход] aFieldPtr
FieldDescriptor для описания полей и тега TLV. Функция увеличит указатель, который будет указывать на следующий элемент в массиве FieldDescriptor.
[в] aType
SerializedFieldType поля
[в] aIsNullified
Если это правда, тег TLV будет аннулирован.
Возвращаемые значения
WEAVE_NO_ERROR
Об успехе.
другой
Ошибки TLV при записи.

секундыToМиллисекунды

uint32_t secondsToMilliseconds(
  uint32_t seconds
)