OpenShot Library | libopenshot-audio  0.2.0
juce::ByteOrder Class Reference

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

#include <juce_ByteOrder.h>

Static Public Member Functions

static JUCE_CONSTEXPR uint16 swap (uint16 value) noexcept
 Swaps the upper and lower bytes of a 16-bit integer.
 
static JUCE_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 JUCE_CONSTEXPR uint32 littleEndianInt (const void *bytes) noexcept
 Turns 4 bytes into a little-endian integer.
 
static JUCE_CONSTEXPR uint64 littleEndianInt64 (const void *bytes) noexcept
 Turns 8 bytes into a little-endian integer.
 
static JUCE_CONSTEXPR uint16 littleEndianShort (const void *bytes) noexcept
 Turns 2 bytes into a little-endian integer.
 
static JUCE_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 JUCE_CONSTEXPR uint32 bigEndianInt (const void *bytes) noexcept
 Turns 4 bytes into a big-endian integer.
 
static JUCE_CONSTEXPR uint64 bigEndianInt64 (const void *bytes) noexcept
 Turns 8 bytes into a big-endian integer.
 
static JUCE_CONSTEXPR uint16 bigEndianShort (const void *bytes) noexcept
 Turns 2 bytes into a big-endian integer.
 
static JUCE_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 JUCE_CONSTEXPR uint16 makeInt (uint8 leastSig, uint8 mostSig) noexcept
 Constructs a 16-bit integer from its constituent bytes, in order of significance.
 
static JUCE_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 JUCE_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 JUCE_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.

Definition at line 36 of file juce_ByteOrder.h.


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