nl

Zastąpienia nlassert.h specyficzne dla Weave.

Podsumowanie

Wyliczenia

@357 enum | typ wyliczeniowy
@358 enum | typ wyliczeniowy
@359 enum | typ wyliczeniowy
@360 enum | typ wyliczeniowy
@361 enum | typ wyliczeniowy
SerializedFieldType{
  SerializedFieldTypeBoolean = 0x00,
  SerializedFieldTypeUInt8,
  SerializedFieldTypeUInt16,
  SerializedFieldTypeUInt32,
  SerializedFieldTypeUInt64,
  SerializedFieldTypeInt8,
  SerializedFieldTypeInt16,
  SerializedFieldTypeInt32,
  SerializedFieldTypeInt64,
  SerializedFieldTypeFloatingPoint32,
  SerializedFieldTypeFloatingPoint64,
  SerializedFieldTypeUTF8String,
  SerializedFieldTypeByteString,
  SerializedFieldTypeStructure,
  SerializedFieldTypeArray
}
enum | typ wyliczeniowy
Lista typów TLV do zapisu za pomocą pola TLV.
SerializedFieldTypeBits enum | typ wyliczeniowy
Pole bitowe typu SerializedFieldType.
SerializedFieldTypeMasks enum | typ wyliczeniowy
Maski umożliwiające dostęp do bitów obiektu SerializedFieldType.

Definiuje typ

Base64CharToValFunct)(uint8_t c) typedef
uint8_t(*
Base64ValToCharFunct)(uint8_t val) typedef
char(*
MemoryAllocate)(size_t size) typedef
void *(*
Przydzielanie/wolne wskaźniki funkcji w pamięci.
MemoryFree)(void *ptr) typedef
void(*
MemoryReallocate)(void *ptr, size_t size) typedef
void *(*

Zmienne

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 *
Połączona lista funkcji formatowania błędów.
sErrorStr[WEAVE_CONFIG_ERROR_STR_SIZE]
char
Bufor statyczny do przechowywania sformatowanego ciągu błędu.
sErrorStr[1024]
char
Ta procedura zwraca zrozumiały dla człowieka ciąg C z zakończeniem NULL i opisujący podany kod stanu powiązany z określonym profilem.
sWeaveErrorFormatter = { nl::Weave::FormatWeaveError, &sASN1ErrorFormatter }

Funkcje

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 *
Ta procedura zwraca zrozumiały dla człowieka ciąg C z zakończeniem NULL. Opisuje podany błąd.
ExtractManufacturingDateFromSerialNumber(const char *serialNum, uint16_t & year, uint8_t & month, uint8_t & day)
FindNullifiedFieldsArray(void *aStructureData, const SchemaFieldDescriptor *aSchemaDescriptor, uint8_t *& aNullifiedFields)
Funkcja pomocnicza do znajdowania lokalizacji tablicy pól o wartości null, która znajduje się na końcu struktury typu 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
Generuje zrozumiały dla człowieka ciąg C z zakończeniem NULL i opisujący podany błąd.
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)
Funkcja czytnika umożliwiająca odczyt określonego wpisu z TLV na podstawie danych strukturalnych.
ReadNullableDataForType(TLVReader & aReader, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool & aIsNullified, SerializationContext *aContext)
Funkcja czytnika sprawdzająca, czy dane mogą być null/nullowe przed odczytem z TLV.
RegisterErrorFormatter(ErrorFormatter *errFormatter)
NL_DLL_EXPORT void
Dodaj nową funkcję formatowania błędów do globalnej listy programów do formatowania błędów.
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)
Funkcja zapisująca do konwertowania struktury danych na strukturę TLV.
SerializedDataToTLVWriterHelper(TLVWriter & aWriter, uint8_t aDataTag, void *aAppData)
Funkcja zapisującego kod, która otacza element SerializedDataToTLVWriter kontenerem.
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)
Funkcja czytnika służąca do konwertowania TLV na format C-struct.
TLVReaderToDeserializedDataHelper(nl::Weave::TLV::TLVReader & aReader, uint8_t aDataTag, void *aAppData, SerializationContext *aContext)
Funkcja pomocnicza, która deserializuje pojedynczy element danych TLV.
WriteArrayData(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *aFieldPtr)
Funkcja zapisująca, która zapisuje strukturę tablicy.
WriteDataForType(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aInArray)
Funkcja zapisująca zapisuje określony wpis w TLV na podstawie danych strukturalnych.
WriteNullableDataForType(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aIsNullified)
Funkcja zapisująca, która sprawdza, czy dane mogą być nulle/null podane przed zapisem do TLV.
secondsToMilliseconds(uint32_t seconds)
uint32_t

