nl

Weave-spezifische Überschreibungen von nlassert.h.

Zusammenfassung

Aufzählungen

@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
Eine Liste der TLV-Typen, die mit einem TLV-Feld geschrieben werden sollen.
SerializedFieldTypeBits enum
Bitfeld von SerializedFieldType.
SerializedFieldTypeMasks enum
Masken für den Zugriff auf Bits von SerializedFieldType.

Typedefs

Base64CharToValFunct)(uint8_t c) typedef
uint8_t(*
Base64ValToCharFunct)(uint8_t val) typedef
char(*
MemoryAllocate)(size_t size) typedef
void *(*
Funktionszeiger für die Arbeitsspeicherzuweisung/kostenlose Funktion.
MemoryFree)(void *ptr) typedef
void(*
MemoryReallocate)(void *ptr, size_t size) typedef
void *(*

Variablen

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 *
Verknüpfte Liste mit Fehlerformatierungsfunktionen.
sErrorStr[WEAVE_CONFIG_ERROR_STR_SIZE]
char
Statischer Zwischenspeicher zum Speichern des formatierten Fehlerstrings
sErrorStr[1024]
char
Diese Routine gibt einen menschenlesbaren NULL-terminierten C-String zurück, der den mit dem angegebenen Profil verknüpften bereitgestellten Statuscode beschreibt.
sWeaveErrorFormatter = { nl::Weave::FormatWeaveError, &sASN1ErrorFormatter }

Funktionen

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 *
Diese Routine gibt einen menschenlesbaren NULL-terminierten C-String zurück, der den angegebenen Fehler beschreibt.
ExtractManufacturingDateFromSerialNumber(const char *serialNum, uint16_t & year, uint8_t & month, uint8_t & day)
FindNullifiedFieldsArray(void *aStructureData, const SchemaFieldDescriptor *aSchemaDescriptor, uint8_t *& aNullifiedFields)
Hilfsfunktion zum Ermitteln der Position des Arrays mit Nullwerten am Ende der C-Struktur.
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
Erzeugt einen menschenlesbaren NULL-terminierten C-String, der den angegebenen Fehler beschreibt.
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)
Eine Lesefunktion zum Lesen eines bestimmten Eintrags aus dem TLV basierend auf Strukturdaten.
ReadNullableDataForType(TLVReader & aReader, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool & aIsNullified, SerializationContext *aContext)
Eine Lesefunktion, mit der geprüft wird, ob Daten Nullwerte enthalten bzw. auf Null gesetzt sind, bevor sie aus dem TLV lesen.
RegisterErrorFormatter(ErrorFormatter *errFormatter)
NL_DLL_EXPORT void
Fügen Sie der globalen Liste der Fehlerformatierer eine neue Fehlerformatierungsfunktion hinzu.
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)
Eine Schreibfunktion zum Konvertieren einer Datenstruktur in eine TLV-Struktur.
SerializedDataToTLVWriterHelper(TLVWriter & aWriter, uint8_t aDataTag, void *aAppData)
Eine Wrapper-Schreibfunktion, die SerializedDataToTLVWriter mit einem Container umgibt.
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)
Eine Lesefunktion zum Konvertieren von TLV in eine C-Struktur.
TLVReaderToDeserializedDataHelper(nl::Weave::TLV::TLVReader & aReader, uint8_t aDataTag, void *aAppData, SerializationContext *aContext)
Eine Hilfsfunktion, die ein einzelnes TLV-Datenelement deserialisiert.
WriteArrayData(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *aFieldPtr)
Eine Schreibfunktion, die eine Arraystruktur schreibt.
WriteDataForType(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aInArray)
Eine Schreibfunktion schreibt einen bestimmten Eintrag in den TLV basierend auf Strukturdaten.
WriteNullableDataForType(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aIsNullified)
Schreibfunktion, mit der geprüft wird, ob für Daten Nullwerte zulässig sind bzw. Nullwerte gesetzt sind, bevor in den TLV geschrieben wird.
secondsToMilliseconds(uint32_t seconds)
uint32_t

Strukturen

nl::ArrayLengthAndBuffer

Ein Hilfsprogramm zum Umschließen eines Arrays mit einer Länge.

nl::ErrorFormatter
nl::FieldDescriptor

Struktur, die ein TLV-Feld in einer Schemastruktur beschreibt und es mit Daten in einer c-Struct-Struktur verbindet.

nl::MemoryManagement

Eine c-Struktur von Funktionen zum Zuweisen/Kostenlosen von Arbeitsspeichern.

nl::SchemaFieldDescriptor

Wrapper um ein Array von FieldDescriptors zum Beschreiben einer Schemastruktur/-struktur.

nl::SerializationContext

c-Struct, der den Kontext oder Status enthält, den wir für die Serialisierung oder Deserialisierung benötigen.

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

