![]() |
LUFA Library
120219
|
Macros and functions for automatic endianness conversion.
Run-time endianness conversion | |
#define | le16_to_cpu(x) (x) |
#define | le32_to_cpu(x) (x) |
#define | be16_to_cpu(x) SwapEndian_16(x) |
#define | be32_to_cpu(x) SwapEndian_32(x) |
#define | cpu_to_le16(x) (x) |
#define | cpu_to_le32(x) (x) |
#define | cpu_to_be16(x) SwapEndian_16(x) |
#define | cpu_to_be32(x) SwapEndian_32(x) |
Compile-time endianness conversion | |
#define | LE16_TO_CPU(x) (x) |
#define | LE32_TO_CPU(x) (x) |
#define | BE16_TO_CPU(x) SWAPENDIAN_16(x) |
#define | BE32_TO_CPU(x) SWAPENDIAN_32(x) |
#define | CPU_TO_LE16(x) (x) |
#define | CPU_TO_LE32(x) (x) |
#define | CPU_TO_BE16(x) SWAPENDIAN_16(x) |
#define | CPU_TO_BE32(x) SWAPENDIAN_32(x) |
#define be16_to_cpu | ( | x | ) | SwapEndian_16(x) |
Performs a conversion between a Big Endian encoded 16-bit piece of data and the Endianness of the currently selected CPU architecture.
On big endian architectures, this macro does nothing.
[in] | x | Data to perform the endianness conversion on. |
#define BE16_TO_CPU | ( | x | ) | SWAPENDIAN_16(x) |
Performs a conversion between a Big Endian encoded 16-bit piece of data and the Endianness of the currently selected CPU architecture.
On big endian architectures, this macro does nothing.
[in] | x | Data to perform the endianness conversion on. |
#define be32_to_cpu | ( | x | ) | SwapEndian_32(x) |
Performs a conversion between a Big Endian encoded 32-bit piece of data and the Endianness of the currently selected CPU architecture.
On big endian architectures, this macro does nothing.
[in] | x | Data to perform the endianness conversion on. |
#define BE32_TO_CPU | ( | x | ) | SWAPENDIAN_32(x) |
Performs a conversion between a Big Endian encoded 32-bit piece of data and the Endianness of the currently selected CPU architecture.
On big endian architectures, this macro does nothing.
[in] | x | Data to perform the endianness conversion on. |
#define cpu_to_be16 | ( | x | ) | SwapEndian_16(x) |
Performs a conversion on a natively encoded 16-bit piece of data to ensure that it is in Big Endian format regardless of the currently selected CPU architecture.
On big endian architectures, this macro does nothing.
[in] | x | Data to perform the endianness conversion on. |
#define CPU_TO_BE16 | ( | x | ) | SWAPENDIAN_16(x) |
Performs a conversion on a natively encoded 16-bit piece of data to ensure that it is in Big Endian format regardless of the currently selected CPU architecture.
On big endian architectures, this macro does nothing.
[in] | x | Data to perform the endianness conversion on. |
#define cpu_to_be32 | ( | x | ) | SwapEndian_32(x) |
Performs a conversion on a natively encoded 32-bit piece of data to ensure that it is in Big Endian format regardless of the currently selected CPU architecture.
On big endian architectures, this macro does nothing.
[in] | x | Data to perform the endianness conversion on. |
#define CPU_TO_BE32 | ( | x | ) | SWAPENDIAN_32(x) |
Performs a conversion on a natively encoded 32-bit piece of data to ensure that it is in Big Endian format regardless of the currently selected CPU architecture.
On big endian architectures, this macro does nothing.
[in] | x | Data to perform the endianness conversion on. |
#define cpu_to_le16 | ( | x | ) | (x) |
Performs a conversion on a natively encoded 16-bit piece of data to ensure that it is in Little Endian format regardless of the currently selected CPU architecture.
On little endian architectures, this macro does nothing.
[in] | x | Data to perform the endianness conversion on. |
#define CPU_TO_LE16 | ( | x | ) | (x) |
Performs a conversion on a natively encoded 16-bit piece of data to ensure that it is in Little Endian format regardless of the currently selected CPU architecture.
On little endian architectures, this macro does nothing.
[in] | x | Data to perform the endianness conversion on. |
#define cpu_to_le32 | ( | x | ) | (x) |
Performs a conversion on a natively encoded 32-bit piece of data to ensure that it is in Little Endian format regardless of the currently selected CPU architecture.
On little endian architectures, this macro does nothing.
[in] | x | Data to perform the endianness conversion on. |
#define CPU_TO_LE32 | ( | x | ) | (x) |
Performs a conversion on a natively encoded 32-bit piece of data to ensure that it is in Little Endian format regardless of the currently selected CPU architecture.
On little endian architectures, this macro does nothing.
[in] | x | Data to perform the endianness conversion on. |
#define le16_to_cpu | ( | x | ) | (x) |
Performs a conversion between a Little Endian encoded 16-bit piece of data and the Endianness of the currently selected CPU architecture.
On little endian architectures, this macro does nothing.
[in] | x | Data to perform the endianness conversion on. |
#define LE16_TO_CPU | ( | x | ) | (x) |
Performs a conversion between a Little Endian encoded 16-bit piece of data and the Endianness of the currently selected CPU architecture.
On little endian architectures, this macro does nothing.
[in] | x | Data to perform the endianness conversion on. |
#define le32_to_cpu | ( | x | ) | (x) |
Performs a conversion between a Little Endian encoded 32-bit piece of data and the Endianness of the currently selected CPU architecture.
On little endian architectures, this macro does nothing.
[in] | x | Data to perform the endianness conversion on. |
#define LE32_TO_CPU | ( | x | ) | (x) |
Performs a conversion between a Little Endian encoded 32-bit piece of data and the Endianness of the currently selected CPU architecture.
On little endian architectures, this macro does nothing.
[in] | x | Data to perform the endianness conversion on. |