2001-02-02 17:54:47 +00:00
|
|
|
#ifndef UINT32_H
|
|
|
|
#define UINT32_H
|
|
|
|
|
2007-06-28 13:38:08 +00:00
|
|
|
#include <inttypes.h>
|
|
|
|
|
|
|
|
typedef uint32_t uint32;
|
|
|
|
typedef int32_t int32;
|
2001-02-02 17:54:47 +00:00
|
|
|
|
2002-04-15 18:57:03 +00:00
|
|
|
#if defined(__i386__) && !defined(NO_UINT32_MACROS)
|
2001-02-02 17:54:47 +00:00
|
|
|
#define uint32_pack(out,in) (*(uint32*)(out)=(in))
|
|
|
|
#define uint32_unpack(in,out) (*(out)=*(uint32*)(in))
|
2002-04-15 19:47:09 +00:00
|
|
|
#define uint32_read(in) (*(uint32*)(in))
|
2003-09-06 23:49:47 +00:00
|
|
|
void uint32_pack_big(char *out,uint32 in);
|
|
|
|
void uint32_unpack_big(const char *in,uint32* out);
|
|
|
|
uint32 uint32_read_big(const char *in);
|
2001-02-02 17:54:47 +00:00
|
|
|
#else
|
|
|
|
|
2003-09-06 23:49:47 +00:00
|
|
|
void uint32_pack(char *out,uint32 in);
|
|
|
|
void uint32_pack_big(char *out,uint32 in);
|
|
|
|
void uint32_unpack(const char *in,uint32* out);
|
|
|
|
void uint32_unpack_big(const char *in,uint32* out);
|
|
|
|
uint32 uint32_read(const char *in);
|
|
|
|
uint32 uint32_read_big(const char *in);
|
2001-02-02 17:54:47 +00:00
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|