nl::Weave::Encoding

Ta przestrzeń nazw zapewnia funkcje, które umożliwiają:

Podsumowanie

  • Zmiana kolejności bajtów według wartości w przypadku typów 16-, 32- i 64-bitowych.
  • Bezpieczne przeprowadzanie prostych i wydajnych operacji związanych z mapowaniem na pamięć, potencjalnie do niedopasowanych lokalizacji pamięci, z możliwością zmiany kolejności bajtów lub bez niej – na wartości 8-, 16-, 32- i 64-bitowe, zarówno z zarządzaniem wskaźnikami, jak i bez nich.

Funkcje

Get8(const uint8_t *p)
uint8_t
Wykonuje potencjalnie niedopasowany odczyt z pamięci 8-bitowej wartości z określonego adresu wskaźnika.
Put8(uint8_t *p, uint8_t v)
void
Wykonuje potencjalnie niedopasowany zapis w pamięci systemu docelowego, uporządkowanej 8-bitowej wartości 8-bitowej na podany adres wskaźnika.
Read8(uint8_t *& p)
uint8_t
Wykonanie potencjalnie niedopasowanej wartości z pamięci 16-bitowej wartości z podanego adresu wskaźnika i zwiększenie wskaźnika o 8 bitów (1 bajt).
Read8(const uint8_t *& p)
uint8_t
Wykonanie potencjalnie niedopasowanej wartości z pamięci 16-bitowej wartości z podanego adresu wskaźnika i zwiększenie wskaźnika o 8 bitów (1 bajt).
Swap16(uint16_t v)
uint16_t
Ta metoda bezwarunkowo wykonuje zamianę bajtów na wartość określonej 16-bitowej wartości.
Swap32(uint32_t v)
uint32_t
Ta opcja bezwarunkowo wykonuje zamianę bajtów na wartość określonej 32-bitowej wartości.
Swap64(uint64_t v)
uint64_t
To bezwarunkowo wykonuje zamianę bajtów według wartości podanej 64-bitowej wartości.
Write8(uint8_t *& p, uint8_t v)
void
Wykonuje potencjalnie niedopasowany zapis w pamięci 8-bitowej wartości na określony adres wskaźnika i zwiększa wskaźnik o 8 bitów (1 bajt).

Przestrzenie nazw

nl::Weave::Encoding::BigEndian

Ta przestrzeń nazw zapewnia funkcje, które umożliwiają:

nl::Weave::Encoding::LittleEndian

Ta przestrzeń nazw zapewnia funkcje, które umożliwiają:

Funkcje

Get8

uint8_t Get8(
  const uint8_t *p
)

Wykonuje potencjalnie niedopasowany odczyt z pamięci 8-bitowej wartości z określonego adresu wskaźnika.

Szczegóły
Parametry
[in] p
Adres wskaźnika, który może być niedopasowany, z którego ma być odczytywana wartość 8-bitowa.
Zwroty
8-bitowa wartość w przypadku określonego adresu wskaźnika.

Put8

void Put8(
  uint8_t *p,
  uint8_t v
)

Wykonuje potencjalnie niedopasowany zapis w pamięci systemu docelowego, uporządkowanej 8-bitowej wartości 8-bitowej na podany adres wskaźnika.

Szczegóły
Parametry
[in] p
Adres wskaźnika, który może być niedopasowany, aby zapisać 8-bitową wartość.
[in] v
8-bitowa wartość do zapisania.

Read8

uint8_t Read8(
  uint8_t *& p
)

Wykonanie potencjalnie niedopasowanej wartości z pamięci 16-bitowej wartości z podanego adresu wskaźnika i zwiększenie wskaźnika o 8 bitów (1 bajt).

Szczegóły
Parametry
[in,out] p
Odwołanie do adresu wskaźnika, potencjalnie niedopasowane, w celu odczytania 8-bitowej wartości z i w celu zwiększenia jej o 8 bitów (1 bajt).
Zwroty
8-bitowa wartość w przypadku określonego adresu wskaźnika.

Read8

uint8_t Read8(
  const uint8_t *& p
)

Wykonanie potencjalnie niedopasowanej wartości z pamięci 16-bitowej wartości z podanego adresu wskaźnika i zwiększenie wskaźnika o 8 bitów (1 bajt).

Szczegóły
Parametry
[in,out] p
Odwołanie do adresu stałego wskaźnika, potencjalnie niedopasowane, pozwalające odczytać 8-bitową wartość z i na celu o 8-bitową wartość (1 bajt).
Zwroty
8-bitowa wartość w przypadku określonego adresu wskaźnika.

Swap16

uint16_t Swap16(
  uint16_t v
)

Ta metoda bezwarunkowo wykonuje zamianę bajtów na wartość określonej 16-bitowej wartości.

Szczegóły
Parametry
[in] v
16-bitowa wartość do zastąpienia kolejności bajtów.
Zwroty
Wartość wejściowa z zamianą kolejności bajtów.

Swap32

uint32_t Swap32(
  uint32_t v
)

Ta opcja bezwarunkowo wykonuje zamianę bajtów na wartość określonej 32-bitowej wartości.

Szczegóły
Parametry
[in] v
32-bitowa wartość do zastąpienia kolejności bajtów.
Zwroty
Wartość wejściowa z zamianą kolejności bajtów.

Swap64

uint64_t Swap64(
  uint64_t v
)

To bezwarunkowo wykonuje zamianę bajtów według wartości podanej 64-bitowej wartości.

Szczegóły
Parametry
[in] v
64-bitowa wartość do zastąpienia kolejności bajtów.
Zwroty
Wartość wejściowa z zamianą kolejności bajtów.

Write8

void Write8(
  uint8_t *& p,
  uint8_t v
)

Wykonuje potencjalnie niedopasowany zapis w pamięci 8-bitowej wartości na określony adres wskaźnika i zwiększa wskaźnik o 8 bitów (1 bajt).

Szczegóły
Parametry
[in,out] p
Odwołanie do adresu wskaźnika, potencjalnie niedopasowane, w celu odczytania 8-bitowej wartości z i w celu zwiększenia jej o 8 bitów (1 bajt).
[in] v
8-bitowa wartość do zapisania.