nl::Weave::Encoding

Dieser Namespace bietet Funktionen für:

Zusammenfassung

  • Byteneusortierung nach Wert für 16-, 32- und 64-Bit-Typen.
  • Sichere Durchführung einfacher, effizienter Zugriffe mit Arbeitsspeicherzuordnung, möglicherweise nicht ausgerichteten Speicherstandorten, mit oder ohne Byte-Neuanordnung auf 8-, 16-, 32- und 64-Bit-Mengen, sowohl mit als auch ohne Zeigerverwaltung.

Funktionen

Get8(const uint8_t *p)
uint8_t
Führt einen möglicherweise nicht ausgerichteten Speicherlesevorgang des 8-Bit-Werts von der angegebenen Zeigeradresse aus.
Put8(uint8_t *p, uint8_t v)
void
Führt einen möglicherweise nicht ausgerichteten Speicherschreibvorgang des byte-geordneten 8-Bit-Werts des Zielsystems auf die angegebene Zeigeradresse aus.
Read8(uint8_t *& p)
uint8_t
Führt einen möglicherweise nicht ausgerichteten Speicherlesevorgang des 16-Bit-Werts von der angegebenen Zeigeradresse aus und inkrementiere den Zeiger um 8 Bit (1 Byte).
Read8(const uint8_t *& p)
uint8_t
Führt einen möglicherweise nicht ausgerichteten Speicherlesevorgang des 16-Bit-Werts von der angegebenen Zeigeradresse aus und inkrementiere den Zeiger um 8 Bit (1 Byte).
Swap16(uint16_t v)
uint16_t
Dadurch wird bedingungslos eine Bytereihenfolge durch den Wert des angegebenen 16-Bit-Werts durchgeführt.
Swap32(uint32_t v)
uint32_t
Dabei wird unbedingt eine Bytereihenfolge durch den Wert des angegebenen 32-Bit-Werts übernommen.
Swap64(uint64_t v)
uint64_t
Dabei wird unbedingt eine Bytereihenfolge durch den Wert des angegebenen 64-Bit-Werts übernommen.
Write8(uint8_t *& p, uint8_t v)
void
Führt einen möglicherweise nicht ausgerichteten Speicherschreibvorgang des 8-Bit-Werts in die angegebene Zeigeradresse aus und inkrementiere den Zeiger um 8 Bit (1 Byte).

Namespaces

nl::Weave::Encoding::BigEndian

Dieser Namespace bietet Funktionen für:

nl::Weave::Encoding::LittleEndian

Dieser Namespace bietet Funktionen für:

Funktionen

Get8

uint8_t Get8(
  const uint8_t *p
)

Führt einen möglicherweise nicht ausgerichteten Speicherlesevorgang des 8-Bit-Werts von der angegebenen Zeigeradresse aus.

Details
Parameter
[in] p
Eine Zeigeradresse, möglicherweise nicht ausgerichtet, aus der der 8-Bit-Wert gelesen werden soll.
Rückgabe
Der 8-Bit-Wert an der angegebenen Zeigeradresse.

Put8

void Put8(
  uint8_t *p,
  uint8_t v
)

Führt einen möglicherweise nicht ausgerichteten Speicherschreibvorgang des byte-geordneten 8-Bit-Werts des Zielsystems auf die angegebene Zeigeradresse aus.

Details
Parameter
[in] p
Eine Zeigeradresse, möglicherweise nicht ausgerichtet, in die der 8-Bit-Wert geschrieben werden soll.
[in] v
Der zu schreibende 8-Bit-Wert.

Read8

uint8_t Read8(
  uint8_t *& p
)

Führt einen möglicherweise nicht ausgerichteten Speicherlesevorgang des 16-Bit-Werts von der angegebenen Zeigeradresse aus und inkrementiere den Zeiger um 8 Bit (1 Byte).

Details
Parameter
[in,out] p
Ein Verweis auf eine Zeigeradresse, möglicherweise nicht ausgerichtet, um den 8-Bit-Wert zu lesen und dann um 8 Bit (1 Byte) zu inkrementieren.
Rückgabe
Der 8-Bit-Wert an der angegebenen Zeigeradresse.

Read8

uint8_t Read8(
  const uint8_t *& p
)

Führt einen möglicherweise nicht ausgerichteten Speicherlesevorgang des 16-Bit-Werts von der angegebenen Zeigeradresse aus und inkrementiere den Zeiger um 8 Bit (1 Byte).

Details
Parameter
[in,out] p
Ein Verweis auf eine konstante Zeigeradresse, möglicherweise nicht ausgerichtet, um den 8-Bit-Wert zu lesen und dann um 8 Bit (1 Byte) zu inkrementieren.
Rückgabe
Der 8-Bit-Wert an der angegebenen Zeigeradresse.

Swap16

uint16_t Swap16(
  uint16_t v
)

Dadurch wird bedingungslos eine Bytereihenfolge durch den Wert des angegebenen 16-Bit-Werts durchgeführt.

Details
Parameter
[in] v
Der 16-Bit-Wert, dessen Bytereihenfolge vertauscht werden soll.
Rückgabe
Der Eingabewert, vertauschte Bytereihenfolge.

Swap32

uint32_t Swap32(
  uint32_t v
)

Dabei wird unbedingt eine Bytereihenfolge durch den Wert des angegebenen 32-Bit-Werts übernommen.

Details
Parameter
[in] v
Der 32-Bit-Wert, dessen Bytereihenfolge vertauscht werden soll.
Rückgabe
Der Eingabewert, vertauschte Bytereihenfolge.

Swap64

uint64_t Swap64(
  uint64_t v
)

Dabei wird unbedingt eine Bytereihenfolge durch den Wert des angegebenen 64-Bit-Werts übernommen.

Details
Parameter
[in] v
Der 64-Bit-Wert, dessen Bytereihenfolge vertauscht werden soll.
Rückgabe
Der Eingabewert, vertauschte Bytereihenfolge.

Write8

void Write8(
  uint8_t *& p,
  uint8_t v
)

Führt einen möglicherweise nicht ausgerichteten Speicherschreibvorgang des 8-Bit-Werts in die angegebene Zeigeradresse aus und inkrementiere den Zeiger um 8 Bit (1 Byte).

Details
Parameter
[in,out] p
Ein Verweis auf eine Zeigeradresse, möglicherweise nicht ausgerichtet, um den 8-Bit-Wert zu lesen und dann um 8 Bit (1 Byte) zu erhöhen.
[in] v
Der zu schreibende 8-Bit-Wert.