nl::Weave::Encoding

この名前空間は、次の関数を提供します。

概要

  • 16、32、および 64 ビット型の値によるバイト並べ替えの実行。
  • 8、16、32、64 ビットの量、ポインタ管理の有無にかかわらず、バイト順序変更の有無にかかわらず、アライメントされていないメモリ位置へのシンプルで効率的なメモリ・マップ・アクセスを安全に実行する。

関数

Get8(const uint8_t *p)
uint8_t
指定されたポインタ アドレスからの 8 ビット値のメモリ読み取り(調整されていない可能性がある)を実行します。
Put8(uint8_t *p, uint8_t v)
void
指定されたポインタ アドレスへの、ターゲット システム バイトの順序付けされた 8 ビット値のメモリ書き込み(調整されていない可能性がある)を実行します。
Read8(uint8_t *& p)
uint8_t
指定されたポインタ アドレスからの 16 ビット値のメモリ読み取り(アライメントされていない可能性がある)を実行し、ポインタを 8 ビット(1 バイト)だけインクリメントします。
Read8(const uint8_t *& p)
uint8_t
指定されたポインタ アドレスからの 16 ビット値のメモリ読み取り(アライメントされていない可能性がある)を実行し、ポインタを 8 ビット(1 バイト)だけインクリメントします。
Swap16(uint16_t v)
uint16_t
これは、指定された 16 ビット値の値でバイトオーダーのスワップを無条件に実行します。
Swap32(uint32_t v)
uint32_t
これは、指定された 32 ビット値の値でバイトオーダーのスワップを無条件に実行します。
Swap64(uint64_t v)
uint64_t
これは、指定された 64 ビット値の値でバイトオーダーのスワップを無条件に実行します。
Write8(uint8_t *& p, uint8_t v)
void
指定されたポインタ アドレスへの 8 ビット値のメモリ書き込み(調整されていない可能性がある)を実行し、ポインタを 8 ビット(1 バイト)だけインクリメントします。

名前空間

nl::Weave::Encoding::BigEndian

この名前空間は、次の関数を提供します。

nl::Weave::Encoding::LittleEndian

この名前空間は、次の関数を提供します。

関数

Get8

uint8_t Get8(
  const uint8_t *p
)

指定されたポインタ アドレスからの 8 ビット値のメモリ読み取り(調整されていない可能性がある)を実行します。

詳細
パラメータ
[in] p
8 ビット値を読み取るポインタ アドレス(アライメントされていない可能性があります)。
戻り値
指定されたポインタ アドレスにある 8 ビットの値。

Put8

void Put8(
  uint8_t *p,
  uint8_t v
)

指定されたポインタ アドレスへの、ターゲット システム バイトの順序付けされた 8 ビット値のメモリ書き込み(調整されていない可能性がある)を実行します。

詳細
パラメータ
[in] p
8 ビット値を書き込むポインタ アドレス(アライメントされていない可能性があります)。
[in] v
書き込む 8 ビットの値。

Read8

uint8_t Read8(
  uint8_t *& p
)

指定されたポインタ アドレスからの 16 ビット値のメモリ読み取り(アライメントされていない可能性がある)を実行し、ポインタを 8 ビット(1 バイト)だけインクリメントします。

詳細
パラメータ
[in,out] p
8 ビット値を読み取って 8 ビット(1 バイト)単位でインクリメントするためのポインタ アドレスへの参照(非整列されている場合もある)。
戻り値
指定されたポインタ アドレスにある 8 ビットの値。

Read8

uint8_t Read8(
  const uint8_t *& p
)

指定されたポインタ アドレスからの 16 ビット値のメモリ読み取り(アライメントされていない可能性がある)を実行し、ポインタを 8 ビット(1 バイト)だけインクリメントします。

詳細
パラメータ
[in,out] p
8 ビット値を読み取ってから 8 ビット(1 バイト)単位でインクリメントするための、不整合の可能性がある定数ポインタ アドレスへの参照。
戻り値
指定されたポインタ アドレスにある 8 ビットの値。

Swap16

uint16_t Swap16(
  uint16_t v
)

これは、指定された 16 ビット値の値でバイトオーダーのスワップを無条件に実行します。

詳細
パラメータ
[in] v
バイトオーダーがスワップされる 16 ビット値。
戻り値
スワップされたバイト順の入力値。

Swap32

uint32_t Swap32(
  uint32_t v
)

これは、指定された 32 ビット値の値でバイトオーダーのスワップを無条件に実行します。

詳細
パラメータ
[in] v
バイトオーダーがスワップされる 32 ビット値。
戻り値
スワップされたバイト順の入力値。

Swap64

uint64_t Swap64(
  uint64_t v
)

これは、指定された 64 ビット値の値でバイトオーダーのスワップを無条件に実行します。

詳細
パラメータ
[in] v
バイトオーダーがスワップされる 64 ビット値。
戻り値
スワップされたバイト順の入力値。

Write8

void Write8(
  uint8_t *& p,
  uint8_t v
)

指定されたポインタ アドレスへの 8 ビット値のメモリ書き込み(調整されていない可能性がある)を実行し、ポインタを 8 ビット(1 バイト)だけインクリメントします。

詳細
パラメータ
[in,out] p
8 ビット値を読み取って 8 ビット(1 バイト)単位でインクリメントするためのポインタ アドレスへの参照(非整列されている場合もある)。
[in] v
書き込む 8 ビットの値。