Struktura

nl::ArrayLengthAndBuffer

Pomocnik do zawijania tablicy zawierającej długość.

nl::ErrorFormatter
nl::FieldDescriptor

Struktura opisująca pole TLV w strukturze schematu i łącząc je z danymi w strukturze c-struct.

nl::Zarządzanie pamięcią

Struktura c funkcji przydzielania/wolności pamięci.

nl::SchemaFieldDescriptor

Otaczaj tablicę deskryptorów FieldDescriptor w celu opisania struktury/struktury schematu.

nl::SerializationContext

Struktura c zawierająca dowolny kontekst lub stan potrzebny do serializacji lub deserializacji.

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

Połączenie danych z strukturą c-struct danych i elementem StructuredSchemaDescriptor, który służy do zapisu struktury TLV na podstawie tych danych.

Przestrzenie nazw

nl::ArgParser
nl::Ble

Ta przestrzeń nazw obejmuje wszystkie interfejsy Weave for Bluetooth Low Energy (BLE), znane też jako Bluetooth Smart.

nl::Inet
nl::NestCerts

Ta przestrzeń nazw zawiera symbole globalne dla certyfikatów infrastruktury klucza publicznego Nest Weave (PKI).

nl::PairingCode
nl::Ciepło
nl::Weave

Wyliczenia

@357

 @357

@358

 @358

@359

 @359

@360°

 @360

@361

 @361

SerializedFieldType

 SerializedFieldType

Lista typów TLV do zapisu za pomocą pola TLV.

Właściwości
SerializedFieldTypeArray

Typ tablicy.

SerializedFieldTypeBoolean

Typ wartości logicznej.

SerializedFieldTypeByteString

Typ ciągu bajtów.

SerializedFieldTypeFloatingPoint32

32-bitowy typ zmiennoprzecinkowy

SerializedFieldTypeFloatingPoint64

64-bitowy typ zmiennoprzecinkowy

SerializedFieldTypeInt16

Podpisany typ 16-bitowy.

SerializedFieldTypeInt32

Podpisany typ 32-bitowy.

SerializedFieldTypeInt64

Podpisany typ 64-bitowy.

SerializedFieldTypeInt8

Podpisany typ 8-bitowy.

SerializedFieldTypeStructure

Typ struktury zdefiniowany przez użytkownika.

SerializedFieldTypeUInt16

16-bitowy typ bez znaku.

SerializedFieldTypeUInt32

32-bitowy typ bez znaku.

SerializedFieldTypeUInt64

Typ 64-bitowy bez znaku.

SerializedFieldTypeUInt8

Typ 8-bitowy bez znaku.

SerializedFieldTypeUTF8String

Typ ciągu znaków UTF-8.

SerializedFieldTypeBits

 SerializedFieldTypeBits

Pole bitowe typu SerializedFieldType.

SerializedFieldTypeMasks

 SerializedFieldTypeMasks

Maski umożliwiające dostęp do bitów obiektu SerializedFieldType.

Definiuje typ

Base64CharToValFunct

uint8_t(* Base64CharToValFunct)(uint8_t c)

Base64ValToCharFunct