Datenpaar mit einer c-Datenstruktur und dem StructureSchemaDescriptor-Objekt, um eine TLV-Struktur basierend auf diesen Daten zu schreiben.

Namespaces

nl::ArgParser
nl::Ble

Dieser Namespace umfasst alle Schnittstellen in Weave für Bluetooth Low Energy (BLE), auch als Bluetooth Smart bezeichnet.

nl::Inet
nl::NestCerts

Dieser Namespace enthält globale Symbole für PKI-Zertifikate (Public Key Infrastructure) von Nest Weave.

nl::PairingCode
nl::Warm
nl::Weave

Aufzählungen

@357

 @357

@358

 @358

@359

 @359

@360

 @360

@361

 @361

SerializedFieldType

 SerializedFieldType

Eine Liste der TLV-Typen, die mit einem TLV-Feld geschrieben werden sollen.

Attribute
SerializedFieldTypeArray

Array-Typ.

SerializedFieldTypeBoolean

Boolescher Typ.

SerializedFieldTypeByteString

Byte-String-Typ.

SerializedFieldTypeFloatingPoint32

32-Bit-Gleitkommazahl

SerializedFieldTypeFloatingPoint64

64-Bit-Gleitkommazahl

SerializedFieldTypeInt16

Signierter 16-Bit-Typ.

SerializedFieldTypeInt32

Signiertes 32-Bit-Format.

SerializedFieldTypeInt64

Signierter 64-Bit-Typ.

SerializedFieldTypeInt8

Signiertes 8-Bit-Format.

SerializedFieldTypeStructure

Benutzerdefinierter Strukturtyp.

SerializedFieldTypeUInt16

16-Bit-Typ ohne Vorzeichen.

SerializedFieldTypeUInt32

32-Bit-Typ ohne Vorzeichen.

SerializedFieldTypeUInt64

64-Bit-Typ ohne Vorzeichen.

SerializedFieldTypeUInt8

8-Bit-Typ ohne Vorzeichen.

SerializedFieldTypeUTF8String

UTF-8-Stringtyp.

SerializedFieldTypeBits

 SerializedFieldTypeBits

Bitfeld von SerializedFieldType.

SerializedFieldTypeMasks

 SerializedFieldTypeMasks

Masken für den Zugriff auf Bits von SerializedFieldType.

Typedefs

Base64CharToValFunct

uint8_t(* Base64CharToValFunct)(uint8_t c)

Base64ValToCharFunct

char(* Base64ValToCharFunct)(uint8_t val)

MemoryAllocate

void *(* MemoryAllocate)(size_t size)

Funktionszeiger für die Arbeitsspeicherzuweisung/kostenlose Funktion.

MemoryFree

void(* MemoryFree)(void *ptr)

MemoryReallocate

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

Variablen

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

Verknüpfte Liste mit Fehlerformatierungsfunktionen.

sErrorStr

char sErrorStr[WEAVE_CONFIG_ERROR_STR_SIZE]

Statischer Zwischenspeicher zum Speichern des formatierten Fehlerstrings

sErrorStr

char sErrorStr[1024]

Diese Routine gibt einen menschenlesbaren NULL-terminierten C-String zurück, der den mit dem angegebenen Profil verknüpften bereitgestellten Statuscode beschreibt.

Details
Parameter
[in] profileId
Die Weave-Profilkennung, die mit verknüpft ist .
[in] statusCode
Der Statuscode in profileId, für den ein beschreibender String angegeben wird.
Rückgabe
Ein Zeiger auf einen NULL-terminierten C-String, der den bereitgestellten Statuscode innerhalb des angegebenen Profils beschreibt.
Weitere Informationen:
WEAVE_CONFIG_SHORT_ERROR_STR

sWeaveErrorFormatter

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

Funktionen

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
)

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
)

Base64Codierung32

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

Base64Codierung32

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

Base64URLCharToVal

uint8_t Base64URLCharToVal(
  uint8_t c
)

Base64URLDecodierung

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

Base64-URL-Codierung

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
)

Diese Routine gibt einen menschenlesbaren NULL-terminierten C-String zurück, der den angegebenen Fehler beschreibt.

Details
Parameter
[in] err
Der Fehler für „Format“ und „Beschreiben“.
Rückgabe
Ein Zeiger auf einen NULL-terminierten C-String, der den angegebenen Fehler beschreibt.

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
)

Hilfsfunktion zum Ermitteln der Position des Arrays mit Nullwerten am Ende der C-Struktur.

