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

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

Codec für die UTC-Zeitverschiebung 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 Kompilierungszeitkonstante, mit der Byte-Arrays deklariert werden können.

Öffentliche Funktionen

Decode(const uint8_t *const aInputBuf, const uint32_t aDataSize)
UTC-Offsets aus einem Bytestring decodieren, der aus Weave TLV extrahiert wurde.
Encode(uint8_t *const aOutputBuf, uint32_t *const aDataSize)
UTC-Versätze in einem Zwischenspeicher codieren.
GetCurrentLocalTime(timesync_t *const aLocalTime, const timesync_t aUtcTime) const
wandelt die UTC-Zeit unter Verwendung der gespeicherten UTC-Versätze 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 Kompilierungszeitkonstante, mit der Byte-Arrays deklariert werden können.

Aufrufer müssen eine ausreichende Puffergröße vorbereiten, damit die Codierung erfolgreich abgeschlossen werden kann, und "BufferSizeForEncoding" ist der längste Puffer, der benötigt werden kann.

Öffentliche Funktionen

Decode

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

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

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

Details
Parameter
[in] aInputBuf
Einen Zeiger auf den Eingabedatenpuffer
[in] aDataSize
Anzahl verfügbarer Byte
Rückgabe
WEAVE_NO_ERROR bei Erfolg

Codieren

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

UTC-Versätze in einem Zwischenspeicher codieren.

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

Details
Parameter
[out] aOutputBuf
Einen Zeiger auf den Ausgabedatenpuffer
[in,out] aDataSize
Ein Zeiger auf die Anzahl der Byte, die in aOutputBuf beim Aufruf verfügbar sind. Dieser wird geändert, um die Anzahl der Byte anzugeben, die nach der Rückgabe der Funktion verwendet werden.
Rückgabe
WEAVE_NO_ERROR bei Erfolg

GetCurrentLocalTime

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

wandelt die UTC-Zeit unter Verwendung der gespeicherten UTC-Versätze 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 angemessenen Ergebnisse gefunden werden konnten

TimeZoneUtcOffset

 TimeZoneUtcOffset()