JUCE

- Main Page
- Related Pages
- Topics
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Loading...
Searching...
No Matches
Static Public Member Functions | List of all members
ByteOrder Class Reference
juce_core » memory

Contains static methods for converting the byte order between different endiannesses. More...

`#include <juce_ByteOrder.h>`

## Static Public Member Functions
static constexpr uint16 | swap (uint16 value) noexcept
| Swaps the upper and lower bytes of a 16-bit integer.
static constexpr int16 | swap (int16 value) noexcept
| Swaps the upper and lower bytes of a 16-bit integer.
static uint32 | swap (uint32 value) noexcept
| Reverses the order of the 4 bytes in a 32-bit integer.
static int32 | swap (int32 value) noexcept
| Reverses the order of the 4 bytes in a 32-bit integer.
static uint64 | swap (uint64 value) noexcept
| Reverses the order of the 8 bytes in a 64-bit integer.
static int64 | swap (int64 value) noexcept
| Reverses the order of the 8 bytes in a 64-bit integer.
static float | swap (float value) noexcept
| Returns a garbled float which has the reverse byte-order of the original.
static double | swap (double value) noexcept
| Returns a garbled double which has the reverse byte-order of the original.
template<typename Type >
static Type | swapIfBigEndian (Type value) noexcept
| Swaps the byte order of a signed or unsigned integer if the CPU is big-endian.
template<typename Type >
static Type | swapIfLittleEndian (Type value) noexcept
| Swaps the byte order of a signed or unsigned integer if the CPU is little-endian.
static constexpr uint32 | littleEndianInt (const void *bytes) noexcept
| Turns 4 bytes into a little-endian integer.
static constexpr uint64 | littleEndianInt64 (const void *bytes) noexcept
| Turns 8 bytes into a little-endian integer.
static constexpr uint16 | littleEndianShort (const void *bytes) noexcept
| Turns 2 bytes into a little-endian integer.
static constexpr int | littleEndian24Bit (const void *bytes) noexcept
| Converts 3 little-endian bytes into a signed 24-bit value (which is sign-extended to 32 bits).
static void | littleEndian24BitToChars (int32 value, void *destBytes) noexcept
| Copies a 24-bit number to 3 little-endian bytes.
static constexpr uint32 | bigEndianInt (const void *bytes) noexcept
| Turns 4 bytes into a big-endian integer.
static constexpr uint64 | bigEndianInt64 (const void *bytes) noexcept
| Turns 8 bytes into a big-endian integer.
static constexpr uint16 | bigEndianShort (const void *bytes) noexcept
| Turns 2 bytes into a big-endian integer.
static constexpr int | bigEndian24Bit (const void *bytes) noexcept
| Converts 3 big-endian bytes into a signed 24-bit value (which is sign-extended to 32 bits).
static void | bigEndian24BitToChars (int32 value, void *destBytes) noexcept
| Copies a 24-bit number to 3 big-endian bytes.
static constexpr uint16 | makeInt (uint8 leastSig, uint8 mostSig) noexcept
| Constructs a 16-bit integer from its constituent bytes, in order of significance.
static constexpr uint32 | makeInt (uint8 leastSig, uint8 byte1, uint8 byte2, uint8 mostSig) noexcept
| Constructs a 32-bit integer from its constituent bytes, in order of significance.
static constexpr uint64 | makeInt (uint8 leastSig, uint8 byte1, uint8 byte2, uint8 byte3, uint8 byte4, uint8 byte5, uint8 byte6, uint8 mostSig) noexcept
| Constructs a 64-bit integer from its constituent bytes, in order of significance.
static constexpr bool | isBigEndian () noexcept
| Returns true if the current CPU is big-endian.

## Detailed Description

Contains static methods for converting the byte order between different endiannesses.

## Member Function Documentation

## ◆ swapIfBigEndian()

template<typename Type >

static Type ByteOrder::swapIfBigEndian | ( | Type | value | ) |
| static noexcept

Swaps the byte order of a signed or unsigned integer if the CPU is big-endian.

## ◆ swapIfLittleEndian()

template<typename Type >

static Type ByteOrder::swapIfLittleEndian | ( | Type | value | ) |
| static noexcept

Swaps the byte order of a signed or unsigned integer if the CPU is little-endian.

## ◆ isBigEndian()

static constexpr bool ByteOrder::isBigEndian | ( |  | ) |
| static constexpr noexcept

Returns true if the current CPU is big-endian.

The documentation for this class was generated from the following file:

- juce_ByteOrder.h