7 #ifndef BIL_ENDIANCONVERSION_HPP
8 #define BIL_ENDIANCONVERSION_HPP
10 #include <boost/cstdint.hpp>
37 ((x >> 8) & 0x0000ff00) |
38 ((x << 8) & 0x00ff0000);
52 ((x >> 40) & 0x000000000000ff00) |
53 ((x << 40) & 0x00ff000000000000) |
54 ((x >> 24) & 0x0000000000ff0000) |
55 ((x << 24) & 0x0000ff0000000000) |
56 ((x >> 8) & 0x00000000ff000000) |
57 ((x << 8) & 0x000000ff00000000);
67 template <
typename type>
70 #ifdef __LITTLE_ENDIAN__
72 #elif defined(__BIG_ENDIAN__)
75 #error Unsupported endianess: Define __LITTLE_ENDIAN__ or __BIG_ENDIAN__!
85 template <
typename type>
88 #ifdef __LITTLE_ENDIAN__
90 #elif defined(__BIG_ENDIAN__)
93 #error Unsupported endianess: Define __LITTLE_ENDIAN__ or __BIG_ENDIAN__!