nl::Weave::Encoding

Cet espace de noms fournit des fonctions pour:

Résumé

  • Réorganisation des octets par valeur pour les types 16, 32 et 64 bits.
  • Exécution sécurisée d'accès simples et efficaces, mappés en mémoire, potentiellement non alignés, avec ou sans réorganisation des octets, vers des quantités de 8, 16, 32 et 64 bits, avec et sans gestion des pointeurs.

distantes

Get8(const uint8_t *p)
uint8_t
Lecture de la mémoire potentiellement non alignée de la valeur de 8 bits à partir de l'adresse de pointeur spécifiée.
Put8(uint8_t *p, uint8_t v)
void
Effectuez une écriture dans la mémoire, potentiellement non alignée, de la valeur de 8 bits ordonnée par l'octet du système cible vers l'adresse de pointeur spécifiée.
Read8(uint8_t *& p)
uint8_t
Effectuer une lecture dans la mémoire, potentiellement non alignée, de la valeur 16 bits à partir de l'adresse de pointeur spécifiée et incrémenter le pointeur de 8 bits (1 octet).
Read8(const uint8_t *& p)
uint8_t
Effectuer une lecture dans la mémoire, potentiellement non alignée, de la valeur 16 bits à partir de l'adresse de pointeur spécifiée et incrémenter le pointeur de 8 bits (1 octet).
Swap16(uint16_t v)
uint16_t
Cette opération effectue sans condition un remplacement de l'ordre des octets selon la valeur de la valeur 16 bits spécifiée.
Swap32(uint32_t v)
uint32_t
Cela effectue sans condition un remplacement de l'ordre des octets selon la valeur de la valeur 32 bits spécifiée.
Swap64(uint64_t v)
uint64_t
Cela permet de permuter l'ordre des octets de manière inconditionnelle selon la valeur de la valeur 64 bits spécifiée.
Write8(uint8_t *& p, uint8_t v)
void
Effectuer une écriture dans la mémoire, potentiellement non alignée, de la valeur de 8 bits sur l'adresse de pointeur spécifiée et incrémenter le pointeur de 8 bits (1 octet).

Espaces de noms

nl::Weave::Encoding::BigEndian

Cet espace de noms fournit des fonctions pour:

nl::Weave::Encoding::LittleEndian

Cet espace de noms fournit des fonctions pour:

distantes

Get8

uint8_t Get8(
  const uint8_t *p
)

Lecture de la mémoire potentiellement non alignée de la valeur de 8 bits à partir de l'adresse de pointeur spécifiée.

Détails
Paramètres
[in] p
Une adresse de pointeur, potentiellement non alignée, à partir de laquelle lire la valeur de 8 bits.
Renvoie
Valeur de 8 bits à l'adresse de pointeur spécifiée.

Put8

void Put8(
  uint8_t *p,
  uint8_t v
)

Effectuez une écriture dans la mémoire, potentiellement non alignée, de la valeur de 8 bits ordonnée par l'octet du système cible vers l'adresse de pointeur spécifiée.

Détails
Paramètres
[in] p
Adresse de pointeur, potentiellement non alignée, sur laquelle écrire la valeur de 8 bits.
[in] v
Valeur de 8 bits à écrire.

Read8

uint8_t Read8(
  uint8_t *& p
)

Effectuer une lecture dans la mémoire, potentiellement non alignée, de la valeur 16 bits à partir de l'adresse de pointeur spécifiée et incrémenter le pointeur de 8 bits (1 octet).

Détails
Paramètres
[in,out] p
Référence à une adresse de pointeur, potentiellement non alignée, permettant de lire la valeur de 8 bits à partir de, puis de l'incrémenter de 8 bits (1 octet).
Renvoie
Valeur de 8 bits à l'adresse de pointeur spécifiée.

Read8

uint8_t Read8(
  const uint8_t *& p
)

Effectuer une lecture dans la mémoire, potentiellement non alignée, de la valeur 16 bits à partir de l'adresse de pointeur spécifiée et incrémenter le pointeur de 8 bits (1 octet).

Détails
Paramètres
[in,out] p
Référence à une adresse de pointeur constant, potentiellement non alignée, permettant de lire la valeur de 8 bits à partir de, puis de l'incrémenter de 8 bits (1 octet).
Renvoie
Valeur de 8 bits à l'adresse de pointeur spécifiée.

Swap16

uint16_t Swap16(
  uint16_t v
)

Cette opération effectue sans condition un remplacement de l'ordre des octets selon la valeur de la valeur 16 bits spécifiée.

Détails
Paramètres
[in] v
Valeur de 16 bits à remplacer par l'ordre des octets.
Renvoie
Valeur d'entrée, ordre des octets échangé.

Swap32

uint32_t Swap32(
  uint32_t v
)

Cela effectue sans condition un remplacement de l'ordre des octets selon la valeur de la valeur 32 bits spécifiée.

Détails
Paramètres
[in] v
Valeur de 32 bits à remplacer par l'ordre des octets.
Renvoie
Valeur d'entrée, ordre des octets échangé.

Swap64

uint64_t Swap64(
  uint64_t v
)

Cela permet de permuter l'ordre des octets de manière inconditionnelle selon la valeur de la valeur 64 bits spécifiée.

Détails
Paramètres
[in] v
Valeur de 64 bits à remplacer par l'ordre des octets.
Renvoie
Valeur d'entrée, ordre des octets échangé.

Write8

void Write8(
  uint8_t *& p,
  uint8_t v
)

Effectuer une écriture dans la mémoire, potentiellement non alignée, de la valeur de 8 bits sur l'adresse de pointeur spécifiée et incrémenter le pointeur de 8 bits (1 octet).

Détails
Paramètres
[in,out] p
Référence à une adresse de pointeur, potentiellement non alignée, permettant de lire la valeur de 8 bits à partir de, puis de l'incrémenter de 8 bits (1 octet).
[in] v
Valeur de 8 bits à écrire.