Das Mitglied nullified_fields der C-Struktur muss sich direkt nach dem letzten Element befinden, das durch das Array von FieldDescriptors beschrieben wurde. Er ist nicht in der Liste der Felddeskriptoren enthalten, da er ein verstecktes Dienstprogramm für Ersteller und Nutzer von Ereignissen ist, für die Nullwerte zulässig sind. Dieses Struct-Mitglied existiert nicht für Ereignisse ohne Felder, für die Nullwerte zulässig sind. Durch die Konstruktion von Settern und Gettern sollten jedoch keine Zugriffe außerhalb des gültigen Bereichs erfolgen.

Details
Parameter
[in] aStructureData
Ein Zeiger auf die c-Struct-Struktur.
[in] aSchemaDescriptor
SchemaFieldDescriptors zur Beschreibung der Struktur "c".
[out] aNullifiedFields
Ein Zeiger auf das Mitglied nullified_fields der c-Struktur.
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.
WEAVE_ERROR_INVALID_ARGUMENT
Wenn der Felddeskriptor-Zeiger NULL ist.
WEAVE_ERROR_INCORRECT_STATE
Das Format der Felddeskriptoren entspricht nicht den Erwartungen.

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
)

Erzeugt einen menschenlesbaren NULL-terminierten C-String, der den angegebenen Fehler beschreibt.

Details
Parameter
[in] buf
Puffer, in den die Fehlerzeichenfolge eingefügt wird.
[in] bufSize
Größe des bereitgestellten Zwischenspeichers in Byte.
[in] subsys
Ein kurzer String, der das Subsystem beschreibt, von dem der Fehler stammt, oder NULL, wenn der Ursprung des Fehlers unbekannt oder nicht verfügbar ist. Dieser String darf maximal 10 Zeichen lang sein.
[in] err
Der zu formatierende Fehler.
[in] desc
String, der die Ursache oder Bedeutung des Fehlers beschreibt, oder NULL, wenn keine solchen Informationen verfügbar sind

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
)

Eine Lesefunktion zum Lesen eines bestimmten Eintrags aus dem TLV basierend auf Strukturdaten.

Details
Parameter
[in] aReader
Der Reader, der zum Lesen in der Struktur verwendet werden soll
[in] aStructureData
Ein Zeiger auf die zu lesenden c-structure-Daten
[in,out] aFieldPtr
FieldDescriptor zur Beschreibung der Felder und des TLV-Tags Die Funktion erhöht die Position des Zeigers.Sie verweist auf das nächste Element im Feld „FieldDescritor“.
[in] aType
Der „SerializedFieldType“ des Felds
[in] aInArray
True, wenn ein Array gelesen wird (anonymes Tag verwenden)
[in] aContext
Serialisierungskontext, der einen für den Vorgang erforderlichen Status enthält.
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.
other
Andere Fehler, die vom aReader zurückgegeben werden müssen.

ReadNullableDataForType

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

Eine Lesefunktion, mit der geprüft wird, ob Daten Nullwerte enthalten bzw. auf Null gesetzt sind, bevor sie aus dem TLV lesen.

Details
Parameter
[in] aReader
Der Reader, der zum Lesen in der Struktur verwendet werden soll
[in] aStructureData
Ein Zeiger auf die zu lesenden c-structure-Daten
[in,out] aFieldPtr
FieldDescriptor zur Beschreibung der Felder und des TLV-Tags Die Funktion erhöht den Zeigerpunkt.Sie verweist auf das nächste Element im FieldDescriptor-Array.
[in] aType
Der „SerializedFieldType“ des Felds
[out] aIsNullified
Wird festgelegt, um anzugeben, dass ein Feld auf Null gesetzt ist.
[in] aContext
Serialisierungskontext, der einen für den Vorgang erforderlichen Status enthält.
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.
other
TLV-Fehler beim Schreiben.

RegisterErrorFormatter

NL_DLL_EXPORT void RegisterErrorFormatter(
  ErrorFormatter *errFormatter
)

Fügen Sie der globalen Liste der Fehlerformatierer eine neue Fehlerformatierungsfunktion hinzu.

Details
Parameter
[in] errFormatter
Eine ErrorFormatter-Struktur, die einen Verweis auf die neue Fehlerfunktion enthält. Ein Verweis auf die bereitgestellte ErrorFormatter-Struktur wird von der Funktion beibehalten. Daher muss der Arbeitsspeicher für die Struktur reserviert bleiben.

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
)

Eine Schreibfunktion zum Konvertieren einer Datenstruktur in eine TLV-Struktur.

Verwendet einen SchemaFieldDescriptor, um die Datenstruktur zu interpretieren und in den TLV zu schreiben.

Details
Parameter
[in] aWriter
Der Autor, der zum Schreiben der Struktur verwendet werden soll
[in] aStructureData
Ein Zeiger auf die c-structure-Daten, die basierend auf dem SchemaFieldDescriptor geschrieben werden sollen.
[in] aFieldDescriptors
SchemaFieldDescriptors zur Beschreibung der C-Struktur + TLV
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.
other
Andere Fehler, die vom aWriter zurückgegeben werden müssen.

