X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=include%2Fcommon.h;h=3004ec791a63e272973d6a55814b43fb10e50b4e;hb=ffa693e8bdac429c229fa679e64a8bd6cd6af15f;hp=f6c12087d484f373886a92b94ee9afbb4e456c79;hpb=adf400021087dbee6a5406fa4b63f6c545d963d0;p=vlc diff --git a/include/common.h b/include/common.h index f6c12087d4..3004ec791a 100644 --- a/include/common.h +++ b/include/common.h @@ -3,6 +3,7 @@ * Collection of useful common types and macros definitions ***************************************************************************** * Copyright (C) 1998, 1999, 2000 VideoLAN + * $Id: common.h,v 1.21 2001/01/06 07:23:32 sam Exp $ * * Authors: Samuel Hocevar * Vincent Seguin @@ -36,9 +37,25 @@ typedef u8 byte_t; /* Boolean type */ +#ifdef BOOLEAN_T_IN_SYS_TYPES_H +# include +#else typedef int boolean_t; +#endif #ifdef SYS_GNU -#define _MACH_I386_BOOLEAN_H_ +# define _MACH_I386_BOOLEAN_H_ +#endif + +/* ptrdiff_t definition */ +#ifdef HAVE_STDDEF_H +# include +#else +# include +# ifndef _PTRDIFF_T +# define _PTRDIFF_T +/* Not portable in a 64-bit environment. */ +typedef int ptrdiff_t; +# endif #endif /* Counter for statistics and profiling */ @@ -108,6 +125,12 @@ typedef struct video_parser_s * p_video_parser_t; * Macros and inline functions *****************************************************************************/ +#ifdef NTOHL_IN_SYS_PARAM_H +# include +#else +# include +#endif + /* CEIL: division with round to nearest greater integer */ #define CEIL(n, d) ( ((n) / (d)) + ( ((n) % (d)) ? 1 : 0) ) @@ -122,7 +145,7 @@ typedef struct video_parser_s * p_video_parser_t; #define MIN(a, b) ( ((a) < (b)) ? (a) : (b) ) #endif -/* MSB (big endian)/LSB (little endian) convertions - network order is always +/* MSB (big endian)/LSB (little endian) conversions - network order is always * MSB, and should be used for both network communications and files. Note that * byte orders other than little and big endians are not supported, but only * the VAX seems to have such exotic properties - note that these 'functions' @@ -147,6 +170,6 @@ typedef struct video_parser_s * p_video_parser_t; /* XXX??: cause a compilation error */ #endif -/* Macros used by input to access the TS buffer */ +/* Macros with automatic casts */ #define U32_AT(p) ( ntohl ( *( (u32 *)(p) ) ) ) #define U16_AT(p) ( ntohs ( *( (u16 *)(p) ) ) )