char(* Base64ValToCharFunct)(uint8_t val)

MemoryAllocate

void *(* MemoryAllocate)(size_t size)

Przydzielanie/wolne wskaźniki funkcji w pamięci.

MemoryFree

void(* MemoryFree)(void *ptr)

MemoryReallocate

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

Zmienne

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

Połączona lista funkcji formatowania błędów.

sErrorStr

char sErrorStr[WEAVE_CONFIG_ERROR_STR_SIZE]

Bufor statyczny do przechowywania sformatowanego ciągu błędu.

sErrorStr

char sErrorStr[1024]

Ta procedura zwraca zrozumiały dla człowieka ciąg C z zakończeniem NULL i opisujący podany kod stanu powiązany z określonym profilem.

Szczegóły
Parametry
[in] profileId
Identyfikator profilu Weave powiązany z domeną .
[in] statusCode
Kod stanu w polu profileId, który ma zawierać opisowy ciąg znaków.
Zwroty
Wskaźnik do ciągu znaków C z wartością NULL i opisującego kod stanu w określonym profilu.
Zobacz też:
WEAVE_CONFIG_SHORT_ERROR_STR

sWeaveErrorFormatter

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

Funkcje

AdjustCalendarDate

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

Base64CharToVal,

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
)

Dekodowanie32 Base64

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

Dekodowanie32 Base64

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
)

Kodowanie Base64Encode32

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

Kodowanie Base64Encode32

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

Base64URLCharToVal,

uint8_t Base64URLCharToVal(
  uint8_t c
)

Dekodowanie Base64URLdecode

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

Kodowanie Base64URL

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
)

Ta procedura zwraca zrozumiały dla człowieka ciąg C z zakończeniem NULL. Opisuje podany błąd.

Szczegóły
Parametry
[in] err
Błąd formatu i opisania.
Zwroty
Wskaźnik do ciągu znaków C z wartością NULL i opisującego podany błąd.

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
)

Funkcja pomocnicza do znajdowania lokalizacji tablicy pól o wartości null, która znajduje się na końcu struktury typu C.

Element nullified_fields struktury C powinien znajdować się bezpośrednio po ostatnim elemencie opisanym przez tablicę FieldDescriptors. Nie ma go na liście deskryptorów pól, ponieważ ma być ukrytym narzędziem dla twórców i konsumentów ze zdarzeniami dopuszczającymi wartości null. Ten element struct nie istnieje w przypadku zdarzeń bez pól dopuszczalnych wartości null, jednak ze względu na konstrukcję ustawień i pobierających nie powinny wystąpić dostępy poza granicami.

Szczegóły
Parametry
[in] aStructureData
Wskaźnik do struktury c.
[in] aSchemaDescriptor
SchemaFieldDescriptors do opisania struktury c.
[out] aNullifiedFields
Wskaźnik do elementu nullified_fields elementu struktury c.
Zwracane wartości
WEAVE_NO_ERROR
Powodzenie.
WEAVE_ERROR_INVALID_ARGUMENT
Jeśli wskaźnik deskryptora pola ma wartość NULL.
WEAVE_ERROR_INCORRECT_STATE
Jeśli format deskryptorów pól nie jest zgodny z oczekiwaniami.

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
)

Generuje zrozumiały dla człowieka ciąg C z zakończeniem NULL i opisujący podany błąd.

Szczegóły
Parametry
[in] buf
Bufor, w którym zostanie umieszczony ciąg znaków błędu.
[in] bufSize
Rozmiar dostarczonego bufora w bajtach.
[in] subsys
Krótki ciąg znaków opisujący podsystem, który był źródłem błędu, lub wartość NULL, jeśli źródło błędu jest nieznane lub niedostępne. Może on mieć maksymalnie 10 znaków.
[in] err
Błąd do sformatowania.
[in] desc
Ciąg tekstowy opisujący przyczynę lub znaczenie błędu lub wartość NULL, jeśli takie informacje nie są dostępne.

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
)

