nl::Weave::Profiles::Time::TimeZoneUtcOffset

#include <src/lib/profiles/time/WeaveTime.h>

Codec für den UTC-Versatz einer Zeitzone.

Zusammenfassung

Konstruktoren und Zerstörer

TimeZoneUtcOffset()

Öffentliche Attribute

mSize
uint8_t
Anzahl der gültigen Einträge in mUtcOffsetRecord
mUtcOffsetRecord[WEAVE_CONFIG_TIME_NUM_UTC_OFFSET_RECORD]
Einträge von UTC-Offsets

Öffentliche statische Attribute

BufferSizeForEncoding = 2 + 8 + 4 + (WEAVE_CONFIG_TIME_NUM_UTC_OFFSET_RECORD - 1) * 8
const uint32_t
TimeZoneUtcOffset::BufferSizeForEncoding ist eine Compile-Zeitkonstante, mit der Byte-Arrays deklariert werden können.

Öffentliche Funktionen

Decode(const uint8_t *const aInputBuf, const uint32_t aDataSize)
decodieren Sie UTC-Offsets aus einem Bytestring, extrahiert aus Weave TLV.
Encode(uint8_t *const aOutputBuf, uint32_t *const aDataSize)
UTC-Offsets in einem Puffer zu codieren.
GetCurrentLocalTime(timesync_t *const aLocalTime, const timesync_t aUtcTime) const
Rechnen Sie die UTC-Zeit mithilfe der gespeicherten UTC-Offsets in die Ortszeit um.

Strukturen

nl::Weave::Profiles::Time::TimeZoneUtcOffset::UtcOffsetRecord

Conversion-Informationen

Öffentliche Attribute

mSize

uint8_t mSize

Anzahl der gültigen Einträge in mUtcOffsetRecord

mUtcOffsetRecord

UtcOffsetRecord mUtcOffsetRecord[WEAVE_CONFIG_TIME_NUM_UTC_OFFSET_RECORD]

Einträge von UTC-Offsets

Öffentliche statische Attribute

BufferSizeForEncoding

const uint32_t BufferSizeForEncoding = 2 + 8 + 4 + (WEAVE_CONFIG_TIME_NUM_UTC_OFFSET_RECORD - 1) * 8

TimeZoneUtcOffset::BufferSizeForEncoding ist eine Compile-Zeitkonstante, mit der Byte-Arrays deklariert werden können.

Die Aufrufer müssen eine ausreichende Puffergröße für die Codierung vorbereiten, um die Codierung erfolgreich abzuschließen, und BufferSizeForEncoding ist der längste Puffer, der benötigt werden könnte.

Öffentliche Funktionen

Decode

WEAVE_ERROR Decode(
  const uint8_t *const aInputBuf,
  const uint32_t aDataSize
)

decodieren Sie UTC-Offsets aus einem Bytestring, extrahiert aus Weave TLV.

Der Datentyp für die Größe ist mit WeaveTLV.h identisch.

Details
Parameter
[in] aInputBuf
Ein Zeiger zum Eingabedatenpuffer
[in] aDataSize
Anzahl der verfügbaren Byte
Rückgabe
WEAVE_NO_ERROR bei Erfolg

Codieren

WEAVE_ERROR Encode(
  uint8_t *const aOutputBuf,
  uint32_t *const aDataSize
)

UTC-Offsets in einem Puffer zu codieren.

Der Datentyp für die Größe ist mit WeaveTLV.h identisch.

Details
Parameter
[out] aOutputBuf
Ein Zeiger auf den Ausgabedatenzwischenspeicher
[in,out] aDataSize
Ein Zeiger auf die Anzahl der Byte, die beim Aufrufen in aOutputBuf verfügbar sind. Dieser wird geändert, um die Anzahl der verwendeten Byte anzuzeigen, nachdem die Funktion zurückgegeben wurde.
Rückgabe
WEAVE_NO_ERROR bei Erfolg

GetCurrentLocalTime

WEAVE_ERROR GetCurrentLocalTime(
  timesync_t *const aLocalTime,
  const timesync_t aUtcTime
) const 

Rechnen Sie die UTC-Zeit mithilfe der gespeicherten UTC-Offsets in die Ortszeit um.

Details
Parameter
[out] aLocalTime
Ein Zeiger auf die resultierende Ortszeit
[in] aUtcTime
UTC-Zeit
Rückgabe
WEAVE_NO_ERROR Bei Erfolg. WEAVE_ERROR_KEY_NOT_FOUND wenn keine vernünftigen Ergebnisse gefunden wurden

TimeZoneUtcOffset

 TimeZoneUtcOffset()