nl::Weave::Encoding

Bu ad alanı aşağıdakiler için işlevler sağlar:

Özet

  • 16, 32 ve 64 bit türleri için değere göre bayt yeniden sıralama işlemi gerçekleştirme.
  • İşaretçi yönetimi ile ve işaretçisiz olarak 8, 16, 32 ve 64 bit miktarlarına bayt yeniden sıralama işlemi uygulayarak veya bunlar olmadan, uyumlu olmayan bellek konumlarına potansiyel olarak uyumlu olmayan bellek eşlemeli basit ve verimli erişimleri güvenli bir şekilde gerçekleştirme.

İşlevler

Get8(const uint8_t *p)
uint8_t
Belirtilen işaretçi adresinden 8 bit değeri için uyumlu olmayabilecek bir bellek okuması gerçekleştirin.
Put8(uint8_t *p, uint8_t v)
void
Belirtilen işaretçi adresine 8 bitlik değer sıralanmış hedef sistem baytı için uyumsuz olabilecek bir bellek yazma işlemi gerçekleştirin.
Read8(uint8_t *& p)
uint8_t
Belirtilen işaretçi adresinden 16 bit değerini, muhtemelen hizalanmamış bir bellek okuması gerçekleştirin ve işaretçiyi 8 bit (1 bayt) artırın.
Read8(const uint8_t *& p)
uint8_t
Belirtilen işaretçi adresinden 16 bit değerini, muhtemelen hizalanmamış bir bellek okuması gerçekleştirin ve işaretçiyi 8 bit (1 bayt) artırın.
Swap16(uint16_t v)
uint16_t
Bu işlem, koşulsuz olarak belirtilen 16 bitlik değerin değerine göre bayt sırası değişimi gerçekleştirir.
Swap32(uint32_t v)
uint32_t
Bu işlem, koşulsuz olarak belirtilen 32 bitlik değerin değerine göre bayt sırası değişimi gerçekleştirir.
Swap64(uint64_t v)
uint64_t
Bu işlem, koşulsuz olarak belirtilen 64 bit değerin değerine göre bayt sırası değişimi gerçekleştirir.
Write8(uint8_t *& p, uint8_t v)
void
Belirtilen işaretçi adresine 8 bitlik değerin hizasız, olası olarak hizalanmamış bir belleğe yazma işlemini gerçekleştirin ve işaretçiyi 8 bit (1 bayt) artırın.

Ad alanları

nl::Weave::Encoding::BigEndian

Bu ad alanı aşağıdakiler için işlevler sağlar:

nl::Weave::Encoding::LittleEndian

Bu ad alanı aşağıdakiler için işlevler sağlar:

İşlevler

Get8

uint8_t Get8(
  const uint8_t *p
)

Belirtilen işaretçi adresinden 8 bit değeri için uyumlu olmayabilecek bir bellek okuması gerçekleştirin.

Ayrıntılar
Parametreler
[in] p
8 bit değerinin okunacağı, hizalı olmayabilecek bir işaretçi adresi.
İadeler
Belirtilen işaretçi adresindeki 8 bitlik değer.

Put8

void Put8(
  uint8_t *p,
  uint8_t v
)

Belirtilen işaretçi adresine 8 bitlik değer sıralanmış hedef sistem baytı için uyumsuz olabilecek bir bellek yazma işlemi gerçekleştirin.

Ayrıntılar
Parametreler
[in] p
8 bit değerinin yazılacağı, muhtemelen hizalanmamış bir işaretçi adres.
[in] v
Yazılacak 8 bitlik değer.

Read8

uint8_t Read8(
  uint8_t *& p
)

Belirtilen işaretçi adresinden 16 bit değerini, muhtemelen hizalanmamış bir bellek okuması gerçekleştirin ve işaretçiyi 8 bit (1 bayt) artırın.

Ayrıntılar
Parametreler
[in,out] p
8 bit değerini okumak ve ardından 8 bit (1 bayt) artırmak için muhtemelen hizalanmamış bir işaretçi adresine başvuru.
İadeler
Belirtilen işaretçi adresindeki 8 bitlik değer.

Read8

uint8_t Read8(
  const uint8_t *& p
)

Belirtilen işaretçi adresinden 16 bit değerini, muhtemelen hizalanmamış bir bellek okuması gerçekleştirin ve işaretçiyi 8 bit (1 bayt) artırın.

Ayrıntılar
Parametreler
[in,out] p
8 bit değerini okumak ve ardından 8 bit (1 bayt) artırmak için potansiyel olarak hizalanmamış sabit bir işaretçi adresine başvuru.
İadeler
Belirtilen işaretçi adresindeki 8 bitlik değer.

Swap16

uint16_t Swap16(
  uint16_t v
)

Bu işlem, koşulsuz olarak belirtilen 16 bitlik değerin değerine göre bayt sırası değişimi gerçekleştirir.

Ayrıntılar
Parametreler
[in] v
Bayt sırası değiştirilecek 16 bit değer.
İadeler
Giriş değeri, bayt sırası değiştirildi.

Swap32

uint32_t Swap32(
  uint32_t v
)

Bu işlem, koşulsuz olarak belirtilen 32 bitlik değerin değerine göre bayt sırası değişimi gerçekleştirir.

Ayrıntılar
Parametreler
[in] v
Bayt sırası değiştirilecek 32 bit değer.
İadeler
Giriş değeri, bayt sırası değiştirildi.

Swap64

uint64_t Swap64(
  uint64_t v
)

Bu işlem, koşulsuz olarak belirtilen 64 bit değerin değerine göre bayt sırası değişimi gerçekleştirir.

Ayrıntılar
Parametreler
[in] v
Bayt sırası değiştirilecek 64 bit değer.
İadeler
Giriş değeri, bayt sırası değiştirildi.

Write8

void Write8(
  uint8_t *& p,
  uint8_t v
)

Belirtilen işaretçi adresine 8 bitlik değerin hizasız, olası olarak hizalanmamış bir belleğe yazma işlemini gerçekleştirin ve işaretçiyi 8 bit (1 bayt) artırın.

Ayrıntılar
Parametreler
[in,out] p
8 bit değerini okumak ve ardından 8 bit (1 bayt) artırmak için muhtemelen hizalanmamış bir işaretçi adresine başvuru.
[in] v
Yazılacak 8 bitlik değer.