Funkcja czytnika umożliwiająca odczyt określonego wpisu z TLV na podstawie danych strukturalnych.

Szczegóły
Parametry
[in] aReader
Czytnik, który ma być używany do czytania w strukturze
[in] aStructureData
Wskaźnik do danych struktury c do odczytu
[in,out] aFieldPtr
FieldDescriptor do opisania pól i tagu TLV. Ta funkcja zwiększy pozycję wskaźnika . będzie wskazywał następny element w tablicy FieldDescritor
[in] aType
Wartość SerializedFieldType pola.
[in] aInArray
Prawda, jeśli odczytuje się tablicę (użyj anonimowego tagu)
[in] aContext
Kontekst serializacji zawierający dowolny stan wymagany do wykonania operacji.
Zwracane wartości
WEAVE_NO_ERROR
Powodzenie.
other
Inne błędy, które mogą zostać zwrócone przez czytnik aReader.

ReadNullableDataForType

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

Funkcja czytnika sprawdzająca, czy dane mogą być null/nullowe przed odczytem z TLV.

Szczegóły
Parametry
[in] aReader
Czytnik, który ma być używany do czytania w strukturze
[in] aStructureData
Wskaźnik do danych struktury c do odczytu
[in,out] aFieldPtr
FieldDescriptor do opisania pól i tagu TLV. Ta funkcja zwiększy pozycję wskaźnika . będzie wskazywał następny element tablicy FieldDescriptor
[in] aType
Wartość SerializedFieldType pola.
[out] aIsNullified
Ustaw wskazuje, że pole jest puste.
[in] aContext
Kontekst serializacji zawierający dowolny stan wymagany do wykonania operacji.
Zwracane wartości
WEAVE_NO_ERROR
Powodzenie.
other
Błędy TLV podczas zapisu.

RegisterErrorFormatter

NL_DLL_EXPORT void RegisterErrorFormatter(
  ErrorFormatter *errFormatter
)

Dodaj nową funkcję formatowania błędów do globalnej listy programów do formatowania błędów.

Szczegóły
Parametry
[in] errFormatter
Struktura ErrorFormatter zawierająca wskaźnik do nowej funkcji błędu. Pamiętaj, że wskaźnik do podanej struktury ErrorFormatter zostanie zachowany przez funkcję. Dlatego pamięć dla struktury musi pozostać zarezerwowana.

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
)

Funkcja zapisująca do konwertowania struktury danych na strukturę TLV.

Używa elementu SchemaFieldDescriptor do interpretacji struktury danych i zapisu w elemencie TLV.

Szczegóły
Parametry
[in] aWriter
Autor, który ma opisywać strukturę
[in] aStructureData
Wskaźnik do danych struktury c do zapisania na podstawie obiektu SchemaFieldDescriptor
[in] aFieldDescriptors
Deskryptory schemaFieldDescriptors do opisywania struktury c + TLV
Zwracane wartości
WEAVE_NO_ERROR
Powodzenie.
other
Inne błędy, które mogą zostać zwrócone przez interfejs aWriter.

SerializedDataToTLVWriterHelper

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

Funkcja zapisującego kod, która otacza element SerializedDataToTLVWriter kontenerem.

Dzieli też obiekt StructureSchemaPointerPair na dane struktury i deskryptory do przekazywania.

Szczegóły
Parametry
[in] aWriter
Autor, który ma opisywać strukturę
[in] aDataTag
Tag do zapisania
[in] aAppData
StructureSchemaPointerPair, który zawiera wskaźnik do danych struktury i deskryptorów pól. void* ze względu na prototyp
Zwracane wartości
WEAVE_NO_ERROR
Powodzenie.
other
Inne błędy, które mogą zostać zwrócone przez interfejs 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
)

Funkcja czytnika służąca do konwertowania TLV na format C-struct.

