22 #ifndef KJB_CPP_L_BITS
23 #define KJB_CPP_L_BITS
38 template <
int NUM_BYTES>
48 kjb_c::bswap_u16(static_cast<uint16_t*>(value));
55 kjb_c::bswap_u32(static_cast<uint32_t*>(value));
62 kjb_c::bswap_u64(static_cast<uint64_t*>(value));
85 swap_bytes_dispatch<sizeof(T)>((
void*) value);
91 swap_bytes_dispatch<sizeof(T)>((
void*) &value);
105 for(
size_t i = 0;
i < N; ++
i)
void swap_bytes_dispatch< 4 >(void *value)
swap the byte order of a 32-bit value (do not call directly).
Definition: l_cpp_bits.h:53
void swap_bytes(T *value)
Definition: l_cpp_bits.h:83
#define KJB_THROW(ex)
Definition: l_exception.h:46
void swap_bytes_dispatch< 2 >(void *value)
swap the byte order of a 16-bit value (do not call directly).
Definition: l_cpp_bits.h:46
void swap_array_bytes(T *array, size_t N)
Definition: l_cpp_bits.h:103
void swap_bytes_dispatch< 8 >(void *value)
swap the byte order of a 64-bit value (do not call directly).
Definition: l_cpp_bits.h:60
void swap_bytes_dispatch(void *)
Swap the byte-order of a value.
Definition: l_cpp_bits.h:39
Object thrown when attempting to use unimplemented functionality.
Definition: l_exception.h:281
get the indices of edges in each direction for i
Definition: APPgetLargeConnectedEdges.m:48
Support for error handling exception classes in libKJB.