Go to the source code of this file.
|
LIB_API u16 | read_le16 (const void *p) |
| read a little-endian number from memory into native byte order. More...
|
|
LIB_API u32 | read_le32 (const void *p) |
|
LIB_API u64 | read_le64 (const void *p) |
| see read_le16 More...
|
|
LIB_API u16 | read_be16 (const void *p) |
| see read_le16 More...
|
|
LIB_API u32 | read_be32 (const void *p) |
|
LIB_API u64 | read_be64 (const void *p) |
| see read_be16 More...
|
|
LIB_API void | write_le16 (void *p, u16 x) |
| see read_be16 More...
|
|
LIB_API void | write_le32 (void *p, u32 x) |
|
LIB_API void | write_le64 (void *p, u64 x) |
| see write_le16 More...
|
|
LIB_API void | write_be16 (void *p, u16 x) |
| see write_le16 More...
|
|
LIB_API void | write_be32 (void *p, u32 x) |
|
LIB_API void | write_be64 (void *p, u64 x) |
| see write_be16 More...
|
|
LIB_API u64 | movzx_le64 (const u8 *p, size_t size) |
| see write_be16 More...
|
|
LIB_API u64 | movzx_be64 (const u8 *p, size_t size) |
|
LIB_API i64 | movsx_le64 (const u8 *p, size_t size) |
| sign-extend <size> (truncated to 8) bytes of little-endian data to i64, starting at address <p> (need not be aligned). More...
|
|
LIB_API i64 | movsx_be64 (const u8 *p, size_t size) |
|
LIB_API u16 | swap16 (const u16 x) |
|
LIB_API u32 | swap32 (const u32 x) |
|
LIB_API u64 | swap64 (const u64 x) |
|
#define BIG_ENDIAN 0x1234 |
#define FOURCC |
( |
|
a, |
|
|
|
b, |
|
|
|
c, |
|
|
|
d |
|
) |
| |
convert 4 characters to u32 (at compile time) for easy comparison.
output is in native byte order; e.g. FOURCC_LE can be used instead.
convert 4 characters to u32 (at compile time) for easy comparison.
output is in native byte order; e.g. FOURCC_LE can be used instead.
#define FOURCC_BE |
( |
|
a, |
|
|
|
b, |
|
|
|
c, |
|
|
|
d |
|
) |
| |
Value:uint8_t u8
Definition: types.h:37
uint32_t u32
Definition: types.h:39
big-endian version of FOURCC
#define FOURCC_LE |
( |
|
a, |
|
|
|
b, |
|
|
|
c, |
|
|
|
d |
|
) |
| |
Value:uint8_t u8
Definition: types.h:37
uint32_t u32
Definition: types.h:39
little-endian version of FOURCC
#define LITTLE_ENDIAN 0x4321 |
#define to_le16 |
( |
|
x | ) |
swap16(x) |
#define to_le32 |
( |
|
x | ) |
swap32(x) |
#define to_le64 |
( |
|
x | ) |
swap64(x) |
LIB_API i64 movsx_be64 |
( |
const u8 * |
p, |
|
|
size_t |
size |
|
) |
| |
LIB_API i64 movsx_le64 |
( |
const u8 * |
p, |
|
|
size_t |
size |
|
) |
| |
sign-extend <size> (truncated to 8) bytes of little-endian data to i64, starting at address <p> (need not be aligned).
LIB_API u64 movzx_be64 |
( |
const u8 * |
p, |
|
|
size_t |
size |
|
) |
| |
LIB_API u64 movzx_le64 |
( |
const u8 * |
p, |
|
|
size_t |
size |
|
) |
| |
see write_be16
zero-extend <size> (truncated to 8) bytes of little-endian data to u64, starting at address <p> (need not be aligned).
LIB_API u16 read_be16 |
( |
const void * |
p | ) |
|
see read_le16
read a big-endian number from memory into native byte order.
LIB_API u32 read_be32 |
( |
const void * |
p | ) |
|
LIB_API u64 read_be64 |
( |
const void * |
p | ) |
|
LIB_API u16 read_le16 |
( |
const void * |
p | ) |
|
read a little-endian number from memory into native byte order.
LIB_API u32 read_le32 |
( |
const void * |
p | ) |
|
LIB_API u64 read_le64 |
( |
const void * |
p | ) |
|
LIB_API u16 swap16 |
( |
const u16 |
x | ) |
|
LIB_API u32 swap32 |
( |
const u32 |
x | ) |
|
LIB_API u64 swap64 |
( |
const u64 |
x | ) |
|
LIB_API void write_be16 |
( |
void * |
p, |
|
|
u16 |
x |
|
) |
| |
see write_le16
write a big-endian number to memory in native byte order.
LIB_API void write_be32 |
( |
void * |
p, |
|
|
u32 |
x |
|
) |
| |
LIB_API void write_be64 |
( |
void * |
p, |
|
|
u64 |
x |
|
) |
| |
LIB_API void write_le16 |
( |
void * |
p, |
|
|
u16 |
x |
|
) |
| |
see read_be16
write a little-endian number to memory in native byte order.
LIB_API void write_le32 |
( |
void * |
p, |
|
|
u32 |
x |
|
) |
| |
LIB_API void write_le64 |
( |
void * |
p, |
|
|
u64 |
x |
|
) |
| |