Używa elementu SchemaFieldDescriptor do interpretacji struktury danych.

Musi być solidny zarówno do rozpoznawania nieznanych pól, jak i zapobiegania napotkaniu oczekiwanego pola.

Szczegóły
Parametry
[in] aReader
Czytnik, który ma być używany do odczytu danych
[in] aStructureData
Wskaźnik do danych docelowej struktury c, do których odczytamy dane na podstawie obiektu SchemaFieldDescriptor
[in] aFieldDescriptors
Deskryptory schemaFieldDescriptors do opisywania struktury c + TLV
[in] aContext
Kontekst serializacji zawierający dowolny stan wymagany do wykonania operacji.
Zwracane wartości
WEAVE_NO_ERROR
Powodzenie.
other
Inne błędy, które mogą zostać zwrócone przez czytnik aReader.

TLVReaderToDeserializedDataHelper

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

Funkcja pomocnicza, która deserializuje pojedynczy element danych TLV.

Funkcja dzieli StructureSchemaPointerPair na dane struktury i deskryptory, które mają być przekazywane do ReadDataForType.

Szczegóły
Parametry
[in] aReader
Czytnik zawierający dane do deserializacji
[in] aDataTag
Nieużywane w tej chwili
[in] aAppData
StructureSchemaPointerPair, który zawiera wskaźnik do danych struktury i deskryptorów pól. void* ze względu na prototyp
[in] aContext
Kontekst serializacji zawierający dowolny stan wymagany do wykonania operacji.
Zwracane wartości
WEAVE_NO_ERROR
Powodzenie.
other
Inne błędy, które mogą zostać zwrócone przez czytnik aReader.

WriteArrayData

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

Funkcja zapisująca, która zapisuje strukturę tablicy.

Szczegóły
Parametry
[in] aWriter
Pisarz, który ma opisywać strukturę
[in] aStructureData
Wskaźnik do danych struktury c do zapisania na podstawie obiektu FieldDescriptor
[in] aFieldPtr
FieldDescriptor, aby opisać tablicę c struct + TLV
Zwracane wartości
WEAVE_NO_ERROR
Powodzenie.
other
Inne błędy, które mogą zostać zwrócone przez interfejs aWriter.

WriteDataForType

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

Funkcja zapisująca zapisuje określony wpis w TLV na podstawie danych strukturalnych.

Szczegóły
Parametry
[in] aWriter
Pisarz, który ma opisywać strukturę
[in] aStructureData
Wskaźnik do danych w strukturze c do zapisania
[in,out] aFieldPtr
FieldDescriptor do opisania pól i tagu TLV. Ta funkcja zwiększy pozycję wskaźnika . będzie wskazywał następny element w tablicy FieldDescritor
[in] aType
Wartość SerializedFieldType pola.
[in] aInArray
Prawda, jeśli zapisujemy tablicę (użyj anonimowego tagu)
Zwracane wartości
WEAVE_NO_ERROR
Powodzenie.
other
Inne błędy, które mogą zostać zwrócone przez interfejs aWriter.

WriteNullableDataForType

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

Funkcja zapisująca, która sprawdza, czy dane mogą być nulle/null podane przed zapisem do TLV.

Szczegóły
Parametry
[in] aWriter
Pisarz, który ma opisywać strukturę
[in] aStructureData
Wskaźnik do danych struktury c do odczytu
[in,out] aFieldPtr
FieldDescriptor do opisania pól i tagu TLV. Ta funkcja zwiększy pozycję wskaźnika . będzie wskazywał następny element tablicy FieldDescriptor
[in] aType
Wartość SerializedFieldType pola.
[in] aIsNullified
W takiej sytuacji tag TLV będzie miał wartość null.
Zwracane wartości
WEAVE_NO_ERROR
Powodzenie.
other
Błędy TLV podczas zapisu.

secondsToMilliseconds

uint32_t secondsToMilliseconds(
  uint32_t seconds
)