#ifndef _BYTE_ORDER_H #define _BYTE_ORDER_H enum ByteOrder { LittleEndian = 1, BigEndian = 2 }; #ifdef HAVE_SDL_SDL_H #include #else #include #endif #if SDL_BYTEORDER == SDL_LIL_ENDIAN #define NATIVE_BYTEORDER LittleEndian #else #define NATIVE_BYTEORDER BigEndian #endif inline void swap16( short *_s ) { char *ci = (char*)_s, tmp; tmp = ci[0]; ci[0] = ci[1]; ci[1] = tmp; } inline void swap32( int *_i ) { char *ci = (char*)_i, tmp; tmp = ci[0]; ci[0] = ci[3]; ci[3] = tmp; tmp = ci[2]; ci[2] = ci[1]; ci[1] = tmp; } #endif