SerializedDataToTLVWriterHelper

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

Eine Wrapper-Schreibfunktion, die SerializedDataToTLVWriter mit einem Container umgibt.

Teilt außerdem ein StructureSchemaPointerPair in Strukturdaten und Deskriptoren auf, die weitergeleitet werden sollen.

Details
Parameter
[in] aWriter
Der Autor, der zum Schreiben der Struktur verwendet werden soll
[in] aDataTag
Zu schreibendes Tag
[in] aAppData
StructureSchemaPointerPair, das einen Zeiger auf Strukturdaten und Felddeskriptoren enthält. void* aufgrund des Prototyps
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.
other
Andere Fehler, die vom aWriter zurückgegeben werden müssen.

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
)

Eine Lesefunktion zum Konvertieren von TLV in eine C-Struktur.

Verwendet einen SchemaFieldDescriptor, um die Datenstruktur zu interpretieren.

Sie muss robust sein, um unbekannte Felder zu berücksichtigen und nicht erwartete Felder zu finden.

Details
Parameter
[in] aReader
Der Reader zum Lesen der Daten
[in] aStructureData
Ein Zeiger auf die c-structure-Zieldaten, in die basierend auf dem SchemaFieldDescriptor eingelesen wird.
[in] aFieldDescriptors
SchemaFieldDescriptors zur Beschreibung der C-Struktur + TLV
[in] aContext
Serialisierungskontext, der einen für den Vorgang erforderlichen Status enthält.
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.
other
Andere Fehler, die von aReader zurückgegeben werden können.

TLVReaderToDeserializedDataHelper

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

Eine Hilfsfunktion, die ein einzelnes TLV-Datenelement deserialisiert.

Die Funktion teilt StructureSchemaPointerPair in Strukturdaten und Deskriptoren auf, um sie an ReadDataForType zu übergeben.

Details
Parameter
[in] aReader
Der Reader mit den zu deserialisierenden Daten
[in] aDataTag
Momentan nicht verwendet
[in] aAppData
StructureSchemaPointerPair, das einen Zeiger auf Strukturdaten und Felddeskriptoren enthält. void* aufgrund des Prototyps
[in] aContext
Serialisierungskontext, der einen für den Vorgang erforderlichen Status enthält.
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.
other
Andere Fehler, die vom aReader zurückgegeben werden müssen.

WriteArrayData

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

Eine Schreibfunktion, die eine Arraystruktur schreibt.

Details
Parameter
[in] aWriter
Der Autor, der zum Schreiben der Struktur verwendet werden soll
[in] aStructureData
Ein Zeiger auf die c-structure-Daten, die basierend auf dem FieldDescriptor geschrieben werden sollen.
[in] aFieldPtr
FieldDescriptor zur Beschreibung des Array-C-Structs + TLV
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.
other
Andere Fehler, die vom aWriter zurückgegeben werden müssen.

WriteDataForType

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

Eine Schreibfunktion schreibt einen bestimmten Eintrag in den TLV basierend auf Strukturdaten.

Details
Parameter
[in] aWriter
Der Autor, der zum Schreiben der Struktur verwendet werden soll
[in] aStructureData
Ein Zeiger auf die c-Struktur-Daten, die geschrieben werden sollen
[in,out] aFieldPtr
FieldDescriptor zur Beschreibung der Felder und des TLV-Tags Die Funktion erhöht die Position des Zeigers.Sie verweist auf das nächste Element im Feld „FieldDescritor“.
[in] aType
Der „SerializedFieldType“ des Felds
[in] aInArray
True, wenn ein Array geschrieben wird (anonymes Tag verwenden)
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.
other
Andere Fehler, die vom aWriter zurückgegeben werden müssen.

WriteNullableDataForType

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

Schreibfunktion, mit der geprüft wird, ob für Daten Nullwerte zulässig sind bzw. Nullwerte gesetzt sind, bevor in den TLV geschrieben wird.

Details
Parameter
[in] aWriter
Der Autor, der zum Schreiben der Struktur verwendet werden soll
[in] aStructureData
Ein Zeiger auf die zu lesenden c-structure-Daten
[in,out] aFieldPtr
FieldDescriptor zur Beschreibung der Felder und des TLV-Tags Die Funktion erhöht den Zeigerpunkt.Sie verweist auf das nächste Element im FieldDescriptor-Array.
[in] aType
Der „SerializedFieldType“ des Felds
[in] aIsNullified
Der TLV-Tag wird auf null gesetzt, wenn dies wahr ist.
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.
other
TLV-Fehler beim Schreiben.

secondsToMilliseconds

uint32_t secondsToMilliseconds(
  uint32_t seconds
)