// /usr/libexec/gcc/i686-pc-linux-gnu/3.4.4/cc1 -quiet -I. -I. -I../.. -I../../include -I../../lib -I../../include -I../../lib -MD .libs/debug.d -MF .deps/debug.Tpo -MP -MT debug.lo -MQ .libs/debug.o -dD -DHAVE_CONFIG_H -DDATADIR="/usr/local/share/directfb-0.9.25" -DMODULEDIR="/usr/local/lib/directfb-0.9.25" -D_REENTRANT -D_GNU_SOURCE -DPIC debug.c -quiet -dumpbase debug.c -mtune=pentiumpro -auxbase-strip .libs/debug.o -g3 -O3 -Werror-implicit-function-declaration -ffast-math -fno-inline -finstrument-functions -fPIC -o - -frandom-seed=0 # 1 "debug.c" # 1 "/usr/local/src/directfb-2006-04-14/DirectFB/lib/direct//" # 1 "" #define __STDC_HOSTED__ 1 #define __GNUC__ 3 #define __GNUC_MINOR__ 4 #define __GNUC_PATCHLEVEL__ 4 #define __SIZE_TYPE__ unsigned int #define __PTRDIFF_TYPE__ int #define __WCHAR_TYPE__ long int #define __WINT_TYPE__ unsigned int #define __GXX_ABI_VERSION 1002 #define __SCHAR_MAX__ 127 #define __SHRT_MAX__ 32767 #define __INT_MAX__ 2147483647 #define __LONG_MAX__ 2147483647L #define __LONG_LONG_MAX__ 9223372036854775807LL #define __WCHAR_MAX__ 2147483647 #define __CHAR_BIT__ 8 #define __FLT_EVAL_METHOD__ 2 #define __FLT_RADIX__ 2 #define __FLT_MANT_DIG__ 24 #define __FLT_DIG__ 6 #define __FLT_MIN_EXP__ (-125) #define __FLT_MIN_10_EXP__ (-37) #define __FLT_MAX_EXP__ 128 #define __FLT_MAX_10_EXP__ 38 #define __FLT_MAX__ 3.40282347e+38F #define __FLT_MIN__ 1.17549435e-38F #define __FLT_EPSILON__ 1.19209290e-7F #define __FLT_DENORM_MIN__ 1.40129846e-45F #define __FLT_HAS_INFINITY__ 1 #define __FLT_HAS_QUIET_NAN__ 1 #define __DBL_MANT_DIG__ 53 #define __DBL_DIG__ 15 #define __DBL_MIN_EXP__ (-1021) #define __DBL_MIN_10_EXP__ (-307) #define __DBL_MAX_EXP__ 1024 #define __DBL_MAX_10_EXP__ 308 #define __DBL_MAX__ 1.7976931348623157e+308 #define __DBL_MIN__ 2.2250738585072014e-308 #define __DBL_EPSILON__ 2.2204460492503131e-16 #define __DBL_DENORM_MIN__ 4.9406564584124654e-324 #define __DBL_HAS_INFINITY__ 1 #define __DBL_HAS_QUIET_NAN__ 1 #define __LDBL_MANT_DIG__ 64 #define __LDBL_DIG__ 18 #define __LDBL_MIN_EXP__ (-16381) #define __LDBL_MIN_10_EXP__ (-4931) #define __LDBL_MAX_EXP__ 16384 #define __LDBL_MAX_10_EXP__ 4932 #define __DECIMAL_DIG__ 21 #define __LDBL_MAX__ 1.18973149535723176502e+4932L #define __LDBL_MIN__ 3.36210314311209350626e-4932L #define __LDBL_EPSILON__ 1.08420217248550443401e-19L #define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L #define __LDBL_HAS_INFINITY__ 1 #define __LDBL_HAS_QUIET_NAN__ 1 #define __REGISTER_PREFIX__ #define __USER_LABEL_PREFIX__ #define __VERSION__ "3.4.4 (Gentoo 3.4.4-r1, ssp-3.4.4-1.0, pie-8.7.8)" #define __OPTIMIZE__ 1 #define __FAST_MATH__ 1 #define __NO_INLINE__ 1 #define __FINITE_MATH_ONLY__ 1 #define __i386 1 #define __i386__ 1 #define i386 1 #define __tune_i686__ 1 #define __tune_pentiumpro__ 1 #define __gnu_linux__ 1 #define __linux 1 #define __linux__ 1 #define linux 1 #define __unix 1 #define __unix__ 1 #define unix 1 #define __PIC__ 1 #define __pic__ 1 #define __ELF__ 1 # 1 "" #define HAVE_CONFIG_H 1 #define DATADIR "/usr/local/share/directfb-0.9.25" #define MODULEDIR "/usr/local/lib/directfb-0.9.25" #define _REENTRANT 1 #define _GNU_SOURCE 1 #define PIC 1 # 1 "debug.c" # 28 "debug.c" # 1 "../../config.h" 1 #define ARCH_X86 1 # 17 "../../config.h" #define DIRECTFB_VERSION "0.9.25" #define HAVE_ASM_PAGE_H 1 #define HAVE_DLFCN_H 1 #define HAVE_INB_OUTB_IOPL 1 #define HAVE_INTTYPES_H 1 #define HAVE_LIBDL 1 #define HAVE_LIBPTHREAD 1 #define HAVE_LINUX_UNISTD_H 1 #define HAVE_MEMORY_H 1 #define HAVE_STDINT_H 1 #define HAVE_STDLIB_H 1 #define HAVE_STRINGS_H 1 #define HAVE_STRING_H 1 #define HAVE_SYSIO 1 #define HAVE_SYS_STAT_H 1 #define HAVE_SYS_TYPES_H 1 #define HAVE_UNISTD_H 1 #define PACKAGE_BUGREPORT "" #define PACKAGE_NAME "" #define PACKAGE_STRING "" #define PACKAGE_TARNAME "" #define PACKAGE_VERSION "" #define SIZEOF_INT 4 #define SIZEOF_LONG 4 #define SIZEOF_LONG_LONG 8 #define STDC_HEADERS 1 #define USE_MMX 1 #define USE_SSE 1 # 29 "debug.c" 2 # 1 "../../lib/direct/build.h" 1 # 29 "../../lib/direct/build.h" #define __DIRECT__BUILD_H__ #define DIRECT_BUILD_DEBUG (1) #define DIRECT_BUILD_DEBUGS (1) #define DIRECT_BUILD_TRACE (1) #define DIRECT_BUILD_TEXT (1) #define DIRECT_BUILD_GETTID (1) # 31 "debug.c" 2 # 1 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stdarg.h" 1 3 4 # 34 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stdarg.h" 3 4 #define _STDARG_H #define _ANSI_STDARG_H_ #undef __need___va_list #define __GNUC_VA_LIST typedef __builtin_va_list __gnuc_va_list; #define va_start(v,l) __builtin_va_start(v,l) #define va_end(v) __builtin_va_end(v) #define va_arg(v,l) __builtin_va_arg(v,l) #define va_copy(d,s) __builtin_va_copy(d,s) #define __va_copy(d,s) __builtin_va_copy(d,s) # 105 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stdarg.h" 3 4 typedef __gnuc_va_list va_list; #define _VA_LIST_ #define _VA_LIST #define _VA_LIST_DEFINED #define _VA_LIST_T_H #define __va_list__ # 34 "debug.c" 2 # 1 "/usr/include/stdlib.h" 1 3 4 # 25 "/usr/include/stdlib.h" 3 4 # 1 "/usr/include/features.h" 1 3 4 # 20 "/usr/include/features.h" 3 4 #define _FEATURES_H 1 # 90 "/usr/include/features.h" 3 4 #undef __USE_ISOC99 #undef __USE_POSIX #undef __USE_POSIX2 #undef __USE_POSIX199309 #undef __USE_POSIX199506 #undef __USE_XOPEN #undef __USE_XOPEN_EXTENDED #undef __USE_UNIX98 #undef __USE_XOPEN2K #undef __USE_LARGEFILE #undef __USE_LARGEFILE64 #undef __USE_FILE_OFFSET64 #undef __USE_BSD #undef __USE_SVID #undef __USE_MISC #undef __USE_GNU #undef __USE_REENTRANT #undef __USE_FORTIFY_LEVEL #undef __FAVOR_BSD #undef __KERNEL_STRICT_NAMES #define __KERNEL_STRICT_NAMES #define __USE_ANSI 1 # 128 "/usr/include/features.h" 3 4 #define __GNUC_PREREQ(maj,min) ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min)) # 145 "/usr/include/features.h" 3 4 #undef _ISOC99_SOURCE #define _ISOC99_SOURCE 1 #undef _POSIX_SOURCE #define _POSIX_SOURCE 1 #undef _POSIX_C_SOURCE #define _POSIX_C_SOURCE 199506L #undef _XOPEN_SOURCE #define _XOPEN_SOURCE 600 #undef _XOPEN_SOURCE_EXTENDED #define _XOPEN_SOURCE_EXTENDED 1 #undef _LARGEFILE64_SOURCE #define _LARGEFILE64_SOURCE 1 #undef _BSD_SOURCE #define _BSD_SOURCE 1 #undef _SVID_SOURCE #define _SVID_SOURCE 1 # 179 "/usr/include/features.h" 3 4 #define __USE_ISOC99 1 # 195 "/usr/include/features.h" 3 4 #define __USE_POSIX 1 #define __USE_POSIX2 1 #define __USE_POSIX199309 1 #define __USE_POSIX199506 1 #define __USE_XOPEN 1 #define __USE_XOPEN_EXTENDED 1 #define __USE_UNIX98 1 #undef _LARGEFILE_SOURCE #define _LARGEFILE_SOURCE 1 #define __USE_XOPEN2K 1 #undef __USE_ISOC99 #define __USE_ISOC99 1 # 234 "/usr/include/features.h" 3 4 #define __USE_LARGEFILE 1 #define __USE_LARGEFILE64 1 #define __USE_MISC 1 #define __USE_BSD 1 #define __USE_SVID 1 #define __USE_GNU 1 #define __USE_REENTRANT 1 # 274 "/usr/include/features.h" 3 4 #define __STDC_IEC_559__ 1 #define __STDC_IEC_559_COMPLEX__ 1 #define __STDC_ISO_10646__ 200009L #undef __GNU_LIBRARY__ #define __GNU_LIBRARY__ 6 #define __GLIBC__ 2 #define __GLIBC_MINOR__ 3 #define __GLIBC_PREREQ(maj,min) ((__GLIBC__ << 16) + __GLIBC_MINOR__ >= ((maj) << 16) + (min)) # 303 "/usr/include/features.h" 3 4 #define __GLIBC_HAVE_LONG_LONG 1 # 1 "/usr/include/sys/cdefs.h" 1 3 4 # 20 "/usr/include/sys/cdefs.h" 3 4 #define _SYS_CDEFS_H 1 # 35 "/usr/include/sys/cdefs.h" 3 4 #undef __P #undef __PMT # 46 "/usr/include/sys/cdefs.h" 3 4 #define __THROW __attribute__ ((__nothrow__)) #define __NTH(fct) __attribute__ ((__nothrow__)) fct # 73 "/usr/include/sys/cdefs.h" 3 4 #define __P(args) args #define __PMT(args) args #define __CONCAT(x,y) x ## y #define __STRING(x) #x #define __ptr_t void * #define __long_double_t long double #define __BEGIN_DECLS #define __END_DECLS # 113 "/usr/include/sys/cdefs.h" 3 4 #define __BEGIN_NAMESPACE_STD #define __END_NAMESPACE_STD #define __USING_NAMESPACE_STD(name) #define __BEGIN_NAMESPACE_C99 #define __END_NAMESPACE_C99 #define __USING_NAMESPACE_C99(name) #define __bounded #define __unbounded #define __ptrvalue #define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1) #define __bos0(ptr) __builtin_object_size (ptr, 0) #define __flexarr [] # 165 "/usr/include/sys/cdefs.h" 3 4 #define __REDIRECT(name,proto,alias) name proto __asm__ (__ASMNAME (#alias)) #define __REDIRECT_NTH(name,proto,alias) name proto __asm__ (__ASMNAME (#alias)) __THROW #define __ASMNAME(cname) __ASMNAME2 (__USER_LABEL_PREFIX__, cname) #define __ASMNAME2(prefix,cname) __STRING (prefix) cname # 195 "/usr/include/sys/cdefs.h" 3 4 #define __attribute_malloc__ __attribute__ ((__malloc__)) # 204 "/usr/include/sys/cdefs.h" 3 4 #define __attribute_pure__ __attribute__ ((__pure__)) # 213 "/usr/include/sys/cdefs.h" 3 4 #define __attribute_used__ __attribute__ ((__used__)) #define __attribute_noinline__ __attribute__ ((__noinline__)) #define __attribute_deprecated__ __attribute__ ((__deprecated__)) # 234 "/usr/include/sys/cdefs.h" 3 4 #define __attribute_format_arg__(x) __attribute__ ((__format_arg__ (x))) # 244 "/usr/include/sys/cdefs.h" 3 4 #define __attribute_format_strfmon__(a,b) __attribute__ ((__format__ (__strfmon__, a, b))) # 253 "/usr/include/sys/cdefs.h" 3 4 #define __nonnull(params) __attribute__ ((__nonnull__ params)) # 275 "/usr/include/sys/cdefs.h" 3 4 #define __restrict_arr __restrict # 310 "/usr/include/features.h" 2 3 4 # 332 "/usr/include/features.h" 3 4 # 1 "/usr/include/gnu/stubs.h" 1 3 4 # 10 "/usr/include/gnu/stubs.h" 3 4 #define __stub___kernel_cosl #define __stub___kernel_sinl #define __stub___kernel_tanl #define __stub_chflags #define __stub_fattach #define __stub_fchflags #define __stub_fdetach #define __stub_gtty #define __stub_lchmod #define __stub_lutimes #define __stub_revoke #define __stub_setlogin #define __stub_sstk #define __stub_stty # 333 "/usr/include/features.h" 2 3 4 # 26 "/usr/include/stdlib.h" 2 3 4 #define __need_size_t #define __need_wchar_t #define __need_NULL # 1 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 1 3 4 # 188 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #define __size_t__ #define __SIZE_T__ #define _SIZE_T #define _SYS_SIZE_T_H #define _T_SIZE_ #define _T_SIZE #define __SIZE_T #define _SIZE_T_ #define _BSD_SIZE_T_ #define _SIZE_T_DEFINED_ #define _SIZE_T_DEFINED #define _BSD_SIZE_T_DEFINED_ #define _SIZE_T_DECLARED #define ___int_size_t_h #define _GCC_SIZE_T #define _SIZET_ #define __size_t typedef unsigned int size_t; # 235 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_size_t # 264 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #define __wchar_t__ #define __WCHAR_T__ #define _WCHAR_T #define _T_WCHAR_ #define _T_WCHAR #define __WCHAR_T #define _WCHAR_T_ #define _BSD_WCHAR_T_ #define _WCHAR_T_DEFINED_ #define _WCHAR_T_DEFINED #define _WCHAR_T_H #define ___int_wchar_t_h #define __INT_WCHAR_T_H #define _GCC_WCHAR_T #define _WCHAR_T_DECLARED # 291 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef _BSD_WCHAR_T_ # 325 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 typedef long int wchar_t; # 344 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_wchar_t # 397 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef NULL #define NULL ((void *)0) #undef __need_NULL # 34 "/usr/include/stdlib.h" 2 3 4 #define _STDLIB_H 1 # 1 "/usr/include/bits/waitflags.h" 1 3 4 # 26 "/usr/include/bits/waitflags.h" 3 4 #define WNOHANG 1 #define WUNTRACED 2 #define WSTOPPED 2 #define WEXITED 4 #define WCONTINUED 8 #define WNOWAIT 0x01000000 #define __WALL 0x40000000 #define __WCLONE 0x80000000 # 43 "/usr/include/stdlib.h" 2 3 4 # 1 "/usr/include/bits/waitstatus.h" 1 3 4 # 29 "/usr/include/bits/waitstatus.h" 3 4 #define __WEXITSTATUS(status) (((status) & 0xff00) >> 8) #define __WTERMSIG(status) ((status) & 0x7f) #define __WSTOPSIG(status) __WEXITSTATUS(status) #define __WIFEXITED(status) (__WTERMSIG(status) == 0) #define __WIFSIGNALED(status) (((signed char) (((status) & 0x7f) + 1) >> 1) > 0) #define __WIFSTOPPED(status) (((status) & 0xff) == 0x7f) #define __WIFCONTINUED(status) ((status) == __W_CONTINUED) #define __WCOREDUMP(status) ((status) & __WCOREFLAG) #define __W_EXITCODE(ret,sig) ((ret) << 8 | (sig)) #define __W_STOPCODE(sig) ((sig) << 8 | 0x7f) #define __W_CONTINUED 0xffff #define __WCOREFLAG 0x80 # 1 "/usr/include/endian.h" 1 3 4 # 20 "/usr/include/endian.h" 3 4 #define _ENDIAN_H 1 # 32 "/usr/include/endian.h" 3 4 #define __LITTLE_ENDIAN 1234 #define __BIG_ENDIAN 4321 #define __PDP_ENDIAN 3412 # 1 "/usr/include/bits/endian.h" 1 3 4 #define __BYTE_ORDER __LITTLE_ENDIAN # 38 "/usr/include/endian.h" 2 3 4 #define __FLOAT_WORD_ORDER __BYTE_ORDER #define LITTLE_ENDIAN __LITTLE_ENDIAN #define BIG_ENDIAN __BIG_ENDIAN #define PDP_ENDIAN __PDP_ENDIAN #define BYTE_ORDER __BYTE_ORDER #define __LONG_LONG_PAIR(HI,LO) LO, HI # 66 "/usr/include/bits/waitstatus.h" 2 3 4 union wait { int w_status; struct { unsigned int __w_termsig:7; unsigned int __w_coredump:1; unsigned int __w_retcode:8; unsigned int:16; } __wait_terminated; struct { unsigned int __w_stopval:8; unsigned int __w_stopsig:8; unsigned int:16; } __wait_stopped; }; #define w_termsig __wait_terminated.__w_termsig #define w_coredump __wait_terminated.__w_coredump #define w_retcode __wait_terminated.__w_retcode #define w_stopsig __wait_stopped.__w_stopsig #define w_stopval __wait_stopped.__w_stopval # 44 "/usr/include/stdlib.h" 2 3 4 #define __WAIT_INT(status) (__extension__ ({ union { __typeof(status) __in; int __i; } __u; __u.__in = (status); __u.__i; })) # 68 "/usr/include/stdlib.h" 3 4 typedef union { union wait *__uptr; int *__iptr; } __WAIT_STATUS __attribute__ ((__transparent_union__)); #define __WAIT_STATUS_DEFN int * # 85 "/usr/include/stdlib.h" 3 4 #define WEXITSTATUS(status) __WEXITSTATUS(__WAIT_INT(status)) #define WTERMSIG(status) __WTERMSIG(__WAIT_INT(status)) #define WSTOPSIG(status) __WSTOPSIG(__WAIT_INT(status)) #define WIFEXITED(status) __WIFEXITED(__WAIT_INT(status)) #define WIFSIGNALED(status) __WIFSIGNALED(__WAIT_INT(status)) #define WIFSTOPPED(status) __WIFSTOPPED(__WAIT_INT(status)) #define WIFCONTINUED(status) __WIFCONTINUED(__WAIT_INT(status)) typedef struct { int quot; int rem; } div_t; typedef struct { long int quot; long int rem; } ldiv_t; #define __ldiv_t_defined 1 __extension__ typedef struct { long long int quot; long long int rem; } lldiv_t; #define __lldiv_t_defined 1 #define RAND_MAX 2147483647 #define EXIT_FAILURE 1 #define EXIT_SUCCESS 0 #define MB_CUR_MAX (__ctype_get_mb_cur_max ()) extern size_t __ctype_get_mb_cur_max (void) __attribute__ ((__nothrow__)); extern double atof (__const char *__nptr) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); extern int atoi (__const char *__nptr) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); extern long int atol (__const char *__nptr) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); __extension__ extern long long int atoll (__const char *__nptr) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); extern double strtod (__const char *__restrict __nptr, char **__restrict __endptr) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern float strtof (__const char *__restrict __nptr, char **__restrict __endptr) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern long double strtold (__const char *__restrict __nptr, char **__restrict __endptr) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern long int strtol (__const char *__restrict __nptr, char **__restrict __endptr, int __base) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern unsigned long int strtoul (__const char *__restrict __nptr, char **__restrict __endptr, int __base) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); __extension__ extern long long int strtoq (__const char *__restrict __nptr, char **__restrict __endptr, int __base) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); __extension__ extern unsigned long long int strtouq (__const char *__restrict __nptr, char **__restrict __endptr, int __base) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); __extension__ extern long long int strtoll (__const char *__restrict __nptr, char **__restrict __endptr, int __base) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); __extension__ extern unsigned long long int strtoull (__const char *__restrict __nptr, char **__restrict __endptr, int __base) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); # 235 "/usr/include/stdlib.h" 3 4 # 1 "/usr/include/xlocale.h" 1 3 4 # 22 "/usr/include/xlocale.h" 3 4 #define _XLOCALE_H 1 typedef struct __locale_struct { struct locale_data *__locales[13]; const unsigned short int *__ctype_b; const int *__ctype_tolower; const int *__ctype_toupper; const char *__names[13]; } *__locale_t; # 236 "/usr/include/stdlib.h" 2 3 4 extern long int strtol_l (__const char *__restrict __nptr, char **__restrict __endptr, int __base, __locale_t __loc) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 4))); extern unsigned long int strtoul_l (__const char *__restrict __nptr, char **__restrict __endptr, int __base, __locale_t __loc) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 4))); __extension__ extern long long int strtoll_l (__const char *__restrict __nptr, char **__restrict __endptr, int __base, __locale_t __loc) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 4))); __extension__ extern unsigned long long int strtoull_l (__const char *__restrict __nptr, char **__restrict __endptr, int __base, __locale_t __loc) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 4))); extern double strtod_l (__const char *__restrict __nptr, char **__restrict __endptr, __locale_t __loc) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 3))); extern float strtof_l (__const char *__restrict __nptr, char **__restrict __endptr, __locale_t __loc) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 3))); extern long double strtold_l (__const char *__restrict __nptr, char **__restrict __endptr, __locale_t __loc) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 3))); extern double __strtod_internal (__const char *__restrict __nptr, char **__restrict __endptr, int __group) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern float __strtof_internal (__const char *__restrict __nptr, char **__restrict __endptr, int __group) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern long double __strtold_internal (__const char *__restrict __nptr, char **__restrict __endptr, int __group) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern long int __strtol_internal (__const char *__restrict __nptr, char **__restrict __endptr, int __base, int __group) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); #define __strtol_internal_defined 1 extern unsigned long int __strtoul_internal (__const char *__restrict __nptr, char **__restrict __endptr, int __base, int __group) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); #define __strtoul_internal_defined 1 __extension__ extern long long int __strtoll_internal (__const char *__restrict __nptr, char **__restrict __endptr, int __base, int __group) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); #define __strtoll_internal_defined 1 __extension__ extern unsigned long long int __strtoull_internal (__const char * __restrict __nptr, char **__restrict __endptr, int __base, int __group) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); #define __strtoull_internal_defined 1 # 424 "/usr/include/stdlib.h" 3 4 extern char *l64a (long int __n) __attribute__ ((__nothrow__)); extern long int a64l (__const char *__s) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); # 1 "/usr/include/sys/types.h" 1 3 4 # 25 "/usr/include/sys/types.h" 3 4 #define _SYS_TYPES_H 1 # 1 "/usr/include/bits/types.h" 1 3 4 # 25 "/usr/include/bits/types.h" 3 4 #define _BITS_TYPES_H 1 # 1 "/usr/include/bits/wordsize.h" 1 3 4 # 19 "/usr/include/bits/wordsize.h" 3 4 #define __WORDSIZE 32 # 29 "/usr/include/bits/types.h" 2 3 4 #define __need_size_t # 1 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 1 3 4 # 235 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_size_t # 408 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_NULL # 32 "/usr/include/bits/types.h" 2 3 4 typedef unsigned char __u_char; typedef unsigned short int __u_short; typedef unsigned int __u_int; typedef unsigned long int __u_long; typedef signed char __int8_t; typedef unsigned char __uint8_t; typedef signed short int __int16_t; typedef unsigned short int __uint16_t; typedef signed int __int32_t; typedef unsigned int __uint32_t; __extension__ typedef signed long long int __int64_t; __extension__ typedef unsigned long long int __uint64_t; __extension__ typedef long long int __quad_t; __extension__ typedef unsigned long long int __u_quad_t; # 102 "/usr/include/bits/types.h" 3 4 #define __S16_TYPE short int #define __U16_TYPE unsigned short int #define __S32_TYPE int #define __U32_TYPE unsigned int #define __SLONGWORD_TYPE long int #define __ULONGWORD_TYPE unsigned long int #define __SQUAD_TYPE __quad_t #define __UQUAD_TYPE __u_quad_t #define __SWORD_TYPE int #define __UWORD_TYPE unsigned int #define __SLONG32_TYPE long int #define __ULONG32_TYPE unsigned long int #define __S64_TYPE __quad_t #define __U64_TYPE __u_quad_t # 129 "/usr/include/bits/types.h" 3 4 # 1 "/usr/include/bits/typesizes.h" 1 3 4 # 25 "/usr/include/bits/typesizes.h" 3 4 #define _BITS_TYPESIZES_H 1 #define __DEV_T_TYPE __UQUAD_TYPE #define __UID_T_TYPE __U32_TYPE #define __GID_T_TYPE __U32_TYPE #define __INO_T_TYPE __ULONGWORD_TYPE #define __INO64_T_TYPE __UQUAD_TYPE #define __MODE_T_TYPE __U32_TYPE #define __NLINK_T_TYPE __UWORD_TYPE #define __OFF_T_TYPE __SLONGWORD_TYPE #define __OFF64_T_TYPE __SQUAD_TYPE #define __PID_T_TYPE __S32_TYPE #define __RLIM_T_TYPE __ULONGWORD_TYPE #define __RLIM64_T_TYPE __UQUAD_TYPE #define __BLKCNT_T_TYPE __SLONGWORD_TYPE #define __BLKCNT64_T_TYPE __SQUAD_TYPE #define __FSBLKCNT_T_TYPE __ULONGWORD_TYPE #define __FSBLKCNT64_T_TYPE __UQUAD_TYPE #define __FSFILCNT_T_TYPE __ULONGWORD_TYPE #define __FSFILCNT64_T_TYPE __UQUAD_TYPE #define __ID_T_TYPE __U32_TYPE #define __CLOCK_T_TYPE __SLONGWORD_TYPE #define __TIME_T_TYPE __SLONGWORD_TYPE #define __USECONDS_T_TYPE __U32_TYPE #define __SUSECONDS_T_TYPE __SLONGWORD_TYPE #define __DADDR_T_TYPE __S32_TYPE #define __SWBLK_T_TYPE __SLONGWORD_TYPE #define __KEY_T_TYPE __S32_TYPE #define __CLOCKID_T_TYPE __S32_TYPE #define __TIMER_T_TYPE __S32_TYPE #define __BLKSIZE_T_TYPE __SLONGWORD_TYPE #define __FSID_T_TYPE struct { int __val[2]; } #define __SSIZE_T_TYPE __SWORD_TYPE #define __FD_SETSIZE 1024 # 130 "/usr/include/bits/types.h" 2 3 4 #define __STD_TYPE __extension__ typedef __extension__ typedef __u_quad_t __dev_t; __extension__ typedef unsigned int __uid_t; __extension__ typedef unsigned int __gid_t; __extension__ typedef unsigned long int __ino_t; __extension__ typedef __u_quad_t __ino64_t; __extension__ typedef unsigned int __mode_t; __extension__ typedef unsigned int __nlink_t; __extension__ typedef long int __off_t; __extension__ typedef __quad_t __off64_t; __extension__ typedef int __pid_t; __extension__ typedef struct { int __val[2]; } __fsid_t; __extension__ typedef long int __clock_t; __extension__ typedef unsigned long int __rlim_t; __extension__ typedef __u_quad_t __rlim64_t; __extension__ typedef unsigned int __id_t; __extension__ typedef long int __time_t; __extension__ typedef unsigned int __useconds_t; __extension__ typedef long int __suseconds_t; __extension__ typedef int __daddr_t; __extension__ typedef long int __swblk_t; __extension__ typedef int __key_t; __extension__ typedef int __clockid_t; __extension__ typedef int __timer_t; __extension__ typedef long int __blksize_t; __extension__ typedef long int __blkcnt_t; __extension__ typedef __quad_t __blkcnt64_t; __extension__ typedef unsigned long int __fsblkcnt_t; __extension__ typedef __u_quad_t __fsblkcnt64_t; __extension__ typedef unsigned long int __fsfilcnt_t; __extension__ typedef __u_quad_t __fsfilcnt64_t; __extension__ typedef int __ssize_t; typedef __off64_t __loff_t; typedef __quad_t *__qaddr_t; typedef char *__caddr_t; __extension__ typedef int __intptr_t; __extension__ typedef unsigned int __socklen_t; #undef __STD_TYPE # 32 "/usr/include/sys/types.h" 2 3 4 typedef __u_char u_char; typedef __u_short u_short; typedef __u_int u_int; typedef __u_long u_long; typedef __quad_t quad_t; typedef __u_quad_t u_quad_t; typedef __fsid_t fsid_t; #define __u_char_defined typedef __loff_t loff_t; typedef __ino_t ino_t; #define __ino_t_defined typedef __ino64_t ino64_t; #define __ino64_t_defined typedef __dev_t dev_t; #define __dev_t_defined typedef __gid_t gid_t; #define __gid_t_defined typedef __mode_t mode_t; #define __mode_t_defined typedef __nlink_t nlink_t; #define __nlink_t_defined typedef __uid_t uid_t; #define __uid_t_defined typedef __off_t off_t; #define __off_t_defined typedef __off64_t off64_t; #define __off64_t_defined typedef __pid_t pid_t; #define __pid_t_defined typedef __id_t id_t; #define __id_t_defined typedef __ssize_t ssize_t; #define __ssize_t_defined typedef __daddr_t daddr_t; typedef __caddr_t caddr_t; #define __daddr_t_defined typedef __key_t key_t; #define __key_t_defined #define __need_clock_t #define __need_time_t #define __need_timer_t #define __need_clockid_t # 1 "/usr/include/time.h" 1 3 4 # 54 "/usr/include/time.h" 3 4 #define __clock_t_defined 1 typedef __clock_t clock_t; #undef __need_clock_t #define __time_t_defined 1 typedef __time_t time_t; #undef __need_time_t #define __clockid_t_defined 1 typedef __clockid_t clockid_t; #undef __clockid_time_t #define __timer_t_defined 1 typedef __timer_t timer_t; #undef __need_timer_t # 125 "/usr/include/time.h" 3 4 #undef __need_timespec # 134 "/usr/include/sys/types.h" 2 3 4 typedef __useconds_t useconds_t; #define __useconds_t_defined typedef __suseconds_t suseconds_t; #define __suseconds_t_defined #define __need_size_t # 1 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 1 3 4 # 235 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_size_t # 408 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_NULL # 148 "/usr/include/sys/types.h" 2 3 4 typedef unsigned long int ulong; typedef unsigned short int ushort; typedef unsigned int uint; # 184 "/usr/include/sys/types.h" 3 4 #define __intN_t(N,MODE) typedef int int ##N ##_t __attribute__ ((__mode__ (MODE))) #define __u_intN_t(N,MODE) typedef unsigned int u_int ##N ##_t __attribute__ ((__mode__ (MODE))) #define __int8_t_defined typedef int int8_t __attribute__ ((__mode__ (__QI__))); typedef int int16_t __attribute__ ((__mode__ (__HI__))); typedef int int32_t __attribute__ ((__mode__ (__SI__))); typedef int int64_t __attribute__ ((__mode__ (__DI__))); typedef unsigned int u_int8_t __attribute__ ((__mode__ (__QI__))); typedef unsigned int u_int16_t __attribute__ ((__mode__ (__HI__))); typedef unsigned int u_int32_t __attribute__ ((__mode__ (__SI__))); typedef unsigned int u_int64_t __attribute__ ((__mode__ (__DI__))); typedef int register_t __attribute__ ((__mode__ (__word__))); #define __BIT_TYPES_DEFINED__ 1 # 1 "/usr/include/sys/select.h" 1 3 4 # 23 "/usr/include/sys/select.h" 3 4 #define _SYS_SELECT_H 1 # 1 "/usr/include/bits/select.h" 1 3 4 # 26 "/usr/include/bits/select.h" 3 4 #define __FD_ZERO(fdsp) do { int __d0, __d1; __asm__ __volatile__ ("cld; rep; stosl" : "=c" (__d0), "=D" (__d1) : "a" (0), "0" (sizeof (fd_set) / sizeof (__fd_mask)), "1" (&__FDS_BITS (fdsp)[0]) : "memory"); } while (0) # 37 "/usr/include/bits/select.h" 3 4 #define __FD_SET(fd,fdsp) __asm__ __volatile__ ("btsl %1,%0" : "=m" (__FDS_BITS (fdsp)[__FDELT (fd)]) : "r" (((int) (fd)) % __NFDBITS) : "cc","memory") #define __FD_CLR(fd,fdsp) __asm__ __volatile__ ("btrl %1,%0" : "=m" (__FDS_BITS (fdsp)[__FDELT (fd)]) : "r" (((int) (fd)) % __NFDBITS) : "cc","memory") #define __FD_ISSET(fd,fdsp) (__extension__ ({register char __result; __asm__ __volatile__ ("btl %1,%2 ; setcb %b0" : "=q" (__result) : "r" (((int) (fd)) % __NFDBITS), "m" (__FDS_BITS (fdsp)[__FDELT (fd)]) : "cc"); __result; })) # 32 "/usr/include/sys/select.h" 2 3 4 # 1 "/usr/include/bits/sigset.h" 1 3 4 # 21 "/usr/include/bits/sigset.h" 3 4 #define _SIGSET_H_types 1 typedef int __sig_atomic_t; #define _SIGSET_NWORDS (1024 / (8 * sizeof (unsigned long int))) typedef struct { unsigned long int __val[(1024 / (8 * sizeof (unsigned long int)))]; } __sigset_t; # 35 "/usr/include/sys/select.h" 2 3 4 #define __sigset_t_defined typedef __sigset_t sigset_t; #define __need_time_t #define __need_timespec # 1 "/usr/include/time.h" 1 3 4 # 67 "/usr/include/time.h" 3 4 #undef __need_clock_t # 83 "/usr/include/time.h" 3 4 #undef __need_time_t # 95 "/usr/include/time.h" 3 4 #undef __clockid_time_t # 107 "/usr/include/time.h" 3 4 #undef __need_timer_t #define __timespec_defined 1 struct timespec { __time_t tv_sec; long int tv_nsec; }; #undef __need_timespec # 45 "/usr/include/sys/select.h" 2 3 4 #define __need_timeval # 1 "/usr/include/bits/time.h" 1 3 4 # 62 "/usr/include/bits/time.h" 3 4 #undef __need_timeval #define _STRUCT_TIMEVAL 1 struct timeval { __time_t tv_sec; __suseconds_t tv_usec; }; # 47 "/usr/include/sys/select.h" 2 3 4 # 55 "/usr/include/sys/select.h" 3 4 typedef long int __fd_mask; #undef __NFDBITS #undef __FDELT #undef __FDMASK #define __NFDBITS (8 * sizeof (__fd_mask)) #define __FDELT(d) ((d) / __NFDBITS) #define __FDMASK(d) ((__fd_mask) 1 << ((d) % __NFDBITS)) typedef struct { __fd_mask fds_bits[1024 / (8 * sizeof (__fd_mask))]; #define __FDS_BITS(set) ((set)->fds_bits) } fd_set; #define FD_SETSIZE __FD_SETSIZE typedef __fd_mask fd_mask; #define NFDBITS __NFDBITS #define FD_SET(fd,fdsetp) __FD_SET (fd, fdsetp) #define FD_CLR(fd,fdsetp) __FD_CLR (fd, fdsetp) #define FD_ISSET(fd,fdsetp) __FD_ISSET (fd, fdsetp) #define FD_ZERO(fdsetp) __FD_ZERO (fdsetp) # 109 "/usr/include/sys/select.h" 3 4 extern int select (int __nfds, fd_set *__restrict __readfds, fd_set *__restrict __writefds, fd_set *__restrict __exceptfds, struct timeval *__restrict __timeout); # 121 "/usr/include/sys/select.h" 3 4 extern int pselect (int __nfds, fd_set *__restrict __readfds, fd_set *__restrict __writefds, fd_set *__restrict __exceptfds, const struct timespec *__restrict __timeout, const __sigset_t *__restrict __sigmask); # 217 "/usr/include/sys/types.h" 2 3 4 # 1 "/usr/include/sys/sysmacros.h" 1 3 4 # 21 "/usr/include/sys/sysmacros.h" 3 4 #define _SYS_SYSMACROS_H 1 __extension__ extern __inline unsigned int gnu_dev_major (unsigned long long int __dev) __attribute__ ((__nothrow__)); __extension__ extern __inline unsigned int gnu_dev_minor (unsigned long long int __dev) __attribute__ ((__nothrow__)); __extension__ extern __inline unsigned long long int gnu_dev_makedev (unsigned int __major, unsigned int __minor) __attribute__ ((__nothrow__)); __extension__ extern __inline unsigned int __attribute__ ((__nothrow__)) gnu_dev_major (unsigned long long int __dev) { return ((__dev >> 8) & 0xfff) | ((unsigned int) (__dev >> 32) & ~0xfff); } __extension__ extern __inline unsigned int __attribute__ ((__nothrow__)) gnu_dev_minor (unsigned long long int __dev) { return (__dev & 0xff) | ((unsigned int) (__dev >> 12) & ~0xff); } __extension__ extern __inline unsigned long long int __attribute__ ((__nothrow__)) gnu_dev_makedev (unsigned int __major, unsigned int __minor) { return ((__minor & 0xff) | ((__major & 0xfff) << 8) | (((unsigned long long int) (__minor & ~0xff)) << 12) | (((unsigned long long int) (__major & ~0xfff)) << 32)); } #define major(dev) gnu_dev_major (dev) #define minor(dev) gnu_dev_minor (dev) #define makedev(maj,min) gnu_dev_makedev (maj, min) # 220 "/usr/include/sys/types.h" 2 3 4 typedef __blksize_t blksize_t; #define __blksize_t_defined typedef __blkcnt_t blkcnt_t; #define __blkcnt_t_defined typedef __fsblkcnt_t fsblkcnt_t; #define __fsblkcnt_t_defined typedef __fsfilcnt_t fsfilcnt_t; #define __fsfilcnt_t_defined # 258 "/usr/include/sys/types.h" 3 4 typedef __blkcnt64_t blkcnt64_t; typedef __fsblkcnt64_t fsblkcnt64_t; typedef __fsfilcnt64_t fsfilcnt64_t; # 1 "/usr/include/bits/pthreadtypes.h" 1 3 4 # 20 "/usr/include/bits/pthreadtypes.h" 3 4 #define _BITS_PTHREADTYPES_H 1 #define __need_schedparam # 1 "/usr/include/bits/sched.h" 1 3 4 # 81 "/usr/include/bits/sched.h" 3 4 #define __defined_schedparam 1 struct __sched_param { int __sched_priority; }; #undef __need_schedparam # 24 "/usr/include/bits/pthreadtypes.h" 2 3 4 struct _pthread_fastlock { long int __status; int __spinlock; }; typedef struct _pthread_descr_struct *_pthread_descr; #define _PTHREAD_DESCR_DEFINED typedef struct __pthread_attr_s { int __detachstate; int __schedpolicy; struct __sched_param __schedparam; int __inheritsched; int __scope; size_t __guardsize; int __stackaddr_set; void *__stackaddr; size_t __stacksize; } pthread_attr_t; __extension__ typedef long long __pthread_cond_align_t; typedef struct { struct _pthread_fastlock __c_lock; _pthread_descr __c_waiting; char __padding[48 - sizeof (struct _pthread_fastlock) - sizeof (_pthread_descr) - sizeof (__pthread_cond_align_t)]; __pthread_cond_align_t __align; } pthread_cond_t; typedef struct { int __dummy; } pthread_condattr_t; typedef unsigned int pthread_key_t; typedef struct { int __m_reserved; int __m_count; _pthread_descr __m_owner; int __m_kind; struct _pthread_fastlock __m_lock; } pthread_mutex_t; typedef struct { int __mutexkind; } pthread_mutexattr_t; typedef int pthread_once_t; typedef struct _pthread_rwlock_t { struct _pthread_fastlock __rw_lock; int __rw_readers; _pthread_descr __rw_writer; _pthread_descr __rw_read_waiting; _pthread_descr __rw_write_waiting; int __rw_kind; int __rw_pshared; } pthread_rwlock_t; typedef struct { int __lockkind; int __pshared; } pthread_rwlockattr_t; typedef volatile int pthread_spinlock_t; typedef struct { struct _pthread_fastlock __ba_lock; int __ba_required; int __ba_present; _pthread_descr __ba_waiting; } pthread_barrier_t; typedef struct { int __pshared; } pthread_barrierattr_t; typedef unsigned long int pthread_t; # 267 "/usr/include/sys/types.h" 2 3 4 # 434 "/usr/include/stdlib.h" 2 3 4 extern long int random (void) __attribute__ ((__nothrow__)); extern void srandom (unsigned int __seed) __attribute__ ((__nothrow__)); extern char *initstate (unsigned int __seed, char *__statebuf, size_t __statelen) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2))); extern char *setstate (char *__statebuf) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); struct random_data { int32_t *fptr; int32_t *rptr; int32_t *state; int rand_type; int rand_deg; int rand_sep; int32_t *end_ptr; }; extern int random_r (struct random_data *__restrict __buf, int32_t *__restrict __result) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern int srandom_r (unsigned int __seed, struct random_data *__buf) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2))); extern int initstate_r (unsigned int __seed, char *__restrict __statebuf, size_t __statelen, struct random_data *__restrict __buf) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 4))); extern int setstate_r (char *__restrict __statebuf, struct random_data *__restrict __buf) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern int rand (void) __attribute__ ((__nothrow__)); extern void srand (unsigned int __seed) __attribute__ ((__nothrow__)); extern int rand_r (unsigned int *__seed) __attribute__ ((__nothrow__)); extern double drand48 (void) __attribute__ ((__nothrow__)); extern double erand48 (unsigned short int __xsubi[3]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern long int lrand48 (void) __attribute__ ((__nothrow__)); extern long int nrand48 (unsigned short int __xsubi[3]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern long int mrand48 (void) __attribute__ ((__nothrow__)); extern long int jrand48 (unsigned short int __xsubi[3]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern void srand48 (long int __seedval) __attribute__ ((__nothrow__)); extern unsigned short int *seed48 (unsigned short int __seed16v[3]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern void lcong48 (unsigned short int __param[7]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); struct drand48_data { unsigned short int __x[3]; unsigned short int __old_x[3]; unsigned short int __c; unsigned short int __init; unsigned long long int __a; }; extern int drand48_r (struct drand48_data *__restrict __buffer, double *__restrict __result) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern int erand48_r (unsigned short int __xsubi[3], struct drand48_data *__restrict __buffer, double *__restrict __result) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern int lrand48_r (struct drand48_data *__restrict __buffer, long int *__restrict __result) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern int nrand48_r (unsigned short int __xsubi[3], struct drand48_data *__restrict __buffer, long int *__restrict __result) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern int mrand48_r (struct drand48_data *__restrict __buffer, long int *__restrict __result) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern int jrand48_r (unsigned short int __xsubi[3], struct drand48_data *__restrict __buffer, long int *__restrict __result) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern int srand48_r (long int __seedval, struct drand48_data *__buffer) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2))); extern int seed48_r (unsigned short int __seed16v[3], struct drand48_data *__buffer) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern int lcong48_r (unsigned short int __param[7], struct drand48_data *__buffer) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); #define __malloc_and_calloc_defined extern void *malloc (size_t __size) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)); extern void *calloc (size_t __nmemb, size_t __size) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)); extern void *realloc (void *__ptr, size_t __size) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)); extern void free (void *__ptr) __attribute__ ((__nothrow__)); extern void cfree (void *__ptr) __attribute__ ((__nothrow__)); # 1 "/usr/include/alloca.h" 1 3 4 # 20 "/usr/include/alloca.h" 3 4 #define _ALLOCA_H 1 #define __need_size_t # 1 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 1 3 4 # 235 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_size_t # 408 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_NULL # 26 "/usr/include/alloca.h" 2 3 4 #undef alloca extern void *alloca (size_t __size) __attribute__ ((__nothrow__)); #define alloca(size) __builtin_alloca (size) # 607 "/usr/include/stdlib.h" 2 3 4 extern void *valloc (size_t __size) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)); extern int posix_memalign (void **__memptr, size_t __alignment, size_t __size) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) __attribute__ ((__nonnull__ (1))); extern void abort (void) __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__)); extern int atexit (void (*__func) (void)) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern void exit (int __status) __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__)); extern void _Exit (int __status) __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__)); extern char *getenv (__const char *__name) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern char *__secure_getenv (__const char *__name) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int putenv (char *__string) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int setenv (__const char *__name, __const char *__value, int __replace) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2))); extern int unsetenv (__const char *__name) __attribute__ ((__nothrow__)); extern int clearenv (void) __attribute__ ((__nothrow__)); # 691 "/usr/include/stdlib.h" 3 4 extern char *mktemp (char *__template) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); # 702 "/usr/include/stdlib.h" 3 4 extern int mkstemp (char *__template) __attribute__ ((__nonnull__ (1))); # 711 "/usr/include/stdlib.h" 3 4 extern int mkstemp64 (char *__template) __attribute__ ((__nonnull__ (1))); # 721 "/usr/include/stdlib.h" 3 4 extern char *mkdtemp (char *__template) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int system (__const char *__command); extern char *canonicalize_file_name (__const char *__name) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); # 749 "/usr/include/stdlib.h" 3 4 extern char *realpath (__const char *__restrict __name, char *__restrict __resolved) __attribute__ ((__nothrow__)); #define __COMPAR_FN_T typedef int (*__compar_fn_t) (__const void *, __const void *); typedef __compar_fn_t comparison_fn_t; extern void *bsearch (__const void *__key, __const void *__base, size_t __nmemb, size_t __size, __compar_fn_t __compar) __attribute__ ((__nonnull__ (1, 2, 5))); extern void qsort (void *__base, size_t __nmemb, size_t __size, __compar_fn_t __compar) __attribute__ ((__nonnull__ (1, 4))); extern int abs (int __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern long int labs (long int __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); __extension__ extern long long int llabs (long long int __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern div_t div (int __numer, int __denom) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern ldiv_t ldiv (long int __numer, long int __denom) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); __extension__ extern lldiv_t lldiv (long long int __numer, long long int __denom) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); # 814 "/usr/include/stdlib.h" 3 4 extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt, int *__restrict __sign) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4))); extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt, int *__restrict __sign) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4))); extern char *gcvt (double __value, int __ndigit, char *__buf) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3))); extern char *qecvt (long double __value, int __ndigit, int *__restrict __decpt, int *__restrict __sign) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4))); extern char *qfcvt (long double __value, int __ndigit, int *__restrict __decpt, int *__restrict __sign) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4))); extern char *qgcvt (long double __value, int __ndigit, char *__buf) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3))); extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt, int *__restrict __sign, char *__restrict __buf, size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5))); extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt, int *__restrict __sign, char *__restrict __buf, size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5))); extern int qecvt_r (long double __value, int __ndigit, int *__restrict __decpt, int *__restrict __sign, char *__restrict __buf, size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5))); extern int qfcvt_r (long double __value, int __ndigit, int *__restrict __decpt, int *__restrict __sign, char *__restrict __buf, size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5))); extern int mblen (__const char *__s, size_t __n) __attribute__ ((__nothrow__)); extern int mbtowc (wchar_t *__restrict __pwc, __const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__)); extern int wctomb (char *__s, wchar_t __wchar) __attribute__ ((__nothrow__)); extern size_t mbstowcs (wchar_t *__restrict __pwcs, __const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__)); extern size_t wcstombs (char *__restrict __s, __const wchar_t *__restrict __pwcs, size_t __n) __attribute__ ((__nothrow__)); extern int rpmatch (__const char *__response) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); # 902 "/usr/include/stdlib.h" 3 4 extern int getsubopt (char **__restrict __optionp, char *__const *__restrict __tokens, char **__restrict __valuep) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2, 3))); extern void setkey (__const char *__key) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int posix_openpt (int __oflag); extern int grantpt (int __fd) __attribute__ ((__nothrow__)); extern int unlockpt (int __fd) __attribute__ ((__nothrow__)); extern char *ptsname (int __fd) __attribute__ ((__nothrow__)); extern int ptsname_r (int __fd, char *__buf, size_t __buflen) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2))); extern int getpt (void); extern int getloadavg (double __loadavg[], int __nelem) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); #undef __need_malloc_and_calloc # 35 "debug.c" 2 # 1 "/usr/include/string.h" 1 3 4 # 24 "/usr/include/string.h" 3 4 #define _STRING_H 1 #define __need_size_t #define __need_NULL # 1 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 1 3 4 # 235 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_size_t # 397 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef NULL #define NULL ((void *)0) #undef __need_NULL # 34 "/usr/include/string.h" 2 3 4 extern void *memcpy (void *__restrict __dest, __const void *__restrict __src, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern void *memmove (void *__dest, __const void *__src, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern void *memccpy (void *__restrict __dest, __const void *__restrict __src, int __c, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern void *memset (void *__s, int __c, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int memcmp (__const void *__s1, __const void *__s2, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); extern void *memchr (__const void *__s, int __c, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); extern void *rawmemchr (__const void *__s, int __c) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); extern void *memrchr (__const void *__s, int __c, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); extern char *strcpy (char *__restrict __dest, __const char *__restrict __src) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern char *strncpy (char *__restrict __dest, __const char *__restrict __src, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern char *strcat (char *__restrict __dest, __const char *__restrict __src) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern char *strncat (char *__restrict __dest, __const char *__restrict __src, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern int strcmp (__const char *__s1, __const char *__s2) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); extern int strncmp (__const char *__s1, __const char *__s2, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); extern int strcoll (__const char *__s1, __const char *__s2) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); extern size_t strxfrm (char *__restrict __dest, __const char *__restrict __src, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2))); # 121 "/usr/include/string.h" 3 4 extern int strcoll_l (__const char *__s1, __const char *__s2, __locale_t __l) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 3))); extern size_t strxfrm_l (char *__dest, __const char *__src, size_t __n, __locale_t __l) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 4))); extern char *strdup (__const char *__s) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) __attribute__ ((__nonnull__ (1))); extern char *strndup (__const char *__string, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) __attribute__ ((__nonnull__ (1))); #define strdupa(s) (__extension__ ({ __const char *__old = (s); size_t __len = strlen (__old) + 1; char *__new = (char *) __builtin_alloca (__len); (char *) memcpy (__new, __old, __len); })) # 154 "/usr/include/string.h" 3 4 #define strndupa(s,n) (__extension__ ({ __const char *__old = (s); size_t __len = strnlen (__old, (n)); char *__new = (char *) __builtin_alloca (__len + 1); __new[__len] = '\0'; (char *) memcpy (__new, __old, __len); })) # 165 "/usr/include/string.h" 3 4 extern char *strchr (__const char *__s, int __c) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); extern char *strrchr (__const char *__s, int __c) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); extern char *strchrnul (__const char *__s, int __c) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); extern size_t strcspn (__const char *__s, __const char *__reject) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); extern size_t strspn (__const char *__s, __const char *__accept) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); extern char *strpbrk (__const char *__s, __const char *__accept) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); extern char *strstr (__const char *__haystack, __const char *__needle) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); extern char *strtok (char *__restrict __s, __const char *__restrict __delim) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2))); extern char *__strtok_r (char *__restrict __s, __const char *__restrict __delim, char **__restrict __save_ptr) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 3))); extern char *strtok_r (char *__restrict __s, __const char *__restrict __delim, char **__restrict __save_ptr) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 3))); extern char *strcasestr (__const char *__haystack, __const char *__needle) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); extern void *memmem (__const void *__haystack, size_t __haystacklen, __const void *__needle, size_t __needlelen) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 3))); extern void *__mempcpy (void *__restrict __dest, __const void *__restrict __src, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern void *mempcpy (void *__restrict __dest, __const void *__restrict __src, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern size_t strlen (__const char *__s) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); extern size_t strnlen (__const char *__string, size_t __maxlen) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); extern char *strerror (int __errnum) __attribute__ ((__nothrow__)); # 281 "/usr/include/string.h" 3 4 extern char *strerror_r (int __errnum, char *__buf, size_t __buflen) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2))); extern void __bzero (void *__s, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern void bcopy (__const void *__src, void *__dest, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern void bzero (void *__s, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int bcmp (__const void *__s1, __const void *__s2, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); extern char *index (__const char *__s, int __c) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); extern char *rindex (__const char *__s, int __c) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); extern int ffs (int __i) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern int ffsl (long int __l) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); __extension__ extern int ffsll (long long int __ll) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern int strcasecmp (__const char *__s1, __const char *__s2) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); extern int strncasecmp (__const char *__s1, __const char *__s2, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); extern int strcasecmp_l (__const char *__s1, __const char *__s2, __locale_t __loc) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 3))); extern int strncasecmp_l (__const char *__s1, __const char *__s2, size_t __n, __locale_t __loc) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 4))); extern char *strsep (char **__restrict __stringp, __const char *__restrict __delim) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern int strverscmp (__const char *__s1, __const char *__s2) __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); extern char *strsignal (int __sig) __attribute__ ((__nothrow__)); extern char *__stpcpy (char *__restrict __dest, __const char *__restrict __src) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern char *stpcpy (char *__restrict __dest, __const char *__restrict __src) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern char *__stpncpy (char *__restrict __dest, __const char *__restrict __src, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern char *stpncpy (char *__restrict __dest, __const char *__restrict __src, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern char *strfry (char *__string) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern void *memfrob (void *__s, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern char *basename (__const char *__filename) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); # 426 "/usr/include/string.h" 3 4 # 36 "debug.c" 2 # 1 "/usr/include/unistd.h" 1 3 4 # 24 "/usr/include/unistd.h" 3 4 #define _UNISTD_H 1 #define _POSIX_VERSION 200112L #define _POSIX2_VERSION 200112L #define _POSIX2_C_BIND 200112L #define _POSIX2_C_DEV 200112L #define _POSIX2_SW_DEV 200112L #define _POSIX2_LOCALEDEF 200112L #define _XOPEN_VERSION 500 #define _XOPEN_XCU_VERSION 4 #define _XOPEN_XPG2 1 #define _XOPEN_XPG3 1 #define _XOPEN_XPG4 1 #define _XOPEN_UNIX 1 #define _XOPEN_CRYPT 1 #define _XOPEN_ENH_I18N 1 #define _XOPEN_LEGACY 1 # 171 "/usr/include/unistd.h" 3 4 # 1 "/usr/include/bits/posix_opt.h" 1 3 4 # 21 "/usr/include/bits/posix_opt.h" 3 4 #define _POSIX_OPT_H 1 #define _POSIX_JOB_CONTROL 1 #define _POSIX_SAVED_IDS 1 #define _POSIX_PRIORITY_SCHEDULING 200112L #define _POSIX_SYNCHRONIZED_IO 200112L #define _POSIX_FSYNC 200112L #define _POSIX_MAPPED_FILES 200112L #define _POSIX_MEMLOCK 200112L #define _POSIX_MEMLOCK_RANGE 200112L #define _POSIX_MEMORY_PROTECTION 200112L #define _POSIX_CHOWN_RESTRICTED 1 #define _POSIX_VDISABLE '\0' #define _POSIX_NO_TRUNC 1 #define _XOPEN_REALTIME 1 #define _XOPEN_REALTIME_THREADS 1 #define _XOPEN_SHM 1 #define _POSIX_THREADS 200112L #define _POSIX_REENTRANT_FUNCTIONS 1 #define _POSIX_THREAD_SAFE_FUNCTIONS 200112L #define _POSIX_THREAD_PRIORITY_SCHEDULING 200112L #define _POSIX_THREAD_ATTR_STACKSIZE 200112L #define _POSIX_THREAD_ATTR_STACKADDR 200112L #define _POSIX_SEMAPHORES 200112L #define _POSIX_REALTIME_SIGNALS 200112L #define _POSIX_ASYNCHRONOUS_IO 200112L #define _POSIX_ASYNC_IO 1 #define _LFS_ASYNCHRONOUS_IO 1 #define _POSIX_PRIORITIZED_IO 200112L #define _LFS64_ASYNCHRONOUS_IO 1 #define _LFS_LARGEFILE 1 #define _LFS64_LARGEFILE 1 #define _LFS64_STDIO 1 #define _POSIX_SHARED_MEMORY_OBJECTS 200112L #define _POSIX_CPUTIME 0 #define _POSIX_THREAD_CPUTIME 0 #define _POSIX_REGEXP 1 #define _POSIX_READER_WRITER_LOCKS 200112L #define _POSIX_SHELL 1 #define _POSIX_TIMEOUTS 200112L #define _POSIX_SPIN_LOCKS 200112L #define _POSIX_SPAWN 200112L #define _POSIX_TIMERS 200112L #define _POSIX_BARRIERS 200112L #define _POSIX_MESSAGE_PASSING 200112L #define _POSIX_THREAD_PROCESS_SHARED -1 #define _POSIX_MONOTONIC_CLOCK 0 #define _POSIX_CLOCK_SELECTION -1 #define _POSIX_ADVISORY_INFO 200112L #define _POSIX_IPV6 200112L #define _POSIX_RAW_SOCKETS 200112L #define _POSIX2_CHAR_TERM 200112L #define _POSIX_SPORADIC_SERVER -1 #define _POSIX_THREAD_SPORADIC_SERVER -1 #define _POSIX_TRACE -1 #define _POSIX_TRACE_EVENT_FILTER -1 #define _POSIX_TRACE_INHERIT -1 #define _POSIX_TRACE_LOG -1 #define _POSIX_TYPED_MEMORY_OBJECTS -1 #define _POSIX_THREAD_PRIO_INHERIT -1 #define _POSIX_THREAD_PRIO_PROTECT -1 # 172 "/usr/include/unistd.h" 2 3 4 # 1 "/usr/include/bits/environments.h" 1 3 4 # 41 "/usr/include/bits/environments.h" 3 4 #define _POSIX_V6_ILP32_OFF32 1 #define _POSIX_V6_ILP32_OFFBIG 1 #define _XBS5_ILP32_OFF32 1 #define _XBS5_ILP32_OFFBIG 1 # 57 "/usr/include/bits/environments.h" 3 4 #define __ILP32_OFF32_CFLAGS "-m32" #define __ILP32_OFFBIG_CFLAGS "-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" #define __ILP32_OFF32_LDFLAGS "-m32" #define __ILP32_OFFBIG_LDFLAGS "-m32" #define __LP64_OFF64_CFLAGS "-m64" #define __LP64_OFF64_LDFLAGS "-m64" # 176 "/usr/include/unistd.h" 2 3 4 #define STDIN_FILENO 0 #define STDOUT_FILENO 1 #define STDERR_FILENO 2 # 193 "/usr/include/unistd.h" 3 4 #define __need_size_t #define __need_NULL # 1 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 1 3 4 # 235 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_size_t # 397 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef NULL #define NULL ((void *)0) #undef __need_NULL # 196 "/usr/include/unistd.h" 2 3 4 # 236 "/usr/include/unistd.h" 3 4 typedef __intptr_t intptr_t; #define __intptr_t_defined typedef __socklen_t socklen_t; #define __socklen_t_defined #define R_OK 4 #define W_OK 2 #define X_OK 1 #define F_OK 0 extern int access (__const char *__name, int __type) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int euidaccess (__const char *__name, int __type) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); #define SEEK_SET 0 #define SEEK_CUR 1 #define SEEK_END 2 #define L_SET SEEK_SET #define L_INCR SEEK_CUR #define L_XTND SEEK_END # 287 "/usr/include/unistd.h" 3 4 extern __off_t lseek (int __fd, __off_t __offset, int __whence) __attribute__ ((__nothrow__)); # 298 "/usr/include/unistd.h" 3 4 extern __off64_t lseek64 (int __fd, __off64_t __offset, int __whence) __attribute__ ((__nothrow__)); extern int close (int __fd); extern ssize_t read (int __fd, void *__buf, size_t __nbytes); extern ssize_t write (int __fd, __const void *__buf, size_t __n); # 328 "/usr/include/unistd.h" 3 4 extern ssize_t pread (int __fd, void *__buf, size_t __nbytes, __off_t __offset); extern ssize_t pwrite (int __fd, __const void *__buf, size_t __n, __off_t __offset); # 356 "/usr/include/unistd.h" 3 4 extern ssize_t pread64 (int __fd, void *__buf, size_t __nbytes, __off64_t __offset); extern ssize_t pwrite64 (int __fd, __const void *__buf, size_t __n, __off64_t __offset); extern int pipe (int __pipedes[2]) __attribute__ ((__nothrow__)); # 378 "/usr/include/unistd.h" 3 4 extern unsigned int alarm (unsigned int __seconds) __attribute__ ((__nothrow__)); # 390 "/usr/include/unistd.h" 3 4 extern unsigned int sleep (unsigned int __seconds); extern __useconds_t ualarm (__useconds_t __value, __useconds_t __interval) __attribute__ ((__nothrow__)); extern int usleep (__useconds_t __useconds); # 414 "/usr/include/unistd.h" 3 4 extern int pause (void); extern int chown (__const char *__file, __uid_t __owner, __gid_t __group) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int fchown (int __fd, __uid_t __owner, __gid_t __group) __attribute__ ((__nothrow__)); extern int lchown (__const char *__file, __uid_t __owner, __gid_t __group) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int chdir (__const char *__path) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int fchdir (int __fd) __attribute__ ((__nothrow__)); # 448 "/usr/include/unistd.h" 3 4 extern char *getcwd (char *__buf, size_t __size) __attribute__ ((__nothrow__)); extern char *get_current_dir_name (void) __attribute__ ((__nothrow__)); extern char *getwd (char *__buf) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int dup (int __fd) __attribute__ ((__nothrow__)); extern int dup2 (int __fd, int __fd2) __attribute__ ((__nothrow__)); extern char **__environ; extern char **environ; extern int execve (__const char *__path, char *__const __argv[], char *__const __envp[]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int fexecve (int __fd, char *__const __argv[], char *__const __envp[]) __attribute__ ((__nothrow__)); extern int execv (__const char *__path, char *__const __argv[]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int execle (__const char *__path, __const char *__arg, ...) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int execl (__const char *__path, __const char *__arg, ...) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int execvp (__const char *__file, char *__const __argv[]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int execlp (__const char *__file, __const char *__arg, ...) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int nice (int __inc) __attribute__ ((__nothrow__)); extern void _exit (int __status) __attribute__ ((__noreturn__)); # 1 "/usr/include/bits/confname.h" 1 3 4 # 26 "/usr/include/bits/confname.h" 3 4 enum { _PC_LINK_MAX, #define _PC_LINK_MAX _PC_LINK_MAX _PC_MAX_CANON, #define _PC_MAX_CANON _PC_MAX_CANON _PC_MAX_INPUT, #define _PC_MAX_INPUT _PC_MAX_INPUT _PC_NAME_MAX, #define _PC_NAME_MAX _PC_NAME_MAX _PC_PATH_MAX, #define _PC_PATH_MAX _PC_PATH_MAX _PC_PIPE_BUF, #define _PC_PIPE_BUF _PC_PIPE_BUF _PC_CHOWN_RESTRICTED, #define _PC_CHOWN_RESTRICTED _PC_CHOWN_RESTRICTED _PC_NO_TRUNC, #define _PC_NO_TRUNC _PC_NO_TRUNC _PC_VDISABLE, #define _PC_VDISABLE _PC_VDISABLE _PC_SYNC_IO, #define _PC_SYNC_IO _PC_SYNC_IO _PC_ASYNC_IO, #define _PC_ASYNC_IO _PC_ASYNC_IO _PC_PRIO_IO, #define _PC_PRIO_IO _PC_PRIO_IO _PC_SOCK_MAXBUF, #define _PC_SOCK_MAXBUF _PC_SOCK_MAXBUF _PC_FILESIZEBITS, #define _PC_FILESIZEBITS _PC_FILESIZEBITS _PC_REC_INCR_XFER_SIZE, #define _PC_REC_INCR_XFER_SIZE _PC_REC_INCR_XFER_SIZE _PC_REC_MAX_XFER_SIZE, #define _PC_REC_MAX_XFER_SIZE _PC_REC_MAX_XFER_SIZE _PC_REC_MIN_XFER_SIZE, #define _PC_REC_MIN_XFER_SIZE _PC_REC_MIN_XFER_SIZE _PC_REC_XFER_ALIGN, #define _PC_REC_XFER_ALIGN _PC_REC_XFER_ALIGN _PC_ALLOC_SIZE_MIN, #define _PC_ALLOC_SIZE_MIN _PC_ALLOC_SIZE_MIN _PC_SYMLINK_MAX, #define _PC_SYMLINK_MAX _PC_SYMLINK_MAX _PC_2_SYMLINKS #define _PC_2_SYMLINKS _PC_2_SYMLINKS }; enum { _SC_ARG_MAX, #define _SC_ARG_MAX _SC_ARG_MAX _SC_CHILD_MAX, #define _SC_CHILD_MAX _SC_CHILD_MAX _SC_CLK_TCK, #define _SC_CLK_TCK _SC_CLK_TCK _SC_NGROUPS_MAX, #define _SC_NGROUPS_MAX _SC_NGROUPS_MAX _SC_OPEN_MAX, #define _SC_OPEN_MAX _SC_OPEN_MAX _SC_STREAM_MAX, #define _SC_STREAM_MAX _SC_STREAM_MAX _SC_TZNAME_MAX, #define _SC_TZNAME_MAX _SC_TZNAME_MAX _SC_JOB_CONTROL, #define _SC_JOB_CONTROL _SC_JOB_CONTROL _SC_SAVED_IDS, #define _SC_SAVED_IDS _SC_SAVED_IDS _SC_REALTIME_SIGNALS, #define _SC_REALTIME_SIGNALS _SC_REALTIME_SIGNALS _SC_PRIORITY_SCHEDULING, #define _SC_PRIORITY_SCHEDULING _SC_PRIORITY_SCHEDULING _SC_TIMERS, #define _SC_TIMERS _SC_TIMERS _SC_ASYNCHRONOUS_IO, #define _SC_ASYNCHRONOUS_IO _SC_ASYNCHRONOUS_IO _SC_PRIORITIZED_IO, #define _SC_PRIORITIZED_IO _SC_PRIORITIZED_IO _SC_SYNCHRONIZED_IO, #define _SC_SYNCHRONIZED_IO _SC_SYNCHRONIZED_IO _SC_FSYNC, #define _SC_FSYNC _SC_FSYNC _SC_MAPPED_FILES, #define _SC_MAPPED_FILES _SC_MAPPED_FILES _SC_MEMLOCK, #define _SC_MEMLOCK _SC_MEMLOCK _SC_MEMLOCK_RANGE, #define _SC_MEMLOCK_RANGE _SC_MEMLOCK_RANGE _SC_MEMORY_PROTECTION, #define _SC_MEMORY_PROTECTION _SC_MEMORY_PROTECTION _SC_MESSAGE_PASSING, #define _SC_MESSAGE_PASSING _SC_MESSAGE_PASSING _SC_SEMAPHORES, #define _SC_SEMAPHORES _SC_SEMAPHORES _SC_SHARED_MEMORY_OBJECTS, #define _SC_SHARED_MEMORY_OBJECTS _SC_SHARED_MEMORY_OBJECTS _SC_AIO_LISTIO_MAX, #define _SC_AIO_LISTIO_MAX _SC_AIO_LISTIO_MAX _SC_AIO_MAX, #define _SC_AIO_MAX _SC_AIO_MAX _SC_AIO_PRIO_DELTA_MAX, #define _SC_AIO_PRIO_DELTA_MAX _SC_AIO_PRIO_DELTA_MAX _SC_DELAYTIMER_MAX, #define _SC_DELAYTIMER_MAX _SC_DELAYTIMER_MAX _SC_MQ_OPEN_MAX, #define _SC_MQ_OPEN_MAX _SC_MQ_OPEN_MAX _SC_MQ_PRIO_MAX, #define _SC_MQ_PRIO_MAX _SC_MQ_PRIO_MAX _SC_VERSION, #define _SC_VERSION _SC_VERSION _SC_PAGESIZE, #define _SC_PAGESIZE _SC_PAGESIZE #define _SC_PAGE_SIZE _SC_PAGESIZE _SC_RTSIG_MAX, #define _SC_RTSIG_MAX _SC_RTSIG_MAX _SC_SEM_NSEMS_MAX, #define _SC_SEM_NSEMS_MAX _SC_SEM_NSEMS_MAX _SC_SEM_VALUE_MAX, #define _SC_SEM_VALUE_MAX _SC_SEM_VALUE_MAX _SC_SIGQUEUE_MAX, #define _SC_SIGQUEUE_MAX _SC_SIGQUEUE_MAX _SC_TIMER_MAX, #define _SC_TIMER_MAX _SC_TIMER_MAX _SC_BC_BASE_MAX, #define _SC_BC_BASE_MAX _SC_BC_BASE_MAX _SC_BC_DIM_MAX, #define _SC_BC_DIM_MAX _SC_BC_DIM_MAX _SC_BC_SCALE_MAX, #define _SC_BC_SCALE_MAX _SC_BC_SCALE_MAX _SC_BC_STRING_MAX, #define _SC_BC_STRING_MAX _SC_BC_STRING_MAX _SC_COLL_WEIGHTS_MAX, #define _SC_COLL_WEIGHTS_MAX _SC_COLL_WEIGHTS_MAX _SC_EQUIV_CLASS_MAX, #define _SC_EQUIV_CLASS_MAX _SC_EQUIV_CLASS_MAX _SC_EXPR_NEST_MAX, #define _SC_EXPR_NEST_MAX _SC_EXPR_NEST_MAX _SC_LINE_MAX, #define _SC_LINE_MAX _SC_LINE_MAX _SC_RE_DUP_MAX, #define _SC_RE_DUP_MAX _SC_RE_DUP_MAX _SC_CHARCLASS_NAME_MAX, #define _SC_CHARCLASS_NAME_MAX _SC_CHARCLASS_NAME_MAX _SC_2_VERSION, #define _SC_2_VERSION _SC_2_VERSION _SC_2_C_BIND, #define _SC_2_C_BIND _SC_2_C_BIND _SC_2_C_DEV, #define _SC_2_C_DEV _SC_2_C_DEV _SC_2_FORT_DEV, #define _SC_2_FORT_DEV _SC_2_FORT_DEV _SC_2_FORT_RUN, #define _SC_2_FORT_RUN _SC_2_FORT_RUN _SC_2_SW_DEV, #define _SC_2_SW_DEV _SC_2_SW_DEV _SC_2_LOCALEDEF, #define _SC_2_LOCALEDEF _SC_2_LOCALEDEF _SC_PII, #define _SC_PII _SC_PII _SC_PII_XTI, #define _SC_PII_XTI _SC_PII_XTI _SC_PII_SOCKET, #define _SC_PII_SOCKET _SC_PII_SOCKET _SC_PII_INTERNET, #define _SC_PII_INTERNET _SC_PII_INTERNET _SC_PII_OSI, #define _SC_PII_OSI _SC_PII_OSI _SC_POLL, #define _SC_POLL _SC_POLL _SC_SELECT, #define _SC_SELECT _SC_SELECT _SC_UIO_MAXIOV, #define _SC_UIO_MAXIOV _SC_UIO_MAXIOV _SC_IOV_MAX = _SC_UIO_MAXIOV, #define _SC_IOV_MAX _SC_IOV_MAX _SC_PII_INTERNET_STREAM, #define _SC_PII_INTERNET_STREAM _SC_PII_INTERNET_STREAM _SC_PII_INTERNET_DGRAM, #define _SC_PII_INTERNET_DGRAM _SC_PII_INTERNET_DGRAM _SC_PII_OSI_COTS, #define _SC_PII_OSI_COTS _SC_PII_OSI_COTS _SC_PII_OSI_CLTS, #define _SC_PII_OSI_CLTS _SC_PII_OSI_CLTS _SC_PII_OSI_M, #define _SC_PII_OSI_M _SC_PII_OSI_M _SC_T_IOV_MAX, #define _SC_T_IOV_MAX _SC_T_IOV_MAX _SC_THREADS, #define _SC_THREADS _SC_THREADS _SC_THREAD_SAFE_FUNCTIONS, #define _SC_THREAD_SAFE_FUNCTIONS _SC_THREAD_SAFE_FUNCTIONS _SC_GETGR_R_SIZE_MAX, #define _SC_GETGR_R_SIZE_MAX _SC_GETGR_R_SIZE_MAX _SC_GETPW_R_SIZE_MAX, #define _SC_GETPW_R_SIZE_MAX _SC_GETPW_R_SIZE_MAX _SC_LOGIN_NAME_MAX, #define _SC_LOGIN_NAME_MAX _SC_LOGIN_NAME_MAX _SC_TTY_NAME_MAX, #define _SC_TTY_NAME_MAX _SC_TTY_NAME_MAX _SC_THREAD_DESTRUCTOR_ITERATIONS, #define _SC_THREAD_DESTRUCTOR_ITERATIONS _SC_THREAD_DESTRUCTOR_ITERATIONS _SC_THREAD_KEYS_MAX, #define _SC_THREAD_KEYS_MAX _SC_THREAD_KEYS_MAX _SC_THREAD_STACK_MIN, #define _SC_THREAD_STACK_MIN _SC_THREAD_STACK_MIN _SC_THREAD_THREADS_MAX, #define _SC_THREAD_THREADS_MAX _SC_THREAD_THREADS_MAX _SC_THREAD_ATTR_STACKADDR, #define _SC_THREAD_ATTR_STACKADDR _SC_THREAD_ATTR_STACKADDR _SC_THREAD_ATTR_STACKSIZE, #define _SC_THREAD_ATTR_STACKSIZE _SC_THREAD_ATTR_STACKSIZE _SC_THREAD_PRIORITY_SCHEDULING, #define _SC_THREAD_PRIORITY_SCHEDULING _SC_THREAD_PRIORITY_SCHEDULING _SC_THREAD_PRIO_INHERIT, #define _SC_THREAD_PRIO_INHERIT _SC_THREAD_PRIO_INHERIT _SC_THREAD_PRIO_PROTECT, #define _SC_THREAD_PRIO_PROTECT _SC_THREAD_PRIO_PROTECT _SC_THREAD_PROCESS_SHARED, #define _SC_THREAD_PROCESS_SHARED _SC_THREAD_PROCESS_SHARED _SC_NPROCESSORS_CONF, #define _SC_NPROCESSORS_CONF _SC_NPROCESSORS_CONF _SC_NPROCESSORS_ONLN, #define _SC_NPROCESSORS_ONLN _SC_NPROCESSORS_ONLN _SC_PHYS_PAGES, #define _SC_PHYS_PAGES _SC_PHYS_PAGES _SC_AVPHYS_PAGES, #define _SC_AVPHYS_PAGES _SC_AVPHYS_PAGES _SC_ATEXIT_MAX, #define _SC_ATEXIT_MAX _SC_ATEXIT_MAX _SC_PASS_MAX, #define _SC_PASS_MAX _SC_PASS_MAX _SC_XOPEN_VERSION, #define _SC_XOPEN_VERSION _SC_XOPEN_VERSION _SC_XOPEN_XCU_VERSION, #define _SC_XOPEN_XCU_VERSION _SC_XOPEN_XCU_VERSION _SC_XOPEN_UNIX, #define _SC_XOPEN_UNIX _SC_XOPEN_UNIX _SC_XOPEN_CRYPT, #define _SC_XOPEN_CRYPT _SC_XOPEN_CRYPT _SC_XOPEN_ENH_I18N, #define _SC_XOPEN_ENH_I18N _SC_XOPEN_ENH_I18N _SC_XOPEN_SHM, #define _SC_XOPEN_SHM _SC_XOPEN_SHM _SC_2_CHAR_TERM, #define _SC_2_CHAR_TERM _SC_2_CHAR_TERM _SC_2_C_VERSION, #define _SC_2_C_VERSION _SC_2_C_VERSION _SC_2_UPE, #define _SC_2_UPE _SC_2_UPE _SC_XOPEN_XPG2, #define _SC_XOPEN_XPG2 _SC_XOPEN_XPG2 _SC_XOPEN_XPG3, #define _SC_XOPEN_XPG3 _SC_XOPEN_XPG3 _SC_XOPEN_XPG4, #define _SC_XOPEN_XPG4 _SC_XOPEN_XPG4 _SC_CHAR_BIT, #define _SC_CHAR_BIT _SC_CHAR_BIT _SC_CHAR_MAX, #define _SC_CHAR_MAX _SC_CHAR_MAX _SC_CHAR_MIN, #define _SC_CHAR_MIN _SC_CHAR_MIN _SC_INT_MAX, #define _SC_INT_MAX _SC_INT_MAX _SC_INT_MIN, #define _SC_INT_MIN _SC_INT_MIN _SC_LONG_BIT, #define _SC_LONG_BIT _SC_LONG_BIT _SC_WORD_BIT, #define _SC_WORD_BIT _SC_WORD_BIT _SC_MB_LEN_MAX, #define _SC_MB_LEN_MAX _SC_MB_LEN_MAX _SC_NZERO, #define _SC_NZERO _SC_NZERO _SC_SSIZE_MAX, #define _SC_SSIZE_MAX _SC_SSIZE_MAX _SC_SCHAR_MAX, #define _SC_SCHAR_MAX _SC_SCHAR_MAX _SC_SCHAR_MIN, #define _SC_SCHAR_MIN _SC_SCHAR_MIN _SC_SHRT_MAX, #define _SC_SHRT_MAX _SC_SHRT_MAX _SC_SHRT_MIN, #define _SC_SHRT_MIN _SC_SHRT_MIN _SC_UCHAR_MAX, #define _SC_UCHAR_MAX _SC_UCHAR_MAX _SC_UINT_MAX, #define _SC_UINT_MAX _SC_UINT_MAX _SC_ULONG_MAX, #define _SC_ULONG_MAX _SC_ULONG_MAX _SC_USHRT_MAX, #define _SC_USHRT_MAX _SC_USHRT_MAX _SC_NL_ARGMAX, #define _SC_NL_ARGMAX _SC_NL_ARGMAX _SC_NL_LANGMAX, #define _SC_NL_LANGMAX _SC_NL_LANGMAX _SC_NL_MSGMAX, #define _SC_NL_MSGMAX _SC_NL_MSGMAX _SC_NL_NMAX, #define _SC_NL_NMAX _SC_NL_NMAX _SC_NL_SETMAX, #define _SC_NL_SETMAX _SC_NL_SETMAX _SC_NL_TEXTMAX, #define _SC_NL_TEXTMAX _SC_NL_TEXTMAX _SC_XBS5_ILP32_OFF32, #define _SC_XBS5_ILP32_OFF32 _SC_XBS5_ILP32_OFF32 _SC_XBS5_ILP32_OFFBIG, #define _SC_XBS5_ILP32_OFFBIG _SC_XBS5_ILP32_OFFBIG _SC_XBS5_LP64_OFF64, #define _SC_XBS5_LP64_OFF64 _SC_XBS5_LP64_OFF64 _SC_XBS5_LPBIG_OFFBIG, #define _SC_XBS5_LPBIG_OFFBIG _SC_XBS5_LPBIG_OFFBIG _SC_XOPEN_LEGACY, #define _SC_XOPEN_LEGACY _SC_XOPEN_LEGACY _SC_XOPEN_REALTIME, #define _SC_XOPEN_REALTIME _SC_XOPEN_REALTIME _SC_XOPEN_REALTIME_THREADS, #define _SC_XOPEN_REALTIME_THREADS _SC_XOPEN_REALTIME_THREADS _SC_ADVISORY_INFO, #define _SC_ADVISORY_INFO _SC_ADVISORY_INFO _SC_BARRIERS, #define _SC_BARRIERS _SC_BARRIERS _SC_BASE, #define _SC_BASE _SC_BASE _SC_C_LANG_SUPPORT, #define _SC_C_LANG_SUPPORT _SC_C_LANG_SUPPORT _SC_C_LANG_SUPPORT_R, #define _SC_C_LANG_SUPPORT_R _SC_C_LANG_SUPPORT_R _SC_CLOCK_SELECTION, #define _SC_CLOCK_SELECTION _SC_CLOCK_SELECTION _SC_CPUTIME, #define _SC_CPUTIME _SC_CPUTIME _SC_THREAD_CPUTIME, #define _SC_THREAD_CPUTIME _SC_THREAD_CPUTIME _SC_DEVICE_IO, #define _SC_DEVICE_IO _SC_DEVICE_IO _SC_DEVICE_SPECIFIC, #define _SC_DEVICE_SPECIFIC _SC_DEVICE_SPECIFIC _SC_DEVICE_SPECIFIC_R, #define _SC_DEVICE_SPECIFIC_R _SC_DEVICE_SPECIFIC_R _SC_FD_MGMT, #define _SC_FD_MGMT _SC_FD_MGMT _SC_FIFO, #define _SC_FIFO _SC_FIFO _SC_PIPE, #define _SC_PIPE _SC_PIPE _SC_FILE_ATTRIBUTES, #define _SC_FILE_ATTRIBUTES _SC_FILE_ATTRIBUTES _SC_FILE_LOCKING, #define _SC_FILE_LOCKING _SC_FILE_LOCKING _SC_FILE_SYSTEM, #define _SC_FILE_SYSTEM _SC_FILE_SYSTEM _SC_MONOTONIC_CLOCK, #define _SC_MONOTONIC_CLOCK _SC_MONOTONIC_CLOCK _SC_MULTI_PROCESS, #define _SC_MULTI_PROCESS _SC_MULTI_PROCESS _SC_SINGLE_PROCESS, #define _SC_SINGLE_PROCESS _SC_SINGLE_PROCESS _SC_NETWORKING, #define _SC_NETWORKING _SC_NETWORKING _SC_READER_WRITER_LOCKS, #define _SC_READER_WRITER_LOCKS _SC_READER_WRITER_LOCKS _SC_SPIN_LOCKS, #define _SC_SPIN_LOCKS _SC_SPIN_LOCKS _SC_REGEXP, #define _SC_REGEXP _SC_REGEXP _SC_REGEX_VERSION, #define _SC_REGEX_VERSION _SC_REGEX_VERSION _SC_SHELL, #define _SC_SHELL _SC_SHELL _SC_SIGNALS, #define _SC_SIGNALS _SC_SIGNALS _SC_SPAWN, #define _SC_SPAWN _SC_SPAWN _SC_SPORADIC_SERVER, #define _SC_SPORADIC_SERVER _SC_SPORADIC_SERVER _SC_THREAD_SPORADIC_SERVER, #define _SC_THREAD_SPORADIC_SERVER _SC_THREAD_SPORADIC_SERVER _SC_SYSTEM_DATABASE, #define _SC_SYSTEM_DATABASE _SC_SYSTEM_DATABASE _SC_SYSTEM_DATABASE_R, #define _SC_SYSTEM_DATABASE_R _SC_SYSTEM_DATABASE_R _SC_TIMEOUTS, #define _SC_TIMEOUTS _SC_TIMEOUTS _SC_TYPED_MEMORY_OBJECTS, #define _SC_TYPED_MEMORY_OBJECTS _SC_TYPED_MEMORY_OBJECTS _SC_USER_GROUPS, #define _SC_USER_GROUPS _SC_USER_GROUPS _SC_USER_GROUPS_R, #define _SC_USER_GROUPS_R _SC_USER_GROUPS_R _SC_2_PBS, #define _SC_2_PBS _SC_2_PBS _SC_2_PBS_ACCOUNTING, #define _SC_2_PBS_ACCOUNTING _SC_2_PBS_ACCOUNTING _SC_2_PBS_LOCATE, #define _SC_2_PBS_LOCATE _SC_2_PBS_LOCATE _SC_2_PBS_MESSAGE, #define _SC_2_PBS_MESSAGE _SC_2_PBS_MESSAGE _SC_2_PBS_TRACK, #define _SC_2_PBS_TRACK _SC_2_PBS_TRACK _SC_SYMLOOP_MAX, #define _SC_SYMLOOP_MAX _SC_SYMLOOP_MAX _SC_STREAMS, #define _SC_STREAMS _SC_STREAMS _SC_2_PBS_CHECKPOINT, #define _SC_2_PBS_CHECKPOINT _SC_2_PBS_CHECKPOINT _SC_V6_ILP32_OFF32, #define _SC_V6_ILP32_OFF32 _SC_V6_ILP32_OFF32 _SC_V6_ILP32_OFFBIG, #define _SC_V6_ILP32_OFFBIG _SC_V6_ILP32_OFFBIG _SC_V6_LP64_OFF64, #define _SC_V6_LP64_OFF64 _SC_V6_LP64_OFF64 _SC_V6_LPBIG_OFFBIG, #define _SC_V6_LPBIG_OFFBIG _SC_V6_LPBIG_OFFBIG _SC_HOST_NAME_MAX, #define _SC_HOST_NAME_MAX _SC_HOST_NAME_MAX _SC_TRACE, #define _SC_TRACE _SC_TRACE _SC_TRACE_EVENT_FILTER, #define _SC_TRACE_EVENT_FILTER _SC_TRACE_EVENT_FILTER _SC_TRACE_INHERIT, #define _SC_TRACE_INHERIT _SC_TRACE_INHERIT _SC_TRACE_LOG, #define _SC_TRACE_LOG _SC_TRACE_LOG _SC_LEVEL1_ICACHE_SIZE, #define _SC_LEVEL1_ICACHE_SIZE _SC_LEVEL1_ICACHE_SIZE _SC_LEVEL1_ICACHE_ASSOC, #define _SC_LEVEL1_ICACHE_ASSOC _SC_LEVEL1_ICACHE_ASSOC _SC_LEVEL1_ICACHE_LINESIZE, #define _SC_LEVEL1_ICACHE_LINESIZE _SC_LEVEL1_ICACHE_LINESIZE _SC_LEVEL1_DCACHE_SIZE, #define _SC_LEVEL1_DCACHE_SIZE _SC_LEVEL1_DCACHE_SIZE _SC_LEVEL1_DCACHE_ASSOC, #define _SC_LEVEL1_DCACHE_ASSOC _SC_LEVEL1_DCACHE_ASSOC _SC_LEVEL1_DCACHE_LINESIZE, #define _SC_LEVEL1_DCACHE_LINESIZE _SC_LEVEL1_DCACHE_LINESIZE _SC_LEVEL2_CACHE_SIZE, #define _SC_LEVEL2_CACHE_SIZE _SC_LEVEL2_CACHE_SIZE _SC_LEVEL2_CACHE_ASSOC, #define _SC_LEVEL2_CACHE_ASSOC _SC_LEVEL2_CACHE_ASSOC _SC_LEVEL2_CACHE_LINESIZE, #define _SC_LEVEL2_CACHE_LINESIZE _SC_LEVEL2_CACHE_LINESIZE _SC_LEVEL3_CACHE_SIZE, #define _SC_LEVEL3_CACHE_SIZE _SC_LEVEL3_CACHE_SIZE _SC_LEVEL3_CACHE_ASSOC, #define _SC_LEVEL3_CACHE_ASSOC _SC_LEVEL3_CACHE_ASSOC _SC_LEVEL3_CACHE_LINESIZE, #define _SC_LEVEL3_CACHE_LINESIZE _SC_LEVEL3_CACHE_LINESIZE _SC_LEVEL4_CACHE_SIZE, #define _SC_LEVEL4_CACHE_SIZE _SC_LEVEL4_CACHE_SIZE _SC_LEVEL4_CACHE_ASSOC, #define _SC_LEVEL4_CACHE_ASSOC _SC_LEVEL4_CACHE_ASSOC _SC_LEVEL4_CACHE_LINESIZE, #define _SC_LEVEL4_CACHE_LINESIZE _SC_LEVEL4_CACHE_LINESIZE _SC_IPV6 = _SC_LEVEL1_ICACHE_SIZE + 50, #define _SC_IPV6 _SC_IPV6 _SC_RAW_SOCKETS #define _SC_RAW_SOCKETS _SC_RAW_SOCKETS }; enum { _CS_PATH, #define _CS_PATH _CS_PATH _CS_V6_WIDTH_RESTRICTED_ENVS, #define _CS_V6_WIDTH_RESTRICTED_ENVS _CS_V6_WIDTH_RESTRICTED_ENVS _CS_GNU_LIBC_VERSION, #define _CS_GNU_LIBC_VERSION _CS_GNU_LIBC_VERSION _CS_GNU_LIBPTHREAD_VERSION, #define _CS_GNU_LIBPTHREAD_VERSION _CS_GNU_LIBPTHREAD_VERSION _CS_LFS_CFLAGS = 1000, #define _CS_LFS_CFLAGS _CS_LFS_CFLAGS _CS_LFS_LDFLAGS, #define _CS_LFS_LDFLAGS _CS_LFS_LDFLAGS _CS_LFS_LIBS, #define _CS_LFS_LIBS _CS_LFS_LIBS _CS_LFS_LINTFLAGS, #define _CS_LFS_LINTFLAGS _CS_LFS_LINTFLAGS _CS_LFS64_CFLAGS, #define _CS_LFS64_CFLAGS _CS_LFS64_CFLAGS _CS_LFS64_LDFLAGS, #define _CS_LFS64_LDFLAGS _CS_LFS64_LDFLAGS _CS_LFS64_LIBS, #define _CS_LFS64_LIBS _CS_LFS64_LIBS _CS_LFS64_LINTFLAGS, #define _CS_LFS64_LINTFLAGS _CS_LFS64_LINTFLAGS _CS_XBS5_ILP32_OFF32_CFLAGS = 1100, #define _CS_XBS5_ILP32_OFF32_CFLAGS _CS_XBS5_ILP32_OFF32_CFLAGS _CS_XBS5_ILP32_OFF32_LDFLAGS, #define _CS_XBS5_ILP32_OFF32_LDFLAGS _CS_XBS5_ILP32_OFF32_LDFLAGS _CS_XBS5_ILP32_OFF32_LIBS, #define _CS_XBS5_ILP32_OFF32_LIBS _CS_XBS5_ILP32_OFF32_LIBS _CS_XBS5_ILP32_OFF32_LINTFLAGS, #define _CS_XBS5_ILP32_OFF32_LINTFLAGS _CS_XBS5_ILP32_OFF32_LINTFLAGS _CS_XBS5_ILP32_OFFBIG_CFLAGS, #define _CS_XBS5_ILP32_OFFBIG_CFLAGS _CS_XBS5_ILP32_OFFBIG_CFLAGS _CS_XBS5_ILP32_OFFBIG_LDFLAGS, #define _CS_XBS5_ILP32_OFFBIG_LDFLAGS _CS_XBS5_ILP32_OFFBIG_LDFLAGS _CS_XBS5_ILP32_OFFBIG_LIBS, #define _CS_XBS5_ILP32_OFFBIG_LIBS _CS_XBS5_ILP32_OFFBIG_LIBS _CS_XBS5_ILP32_OFFBIG_LINTFLAGS, #define _CS_XBS5_ILP32_OFFBIG_LINTFLAGS _CS_XBS5_ILP32_OFFBIG_LINTFLAGS _CS_XBS5_LP64_OFF64_CFLAGS, #define _CS_XBS5_LP64_OFF64_CFLAGS _CS_XBS5_LP64_OFF64_CFLAGS _CS_XBS5_LP64_OFF64_LDFLAGS, #define _CS_XBS5_LP64_OFF64_LDFLAGS _CS_XBS5_LP64_OFF64_LDFLAGS _CS_XBS5_LP64_OFF64_LIBS, #define _CS_XBS5_LP64_OFF64_LIBS _CS_XBS5_LP64_OFF64_LIBS _CS_XBS5_LP64_OFF64_LINTFLAGS, #define _CS_XBS5_LP64_OFF64_LINTFLAGS _CS_XBS5_LP64_OFF64_LINTFLAGS _CS_XBS5_LPBIG_OFFBIG_CFLAGS, #define _CS_XBS5_LPBIG_OFFBIG_CFLAGS _CS_XBS5_LPBIG_OFFBIG_CFLAGS _CS_XBS5_LPBIG_OFFBIG_LDFLAGS, #define _CS_XBS5_LPBIG_OFFBIG_LDFLAGS _CS_XBS5_LPBIG_OFFBIG_LDFLAGS _CS_XBS5_LPBIG_OFFBIG_LIBS, #define _CS_XBS5_LPBIG_OFFBIG_LIBS _CS_XBS5_LPBIG_OFFBIG_LIBS _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS, #define _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS _CS_POSIX_V6_ILP32_OFF32_CFLAGS, #define _CS_POSIX_V6_ILP32_OFF32_CFLAGS _CS_POSIX_V6_ILP32_OFF32_CFLAGS _CS_POSIX_V6_ILP32_OFF32_LDFLAGS, #define _CS_POSIX_V6_ILP32_OFF32_LDFLAGS _CS_POSIX_V6_ILP32_OFF32_LDFLAGS _CS_POSIX_V6_ILP32_OFF32_LIBS, #define _CS_POSIX_V6_ILP32_OFF32_LIBS _CS_POSIX_V6_ILP32_OFF32_LIBS _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS, #define _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS, #define _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS, #define _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LIBS, #define _CS_POSIX_V6_ILP32_OFFBIG_LIBS _CS_POSIX_V6_ILP32_OFFBIG_LIBS _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS, #define _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS _CS_POSIX_V6_LP64_OFF64_CFLAGS, #define _CS_POSIX_V6_LP64_OFF64_CFLAGS _CS_POSIX_V6_LP64_OFF64_CFLAGS _CS_POSIX_V6_LP64_OFF64_LDFLAGS, #define _CS_POSIX_V6_LP64_OFF64_LDFLAGS _CS_POSIX_V6_LP64_OFF64_LDFLAGS _CS_POSIX_V6_LP64_OFF64_LIBS, #define _CS_POSIX_V6_LP64_OFF64_LIBS _CS_POSIX_V6_LP64_OFF64_LIBS _CS_POSIX_V6_LP64_OFF64_LINTFLAGS, #define _CS_POSIX_V6_LP64_OFF64_LINTFLAGS _CS_POSIX_V6_LP64_OFF64_LINTFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS, #define _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS, #define _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LIBS, #define _CS_POSIX_V6_LPBIG_OFFBIG_LIBS _CS_POSIX_V6_LPBIG_OFFBIG_LIBS _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS #define _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS }; # 531 "/usr/include/unistd.h" 2 3 4 extern long int pathconf (__const char *__path, int __name) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern long int fpathconf (int __fd, int __name) __attribute__ ((__nothrow__)); extern long int sysconf (int __name) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern size_t confstr (int __name, char *__buf, size_t __len) __attribute__ ((__nothrow__)); extern __pid_t getpid (void) __attribute__ ((__nothrow__)); extern __pid_t getppid (void) __attribute__ ((__nothrow__)); extern __pid_t getpgrp (void) __attribute__ ((__nothrow__)); # 567 "/usr/include/unistd.h" 3 4 extern __pid_t __getpgid (__pid_t __pid) __attribute__ ((__nothrow__)); extern __pid_t getpgid (__pid_t __pid) __attribute__ ((__nothrow__)); extern int setpgid (__pid_t __pid, __pid_t __pgid) __attribute__ ((__nothrow__)); # 593 "/usr/include/unistd.h" 3 4 extern int setpgrp (void) __attribute__ ((__nothrow__)); # 610 "/usr/include/unistd.h" 3 4 extern __pid_t setsid (void) __attribute__ ((__nothrow__)); extern __pid_t getsid (__pid_t __pid) __attribute__ ((__nothrow__)); extern __uid_t getuid (void) __attribute__ ((__nothrow__)); extern __uid_t geteuid (void) __attribute__ ((__nothrow__)); extern __gid_t getgid (void) __attribute__ ((__nothrow__)); extern __gid_t getegid (void) __attribute__ ((__nothrow__)); extern int getgroups (int __size, __gid_t __list[]) __attribute__ ((__nothrow__)); extern int group_member (__gid_t __gid) __attribute__ ((__nothrow__)); extern int setuid (__uid_t __uid) __attribute__ ((__nothrow__)); extern int setreuid (__uid_t __ruid, __uid_t __euid) __attribute__ ((__nothrow__)); extern int seteuid (__uid_t __uid) __attribute__ ((__nothrow__)); extern int setgid (__gid_t __gid) __attribute__ ((__nothrow__)); extern int setregid (__gid_t __rgid, __gid_t __egid) __attribute__ ((__nothrow__)); extern int setegid (__gid_t __gid) __attribute__ ((__nothrow__)); extern int getresuid (__uid_t *__euid, __uid_t *__ruid, __uid_t *__suid); extern int getresgid (__gid_t *__egid, __gid_t *__rgid, __gid_t *__sgid); extern int setresuid (__uid_t __euid, __uid_t __ruid, __uid_t __suid); extern int setresgid (__gid_t __egid, __gid_t __rgid, __gid_t __sgid); extern __pid_t fork (void) __attribute__ ((__nothrow__)); extern __pid_t vfork (void) __attribute__ ((__nothrow__)); extern char *ttyname (int __fd) __attribute__ ((__nothrow__)); extern int ttyname_r (int __fd, char *__buf, size_t __buflen) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2))); extern int isatty (int __fd) __attribute__ ((__nothrow__)); extern int ttyslot (void) __attribute__ ((__nothrow__)); extern int link (__const char *__from, __const char *__to) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern int symlink (__const char *__from, __const char *__to) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern int readlink (__const char *__restrict __path, char *__restrict __buf, size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern int unlink (__const char *__name) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int rmdir (__const char *__path) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern __pid_t tcgetpgrp (int __fd) __attribute__ ((__nothrow__)); extern int tcsetpgrp (int __fd, __pid_t __pgrp_id) __attribute__ ((__nothrow__)); extern char *getlogin (void); extern int getlogin_r (char *__name, size_t __name_len) __attribute__ ((__nonnull__ (1))); extern int setlogin (__const char *__name) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); #define __need_getopt # 1 "/usr/include/getopt.h" 1 3 4 # 59 "/usr/include/getopt.h" 3 4 extern char *optarg; # 73 "/usr/include/getopt.h" 3 4 extern int optind; extern int opterr; extern int optopt; # 152 "/usr/include/getopt.h" 3 4 extern int getopt (int ___argc, char *const *___argv, const char *__shortopts) __attribute__ ((__nothrow__)); # 175 "/usr/include/getopt.h" 3 4 #undef __need_getopt # 784 "/usr/include/unistd.h" 2 3 4 extern int gethostname (char *__name, size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int sethostname (__const char *__name, size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int sethostid (long int __id) __attribute__ ((__nothrow__)); extern int getdomainname (char *__name, size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int setdomainname (__const char *__name, size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int vhangup (void) __attribute__ ((__nothrow__)); extern int revoke (__const char *__file) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int profil (unsigned short int *__sample_buffer, size_t __size, size_t __offset, unsigned int __scale) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int acct (__const char *__name) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern char *getusershell (void) __attribute__ ((__nothrow__)); extern void endusershell (void) __attribute__ ((__nothrow__)); extern void setusershell (void) __attribute__ ((__nothrow__)); extern int daemon (int __nochdir, int __noclose) __attribute__ ((__nothrow__)); extern int chroot (__const char *__path) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern char *getpass (__const char *__prompt) __attribute__ ((__nonnull__ (1))); # 869 "/usr/include/unistd.h" 3 4 extern int fsync (int __fd); extern long int gethostid (void); extern void sync (void) __attribute__ ((__nothrow__)); extern int getpagesize (void) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern int getdtablesize (void) __attribute__ ((__nothrow__)); extern int truncate (__const char *__file, __off_t __length) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); # 906 "/usr/include/unistd.h" 3 4 extern int truncate64 (__const char *__file, __off64_t __length) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); # 916 "/usr/include/unistd.h" 3 4 extern int ftruncate (int __fd, __off_t __length) __attribute__ ((__nothrow__)); # 926 "/usr/include/unistd.h" 3 4 extern int ftruncate64 (int __fd, __off64_t __length) __attribute__ ((__nothrow__)); # 936 "/usr/include/unistd.h" 3 4 extern int brk (void *__addr) __attribute__ ((__nothrow__)); extern void *sbrk (intptr_t __delta) __attribute__ ((__nothrow__)); # 957 "/usr/include/unistd.h" 3 4 extern long int syscall (long int __sysno, ...) __attribute__ ((__nothrow__)); # 974 "/usr/include/unistd.h" 3 4 #define F_ULOCK 0 #define F_LOCK 1 #define F_TLOCK 2 #define F_TEST 3 extern int lockf (int __fd, int __cmd, __off_t __len); # 990 "/usr/include/unistd.h" 3 4 extern int lockf64 (int __fd, int __cmd, __off64_t __len); # 1000 "/usr/include/unistd.h" 3 4 #define TEMP_FAILURE_RETRY(expression) (__extension__ ({ long int __result; do __result = (long int) (expression); while (__result == -1L && errno == EINTR); __result; })) # 1011 "/usr/include/unistd.h" 3 4 extern int fdatasync (int __fildes) __attribute__ ((__nothrow__)); extern char *crypt (__const char *__key, __const char *__salt) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern void encrypt (char *__block, int __edflag) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern void swab (__const void *__restrict __from, void *__restrict __to, ssize_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))); extern char *ctermid (char *__s) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); # 37 "debug.c" 2 # 1 "/usr/include/signal.h" 1 3 4 # 26 "/usr/include/signal.h" 3 4 #define _SIGNAL_H # 1 "/usr/include/bits/sigset.h" 1 3 4 # 43 "/usr/include/bits/sigset.h" 3 4 #define _SIGSET_H_fns 1 #define _EXTERN_INLINE extern __inline #define __sigmask(sig) (((unsigned long int) 1) << (((sig) - 1) % (8 * sizeof (unsigned long int)))) #define __sigword(sig) (((sig) - 1) / (8 * sizeof (unsigned long int))) #define __sigemptyset(set) (__extension__ ({ int __cnt = _SIGSET_NWORDS; sigset_t *__set = (set); while (--__cnt >= 0) __set->__val[__cnt] = 0; 0; })) #define __sigfillset(set) (__extension__ ({ int __cnt = _SIGSET_NWORDS; sigset_t *__set = (set); while (--__cnt >= 0) __set->__val[__cnt] = ~0UL; 0; })) # 72 "/usr/include/bits/sigset.h" 3 4 #define __sigisemptyset(set) (__extension__ ({ int __cnt = _SIGSET_NWORDS; const sigset_t *__set = (set); int __ret = __set->__val[--__cnt]; while (!__ret && --__cnt >= 0) __ret = __set->__val[__cnt]; __ret == 0; })) #define __sigandset(dest,left,right) (__extension__ ({ int __cnt = _SIGSET_NWORDS; sigset_t *__dest = (dest); const sigset_t *__left = (left); const sigset_t *__right = (right); while (--__cnt >= 0) __dest->__val[__cnt] = (__left->__val[__cnt] & __right->__val[__cnt]); 0; })) # 88 "/usr/include/bits/sigset.h" 3 4 #define __sigorset(dest,left,right) (__extension__ ({ int __cnt = _SIGSET_NWORDS; sigset_t *__dest = (dest); const sigset_t *__left = (left); const sigset_t *__right = (right); while (--__cnt >= 0) __dest->__val[__cnt] = (__left->__val[__cnt] | __right->__val[__cnt]); 0; })) # 103 "/usr/include/bits/sigset.h" 3 4 extern int __sigismember (__const __sigset_t *, int); extern int __sigaddset (__sigset_t *, int); extern int __sigdelset (__sigset_t *, int); # 34 "/usr/include/signal.h" 2 3 4 #define __sig_atomic_t_defined typedef __sig_atomic_t sig_atomic_t; #undef __need_sig_atomic_t #undef __need_sigset_t # 1 "/usr/include/bits/signum.h" 1 3 4 # 23 "/usr/include/bits/signum.h" 3 4 #define SIG_ERR ((__sighandler_t) -1) #define SIG_DFL ((__sighandler_t) 0) #define SIG_IGN ((__sighandler_t) 1) #define SIG_HOLD ((__sighandler_t) 2) #define SIGHUP 1 #define SIGINT 2 #define SIGQUIT 3 #define SIGILL 4 #define SIGTRAP 5 #define SIGABRT 6 #define SIGIOT 6 #define SIGBUS 7 #define SIGFPE 8 #define SIGKILL 9 #define SIGUSR1 10 #define SIGSEGV 11 #define SIGUSR2 12 #define SIGPIPE 13 #define SIGALRM 14 #define SIGTERM 15 #define SIGSTKFLT 16 #define SIGCLD SIGCHLD #define SIGCHLD 17 #define SIGCONT 18 #define SIGSTOP 19 #define SIGTSTP 20 #define SIGTTIN 21 #define SIGTTOU 22 #define SIGURG 23 #define SIGXCPU 24 #define SIGXFSZ 25 #define SIGVTALRM 26 #define SIGPROF 27 #define SIGWINCH 28 #define SIGPOLL SIGIO #define SIGIO 29 #define SIGPWR 30 #define SIGSYS 31 #define SIGUNUSED 31 #define _NSIG 65 #define SIGRTMIN (__libc_current_sigrtmin ()) #define SIGRTMAX (__libc_current_sigrtmax ()) #define __SIGRTMIN 32 #define __SIGRTMAX (_NSIG - 1) # 59 "/usr/include/signal.h" 2 3 4 # 75 "/usr/include/signal.h" 3 4 typedef void (*__sighandler_t) (int); extern __sighandler_t __sysv_signal (int __sig, __sighandler_t __handler) __attribute__ ((__nothrow__)); extern __sighandler_t sysv_signal (int __sig, __sighandler_t __handler) __attribute__ ((__nothrow__)); extern __sighandler_t signal (int __sig, __sighandler_t __handler) __attribute__ ((__nothrow__)); # 104 "/usr/include/signal.h" 3 4 extern __sighandler_t bsd_signal (int __sig, __sighandler_t __handler) __attribute__ ((__nothrow__)); extern int kill (__pid_t __pid, int __sig) __attribute__ ((__nothrow__)); extern int killpg (__pid_t __pgrp, int __sig) __attribute__ ((__nothrow__)); extern int raise (int __sig) __attribute__ ((__nothrow__)); extern __sighandler_t ssignal (int __sig, __sighandler_t __handler) __attribute__ ((__nothrow__)); extern int gsignal (int __sig) __attribute__ ((__nothrow__)); extern void psignal (int __sig, __const char *__s); # 153 "/usr/include/signal.h" 3 4 extern int __sigpause (int __sig_or_mask, int __is_sig); # 162 "/usr/include/signal.h" 3 4 extern int sigpause (int __sig) __asm__ ("__xpg_sigpause"); # 178 "/usr/include/signal.h" 3 4 #define sigmask(sig) __sigmask(sig) extern int sigblock (int __mask) __attribute__ ((__nothrow__)) __attribute__ ((__deprecated__)); extern int sigsetmask (int __mask) __attribute__ ((__nothrow__)) __attribute__ ((__deprecated__)); extern int siggetmask (void) __attribute__ ((__nothrow__)) __attribute__ ((__deprecated__)); #define NSIG _NSIG typedef __sighandler_t sighandler_t; typedef __sighandler_t sig_t; #define __need_timespec # 1 "/usr/include/time.h" 1 3 4 # 67 "/usr/include/time.h" 3 4 #undef __need_clock_t # 83 "/usr/include/time.h" 3 4 #undef __need_time_t # 95 "/usr/include/time.h" 3 4 #undef __clockid_time_t # 107 "/usr/include/time.h" 3 4 #undef __need_timer_t # 125 "/usr/include/time.h" 3 4 #undef __need_timespec # 210 "/usr/include/signal.h" 2 3 4 # 1 "/usr/include/bits/siginfo.h" 1 3 4 # 25 "/usr/include/bits/siginfo.h" 3 4 # 1 "/usr/include/bits/wordsize.h" 1 3 4 # 19 "/usr/include/bits/wordsize.h" 3 4 #define __WORDSIZE 32 # 26 "/usr/include/bits/siginfo.h" 2 3 4 #define __have_sigval_t 1 typedef union sigval { int sival_int; void *sival_ptr; } sigval_t; #define __have_siginfo_t 1 #define __SI_MAX_SIZE 128 #define __SI_PAD_SIZE ((__SI_MAX_SIZE / sizeof (int)) - 3) typedef struct siginfo { int si_signo; int si_errno; int si_code; union { int _pad[((128 / sizeof (int)) - 3)]; struct { __pid_t si_pid; __uid_t si_uid; } _kill; struct { int si_tid; int si_overrun; sigval_t si_sigval; } _timer; struct { __pid_t si_pid; __uid_t si_uid; sigval_t si_sigval; } _rt; struct { __pid_t si_pid; __uid_t si_uid; int si_status; __clock_t si_utime; __clock_t si_stime; } _sigchld; struct { void *si_addr; } _sigfault; struct { long int si_band; int si_fd; } _sigpoll; } _sifields; } siginfo_t; #define si_pid _sifields._kill.si_pid #define si_uid _sifields._kill.si_uid #define si_timerid _sifields._timer.si_tid #define si_overrun _sifields._timer.si_overrun #define si_status _sifields._sigchld.si_status #define si_utime _sifields._sigchld.si_utime #define si_stime _sifields._sigchld.si_stime #define si_value _sifields._rt.si_sigval #define si_int _sifields._rt.si_sigval.sival_int #define si_ptr _sifields._rt.si_sigval.sival_ptr #define si_addr _sifields._sigfault.si_addr #define si_band _sifields._sigpoll.si_band #define si_fd _sifields._sigpoll.si_fd enum { SI_ASYNCNL = -60, #define SI_ASYNCNL SI_ASYNCNL SI_TKILL = -6, #define SI_TKILL SI_TKILL SI_SIGIO, #define SI_SIGIO SI_SIGIO SI_ASYNCIO, #define SI_ASYNCIO SI_ASYNCIO SI_MESGQ, #define SI_MESGQ SI_MESGQ SI_TIMER, #define SI_TIMER SI_TIMER SI_QUEUE, #define SI_QUEUE SI_QUEUE SI_USER, #define SI_USER SI_USER SI_KERNEL = 0x80 #define SI_KERNEL SI_KERNEL }; enum { ILL_ILLOPC = 1, #define ILL_ILLOPC ILL_ILLOPC ILL_ILLOPN, #define ILL_ILLOPN ILL_ILLOPN ILL_ILLADR, #define ILL_ILLADR ILL_ILLADR ILL_ILLTRP, #define ILL_ILLTRP ILL_ILLTRP ILL_PRVOPC, #define ILL_PRVOPC ILL_PRVOPC ILL_PRVREG, #define ILL_PRVREG ILL_PRVREG ILL_COPROC, #define ILL_COPROC ILL_COPROC ILL_BADSTK #define ILL_BADSTK ILL_BADSTK }; enum { FPE_INTDIV = 1, #define FPE_INTDIV FPE_INTDIV FPE_INTOVF, #define FPE_INTOVF FPE_INTOVF FPE_FLTDIV, #define FPE_FLTDIV FPE_FLTDIV FPE_FLTOVF, #define FPE_FLTOVF FPE_FLTOVF FPE_FLTUND, #define FPE_FLTUND FPE_FLTUND FPE_FLTRES, #define FPE_FLTRES FPE_FLTRES FPE_FLTINV, #define FPE_FLTINV FPE_FLTINV FPE_FLTSUB #define FPE_FLTSUB FPE_FLTSUB }; enum { SEGV_MAPERR = 1, #define SEGV_MAPERR SEGV_MAPERR SEGV_ACCERR #define SEGV_ACCERR SEGV_ACCERR }; enum { BUS_ADRALN = 1, #define BUS_ADRALN BUS_ADRALN BUS_ADRERR, #define BUS_ADRERR BUS_ADRERR BUS_OBJERR #define BUS_OBJERR BUS_OBJERR }; enum { TRAP_BRKPT = 1, #define TRAP_BRKPT TRAP_BRKPT TRAP_TRACE #define TRAP_TRACE TRAP_TRACE }; enum { CLD_EXITED = 1, #define CLD_EXITED CLD_EXITED CLD_KILLED, #define CLD_KILLED CLD_KILLED CLD_DUMPED, #define CLD_DUMPED CLD_DUMPED CLD_TRAPPED, #define CLD_TRAPPED CLD_TRAPPED CLD_STOPPED, #define CLD_STOPPED CLD_STOPPED CLD_CONTINUED #define CLD_CONTINUED CLD_CONTINUED }; enum { POLL_IN = 1, #define POLL_IN POLL_IN POLL_OUT, #define POLL_OUT POLL_OUT POLL_MSG, #define POLL_MSG POLL_MSG POLL_ERR, #define POLL_ERR POLL_ERR POLL_PRI, #define POLL_PRI POLL_PRI POLL_HUP #define POLL_HUP POLL_HUP }; #undef __need_siginfo_t #define __have_sigevent_t 1 #define __SIGEV_MAX_SIZE 64 #define __SIGEV_PAD_SIZE ((__SIGEV_MAX_SIZE / sizeof (int)) - 3) typedef struct sigevent { sigval_t sigev_value; int sigev_signo; int sigev_notify; union { int _pad[((64 / sizeof (int)) - 3)]; __pid_t _tid; struct { void (*_function) (sigval_t); void *_attribute; } _sigev_thread; } _sigev_un; } sigevent_t; #define sigev_notify_function _sigev_un._sigev_thread._function #define sigev_notify_attributes _sigev_un._sigev_thread._attribute enum { SIGEV_SIGNAL = 0, #define SIGEV_SIGNAL SIGEV_SIGNAL SIGEV_NONE, #define SIGEV_NONE SIGEV_NONE SIGEV_THREAD, #define SIGEV_THREAD SIGEV_THREAD SIGEV_THREAD_ID = 4 #define SIGEV_THREAD_ID SIGEV_THREAD_ID }; # 213 "/usr/include/signal.h" 2 3 4 extern int sigemptyset (sigset_t *__set) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int sigfillset (sigset_t *__set) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int sigaddset (sigset_t *__set, int __signo) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int sigdelset (sigset_t *__set, int __signo) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int sigismember (__const sigset_t *__set, int __signo) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int sigisemptyset (__const sigset_t *__set) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int sigandset (sigset_t *__set, __const sigset_t *__left, __const sigset_t *__right) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2, 3))); extern int sigorset (sigset_t *__set, __const sigset_t *__left, __const sigset_t *__right) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2, 3))); # 1 "/usr/include/bits/sigaction.h" 1 3 4 # 25 "/usr/include/bits/sigaction.h" 3 4 struct sigaction { union { __sighandler_t sa_handler; void (*sa_sigaction) (int, siginfo_t *, void *); } __sigaction_handler; #define sa_handler __sigaction_handler.sa_handler #define sa_sigaction __sigaction_handler.sa_sigaction __sigset_t sa_mask; int sa_flags; void (*sa_restorer) (void); }; #define SA_NOCLDSTOP 1 #define SA_NOCLDWAIT 2 #define SA_SIGINFO 4 #define SA_ONSTACK 0x08000000 #define SA_RESTART 0x10000000 #define SA_NODEFER 0x40000000 #define SA_RESETHAND 0x80000000 #define SA_INTERRUPT 0x20000000 #define SA_NOMASK SA_NODEFER #define SA_ONESHOT SA_RESETHAND #define SA_STACK SA_ONSTACK #define SIG_BLOCK 0 #define SIG_UNBLOCK 1 #define SIG_SETMASK 2 # 247 "/usr/include/signal.h" 2 3 4 extern int sigprocmask (int __how, __const sigset_t *__restrict __set, sigset_t *__restrict __oset) __attribute__ ((__nothrow__)); extern int sigsuspend (__const sigset_t *__set) __attribute__ ((__nonnull__ (1))); extern int sigaction (int __sig, __const struct sigaction *__restrict __act, struct sigaction *__restrict __oact) __attribute__ ((__nothrow__)); extern int sigpending (sigset_t *__set) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))); extern int sigwait (__const sigset_t *__restrict __set, int *__restrict __sig) __attribute__ ((__nonnull__ (1, 2))); extern int sigwaitinfo (__const sigset_t *__restrict __set, siginfo_t *__restrict __info) __attribute__ ((__nonnull__ (1))); extern int sigtimedwait (__const sigset_t *__restrict __set, siginfo_t *__restrict __info, __const struct timespec *__restrict __timeout) __attribute__ ((__nonnull__ (1))); extern int sigqueue (__pid_t __pid, int __sig, __const union sigval __val) __attribute__ ((__nothrow__)); # 304 "/usr/include/signal.h" 3 4 extern __const char *__const _sys_siglist[65]; extern __const char *__const sys_siglist[65]; struct sigvec { __sighandler_t sv_handler; int sv_mask; int sv_flags; #define sv_onstack sv_flags }; #define SV_ONSTACK (1 << 0) #define SV_INTERRUPT (1 << 1) #define SV_RESETHAND (1 << 2) extern int sigvec (int __sig, __const struct sigvec *__vec, struct sigvec *__ovec) __attribute__ ((__nothrow__)); # 1 "/usr/include/bits/sigcontext.h" 1 3 4 # 26 "/usr/include/bits/sigcontext.h" 3 4 #define sigcontext_struct sigcontext # 1 "/usr/include/asm/sigcontext.h" 1 3 4 #define _ASMi386_SIGCONTEXT_H # 1 "/usr/include/linux/compiler.h" 1 3 4 #define __LINUX_COMPILER_H # 20 "/usr/include/linux/compiler.h" 3 4 #define __user #define __kernel #define __safe #define __force #define __iomem #define __chk_user_ptr(x) (void)0 #define __chk_io_ptr(x) (void)0 #define __builtin_warning(x,y...) (1) #define __acquires(x) #define __releases(x) #define __acquire(x) (void)0 #define __release(x) (void)0 #define __cond_lock(x) (x) #define inline __inline__ #define __inline__ __inline__ #define __inline __inline__ #define asm __asm__ #define volatile __volatile__ # 72 "/usr/include/linux/compiler.h" 3 4 #define likely(x) __builtin_expect(!!(x), 1) #define unlikely(x) __builtin_expect(!!(x), 0) #define barrier() __asm__ __volatile__ ("" : : : "memory") #define RELOC_HIDE(ptr,off) ({ unsigned long __ptr; __ptr = (unsigned long) (ptr); (typeof(ptr)) (__ptr + (off)); }) # 100 "/usr/include/linux/compiler.h" 3 4 #define __deprecated #define __must_check # 151 "/usr/include/linux/compiler.h" 3 4 #define __attribute_const__ #define __always_inline inline #define __cast__(_to) # 5 "/usr/include/asm/sigcontext.h" 2 3 4 # 20 "/usr/include/asm/sigcontext.h" 3 4 struct _fpreg { unsigned short significand[4]; unsigned short exponent; }; struct _fpxreg { unsigned short significand[4]; unsigned short exponent; unsigned short padding[3]; }; struct _xmmreg { unsigned long element[4]; }; struct _fpstate { unsigned long cw; unsigned long sw; unsigned long tag; unsigned long ipoff; unsigned long cssel; unsigned long dataoff; unsigned long datasel; struct _fpreg _st[8]; unsigned short status; unsigned short magic; unsigned long _fxsr_env[6]; unsigned long mxcsr; unsigned long reserved; struct _fpxreg _fxsr_st[8]; struct _xmmreg _xmm[8]; unsigned long padding[56]; }; #define X86_FXSR_MAGIC 0x0000 struct sigcontext { unsigned short gs, __gsh; unsigned short fs, __fsh; unsigned short es, __esh; unsigned short ds, __dsh; unsigned long edi; unsigned long esi; unsigned long ebp; unsigned long esp; unsigned long ebx; unsigned long edx; unsigned long ecx; unsigned long eax; unsigned long trapno; unsigned long err; unsigned long eip; unsigned short cs, __csh; unsigned long eflags; unsigned long esp_at_signal; unsigned short ss, __ssh; struct _fpstate * fpstate; unsigned long oldmask; unsigned long cr2; }; # 29 "/usr/include/bits/sigcontext.h" 2 3 4 # 334 "/usr/include/signal.h" 2 3 4 extern int sigreturn (struct sigcontext *__scp) __attribute__ ((__nothrow__)); # 346 "/usr/include/signal.h" 3 4 extern int siginterrupt (int __sig, int __interrupt) __attribute__ ((__nothrow__)); # 1 "/usr/include/bits/sigstack.h" 1 3 4 # 26 "/usr/include/bits/sigstack.h" 3 4 struct sigstack { void *ss_sp; int ss_onstack; }; enum { SS_ONSTACK = 1, #define SS_ONSTACK SS_ONSTACK SS_DISABLE #define SS_DISABLE SS_DISABLE }; #define MINSIGSTKSZ 2048 #define SIGSTKSZ 8192 typedef struct sigaltstack { void *ss_sp; int ss_flags; size_t ss_size; } stack_t; # 349 "/usr/include/signal.h" 2 3 4 # 1 "/usr/include/sys/ucontext.h" 1 3 4 # 20 "/usr/include/sys/ucontext.h" 3 4 #define _SYS_UCONTEXT_H 1 # 1 "/usr/include/signal.h" 1 3 4 # 24 "/usr/include/sys/ucontext.h" 2 3 4 # 1 "/usr/include/bits/sigcontext.h" 1 3 4 # 28 "/usr/include/sys/ucontext.h" 2 3 4 typedef int greg_t; #define NGREG 19 typedef greg_t gregset_t[19]; enum { REG_GS = 0, #define REG_GS REG_GS REG_FS, #define REG_FS REG_FS REG_ES, #define REG_ES REG_ES REG_DS, #define REG_DS REG_DS REG_EDI, #define REG_EDI REG_EDI REG_ESI, #define REG_ESI REG_ESI REG_EBP, #define REG_EBP REG_EBP REG_ESP, #define REG_ESP REG_ESP REG_EBX, #define REG_EBX REG_EBX REG_EDX, #define REG_EDX REG_EDX REG_ECX, #define REG_ECX REG_ECX REG_EAX, #define REG_EAX REG_EAX REG_TRAPNO, #define REG_TRAPNO REG_TRAPNO REG_ERR, #define REG_ERR REG_ERR REG_EIP, #define REG_EIP REG_EIP REG_CS, #define REG_CS REG_CS REG_EFL, #define REG_EFL REG_EFL REG_UESP, #define REG_UESP REG_UESP REG_SS #define REG_SS REG_SS }; struct _libc_fpreg { unsigned short int significand[4]; unsigned short int exponent; }; struct _libc_fpstate { unsigned long int cw; unsigned long int sw; unsigned long int tag; unsigned long int ipoff; unsigned long int cssel; unsigned long int dataoff; unsigned long int datasel; struct _libc_fpreg _st[8]; unsigned long int status; }; typedef struct _libc_fpstate *fpregset_t; typedef struct { gregset_t gregs; fpregset_t fpregs; unsigned long int oldmask; unsigned long int cr2; } mcontext_t; typedef struct ucontext { unsigned long int uc_flags; struct ucontext *uc_link; stack_t uc_stack; mcontext_t uc_mcontext; __sigset_t uc_sigmask; struct _libc_fpstate __fpregs_mem; } ucontext_t; # 352 "/usr/include/signal.h" 2 3 4 extern int sigstack (struct sigstack *__ss, struct sigstack *__oss) __attribute__ ((__nothrow__)) __attribute__ ((__deprecated__)); extern int sigaltstack (__const struct sigaltstack *__restrict __ss, struct sigaltstack *__restrict __oss) __attribute__ ((__nothrow__)); extern int sighold (int __sig) __attribute__ ((__nothrow__)); extern int sigrelse (int __sig) __attribute__ ((__nothrow__)); extern int sigignore (int __sig) __attribute__ ((__nothrow__)); extern __sighandler_t sigset (int __sig, __sighandler_t __disp) __attribute__ ((__nothrow__)); # 1 "/usr/include/bits/pthreadtypes.h" 1 3 4 # 387 "/usr/include/signal.h" 2 3 4 # 1 "/usr/include/bits/sigthread.h" 1 3 4 # 21 "/usr/include/bits/sigthread.h" 3 4 #define _BITS_SIGTHREAD_H 1 # 31 "/usr/include/bits/sigthread.h" 3 4 extern int pthread_sigmask (int __how, __const __sigset_t *__restrict __newmask, __sigset_t *__restrict __oldmask)__attribute__ ((__nothrow__)); extern int pthread_kill (pthread_t __threadid, int __signo) __attribute__ ((__nothrow__)); # 388 "/usr/include/signal.h" 2 3 4 extern int __libc_current_sigrtmin (void) __attribute__ ((__nothrow__)); extern int __libc_current_sigrtmax (void) __attribute__ ((__nothrow__)); # 38 "debug.c" 2 # 1 "../../lib/direct/clock.h" 1 # 29 "../../lib/direct/clock.h" #define __DIRECT__CLOCK_H__ # 1 "/usr/include/sys/time.h" 1 3 4 # 20 "/usr/include/sys/time.h" 3 4 #define _SYS_TIME_H 1 #define __need_time_t # 1 "/usr/include/time.h" 1 3 4 # 67 "/usr/include/time.h" 3 4 #undef __need_clock_t # 83 "/usr/include/time.h" 3 4 #undef __need_time_t # 95 "/usr/include/time.h" 3 4 #undef __clockid_time_t # 107 "/usr/include/time.h" 3 4 #undef __need_timer_t # 125 "/usr/include/time.h" 3 4 #undef __need_timespec # 27 "/usr/include/sys/time.h" 2 3 4 #define __need_timeval # 1 "/usr/include/bits/time.h" 1 3 4 # 62 "/usr/include/bits/time.h" 3 4 #undef __need_timeval # 29 "/usr/include/sys/time.h" 2 3 4 # 38 "/usr/include/sys/time.h" 3 4 #define TIMEVAL_TO_TIMESPEC(tv,ts) { (ts)->tv_sec = (tv)->tv_sec; (ts)->tv_nsec = (tv)->tv_usec * 1000; } #define TIMESPEC_TO_TIMEVAL(tv,ts) { (tv)->tv_sec = (ts)->tv_sec; (tv)->tv_usec = (ts)->tv_nsec / 1000; } # 56 "/usr/include/sys/time.h" 3 4 struct timezone { int tz_minuteswest; int tz_dsttime; }; typedef struct timezone *__restrict __timezone_ptr_t; # 72 "/usr/include/sys/time.h" 3 4 extern int gettimeofday (struct timeval *__restrict __tv, __timezone_ptr_t __tz) __attribute__ ((__nothrow__)); extern int settimeofday (__const struct timeval *__tv, __const struct timezone *__tz) __attribute__ ((__nothrow__)); extern int adjtime (__const struct timeval *__delta, struct timeval *__olddelta) __attribute__ ((__nothrow__)); enum __itimer_which { ITIMER_REAL = 0, #define ITIMER_REAL ITIMER_REAL ITIMER_VIRTUAL = 1, #define ITIMER_VIRTUAL ITIMER_VIRTUAL ITIMER_PROF = 2 #define ITIMER_PROF ITIMER_PROF }; struct itimerval { struct timeval it_interval; struct timeval it_value; }; typedef enum __itimer_which __itimer_which_t; extern int getitimer (__itimer_which_t __which, struct itimerval *__value) __attribute__ ((__nothrow__)); extern int setitimer (__itimer_which_t __which, __const struct itimerval *__restrict __new, struct itimerval *__restrict __old) __attribute__ ((__nothrow__)); extern int utimes (__const char *__file, __const struct timeval __tvp[2]) __attribute__ ((__nothrow__)); extern int lutimes (__const char *__file, __const struct timeval __tvp[2]) __attribute__ ((__nothrow__)); extern int futimes (int __fd, __const struct timeval __tvp[2]) __attribute__ ((__nothrow__)); #define timerisset(tvp) ((tvp)->tv_sec || (tvp)->tv_usec) #define timerclear(tvp) ((tvp)->tv_sec = (tvp)->tv_usec = 0) #define timercmp(a,b,CMP) (((a)->tv_sec == (b)->tv_sec) ? ((a)->tv_usec CMP (b)->tv_usec) : ((a)->tv_sec CMP (b)->tv_sec)) #define timeradd(a,b,result) do { (result)->tv_sec = (a)->tv_sec + (b)->tv_sec; (result)->tv_usec = (a)->tv_usec + (b)->tv_usec; if ((result)->tv_usec >= 1000000) { ++(result)->tv_sec; (result)->tv_usec -= 1000000; } } while (0) # 170 "/usr/include/sys/time.h" 3 4 #define timersub(a,b,result) do { (result)->tv_sec = (a)->tv_sec - (b)->tv_sec; (result)->tv_usec = (a)->tv_usec - (b)->tv_usec; if ((result)->tv_usec < 0) { --(result)->tv_sec; (result)->tv_usec += 1000000; } } while (0) # 181 "/usr/include/sys/time.h" 3 4 # 32 "../../lib/direct/clock.h" 2 long long direct_clock_get_micros(); long long direct_clock_get_millis(); void direct_clock_set_start( const struct timeval *start ); # 40 "debug.c" 2 # 1 "../../lib/direct/debug.h" 1 # 29 "../../lib/direct/debug.h" #define __DIRECT__DEBUG_H__ # 1 "/usr/include/stdio.h" 1 3 4 # 27 "/usr/include/stdio.h" 3 4 #define _STDIO_H 1 #define __need_size_t #define __need_NULL # 1 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 1 3 4 # 235 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_size_t # 397 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef NULL #define NULL ((void *)0) #undef __need_NULL # 35 "/usr/include/stdio.h" 2 3 4 #define __need_FILE #define __need___FILE typedef struct _IO_FILE FILE; #define __FILE_defined 1 #undef __need_FILE typedef struct _IO_FILE __FILE; #define ____FILE_defined 1 #undef __need___FILE #define _STDIO_USES_IOSTREAM # 1 "/usr/include/libio.h" 1 3 4 # 30 "/usr/include/libio.h" 3 4 #define _IO_STDIO_H # 1 "/usr/include/_G_config.h" 1 3 4 #define _G_config_h 1 #define __need_size_t #define __need_wchar_t #define __need_wint_t #define __need_NULL # 1 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 1 3 4 # 235 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_size_t # 344 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_wchar_t #define _WINT_T typedef unsigned int wint_t; #undef __need_wint_t # 397 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef NULL #define NULL ((void *)0) #undef __need_NULL # 15 "/usr/include/_G_config.h" 2 3 4 # 23 "/usr/include/_G_config.h" 3 4 #define __need_mbstate_t # 1 "/usr/include/wchar.h" 1 3 4 # 47 "/usr/include/wchar.h" 3 4 #define __need_wint_t # 1 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 1 3 4 # 356 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_wint_t # 408 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_NULL # 49 "/usr/include/wchar.h" 2 3 4 # 1 "/usr/include/bits/wchar.h" 1 3 4 # 21 "/usr/include/bits/wchar.h" 3 4 #define _BITS_WCHAR_H 1 #define __WCHAR_MIN (-2147483647l - 1l) #define __WCHAR_MAX (2147483647l) # 51 "/usr/include/wchar.h" 2 3 4 # 74 "/usr/include/wchar.h" 3 4 #define __mbstate_t_defined 1 typedef struct { int __count; union { wint_t __wch; char __wchb[4]; } __value; } __mbstate_t; #undef __need_mbstate_t # 25 "/usr/include/_G_config.h" 2 3 4 #define _G_size_t size_t typedef struct { __off_t __pos; __mbstate_t __state; } _G_fpos_t; typedef struct { __off64_t __pos; __mbstate_t __state; } _G_fpos64_t; #define _G_ssize_t __ssize_t #define _G_off_t __off_t #define _G_off64_t __off64_t #define _G_pid_t __pid_t #define _G_uid_t __uid_t #define _G_wchar_t wchar_t #define _G_wint_t wint_t #define _G_stat64 stat64 # 1 "/usr/include/gconv.h" 1 3 4 # 24 "/usr/include/gconv.h" 3 4 #define _GCONV_H 1 #define __need_mbstate_t # 1 "/usr/include/wchar.h" 1 3 4 # 47 "/usr/include/wchar.h" 3 4 #define __need_wint_t # 1 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 1 3 4 # 356 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_wint_t # 408 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_NULL # 49 "/usr/include/wchar.h" 2 3 4 # 86 "/usr/include/wchar.h" 3 4 #undef __need_mbstate_t # 29 "/usr/include/gconv.h" 2 3 4 #define __need_size_t #define __need_wchar_t # 1 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 1 3 4 # 235 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_size_t # 344 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_wchar_t # 408 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_NULL # 32 "/usr/include/gconv.h" 2 3 4 #define __UNKNOWN_10646_CHAR ((wchar_t) 0xfffd) enum { __GCONV_OK = 0, __GCONV_NOCONV, __GCONV_NODB, __GCONV_NOMEM, __GCONV_EMPTY_INPUT, __GCONV_FULL_OUTPUT, __GCONV_ILLEGAL_INPUT, __GCONV_INCOMPLETE_INPUT, __GCONV_ILLEGAL_DESCRIPTOR, __GCONV_INTERNAL_ERROR }; enum { __GCONV_IS_LAST = 0x0001, __GCONV_IGNORE_ERRORS = 0x0002 }; struct __gconv_step; struct __gconv_step_data; struct __gconv_loaded_object; struct __gconv_trans_data; typedef int (*__gconv_fct) (struct __gconv_step *, struct __gconv_step_data *, __const unsigned char **, __const unsigned char *, unsigned char **, size_t *, int, int); typedef wint_t (*__gconv_btowc_fct) (struct __gconv_step *, unsigned char); typedef int (*__gconv_init_fct) (struct __gconv_step *); typedef void (*__gconv_end_fct) (struct __gconv_step *); typedef int (*__gconv_trans_fct) (struct __gconv_step *, struct __gconv_step_data *, void *, __const unsigned char *, __const unsigned char **, __const unsigned char *, unsigned char **, size_t *); typedef int (*__gconv_trans_context_fct) (void *, __const unsigned char *, __const unsigned char *, unsigned char *, unsigned char *); typedef int (*__gconv_trans_query_fct) (__const char *, __const char ***, size_t *); typedef int (*__gconv_trans_init_fct) (void **, const char *); typedef void (*__gconv_trans_end_fct) (void *); struct __gconv_trans_data { __gconv_trans_fct __trans_fct; __gconv_trans_context_fct __trans_context_fct; __gconv_trans_end_fct __trans_end_fct; void *__data; struct __gconv_trans_data *__next; }; struct __gconv_step { struct __gconv_loaded_object *__shlib_handle; __const char *__modname; int __counter; char *__from_name; char *__to_name; __gconv_fct __fct; __gconv_btowc_fct __btowc_fct; __gconv_init_fct __init_fct; __gconv_end_fct __end_fct; int __min_needed_from; int __max_needed_from; int __min_needed_to; int __max_needed_to; int __stateful; void *__data; }; struct __gconv_step_data { unsigned char *__outbuf; unsigned char *__outbufend; int __flags; int __invocation_counter; int __internal_use; __mbstate_t *__statep; __mbstate_t __state; struct __gconv_trans_data *__trans; }; typedef struct __gconv_info { size_t __nsteps; struct __gconv_step *__steps; __extension__ struct __gconv_step_data __data []; } *__gconv_t; # 45 "/usr/include/_G_config.h" 2 3 4 typedef union { struct __gconv_info __cd; struct { struct __gconv_info __cd; struct __gconv_step_data __data; } __combined; } _G_iconv_t; typedef int _G_int16_t __attribute__ ((__mode__ (__HI__))); typedef int _G_int32_t __attribute__ ((__mode__ (__SI__))); typedef unsigned int _G_uint16_t __attribute__ ((__mode__ (__HI__))); typedef unsigned int _G_uint32_t __attribute__ ((__mode__ (__SI__))); #define _G_HAVE_BOOL 1 #define _G_HAVE_ATEXIT 1 #define _G_HAVE_SYS_CDEFS 1 #define _G_HAVE_SYS_WAIT 1 #define _G_NEED_STDARG_H 1 #define _G_va_list __gnuc_va_list #define _G_HAVE_PRINTF_FP 1 #define _G_HAVE_MMAP 1 #define _G_HAVE_MREMAP 1 #define _G_HAVE_LONG_DOUBLE_IO 1 #define _G_HAVE_IO_FILE_OPEN 1 #define _G_HAVE_IO_GETLINE_INFO 1 #define _G_IO_IO_FILE_VERSION 0x20001 #define _G_OPEN64 __open64 #define _G_LSEEK64 __lseek64 #define _G_MMAP64 __mmap64 #define _G_FSTAT64(fd,buf) __fxstat64 (_STAT_VER, fd, buf) #define _G_HAVE_ST_BLKSIZE defined (_STATBUF_ST_BLKSIZE) #define _G_BUFSIZ 8192 #define _G_NAMES_HAVE_UNDERSCORE 0 #define _G_VTABLE_LABEL_HAS_LENGTH 1 #define _G_USING_THUNKS 1 #define _G_VTABLE_LABEL_PREFIX "__vt_" #define _G_VTABLE_LABEL_PREFIX_ID __vt_ #define _G_ARGS(ARGLIST) ARGLIST # 33 "/usr/include/libio.h" 2 3 4 #define _IO_pos_t _G_fpos_t #define _IO_fpos_t _G_fpos_t #define _IO_fpos64_t _G_fpos64_t #define _IO_size_t _G_size_t #define _IO_ssize_t _G_ssize_t #define _IO_off_t _G_off_t #define _IO_off64_t _G_off64_t #define _IO_pid_t _G_pid_t #define _IO_uid_t _G_uid_t #define _IO_iconv_t _G_iconv_t #define _IO_HAVE_SYS_WAIT _G_HAVE_SYS_WAIT #define _IO_HAVE_ST_BLKSIZE _G_HAVE_ST_BLKSIZE #define _IO_BUFSIZ _G_BUFSIZ #define _IO_va_list _G_va_list #define _IO_wint_t _G_wint_t #define __need___va_list #undef _IO_va_list #define _IO_va_list __gnuc_va_list # 76 "/usr/include/libio.h" 3 4 #define _PARAMS(protos) __P(protos) #define _IO_UNIFIED_JUMPTABLES 1 #define EOF (-1) # 105 "/usr/include/libio.h" 3 4 #define _IOS_INPUT 1 #define _IOS_OUTPUT 2 #define _IOS_ATEND 4 #define _IOS_APPEND 8 #define _IOS_TRUNC 16 #define _IOS_NOCREATE 32 #define _IOS_NOREPLACE 64 #define _IOS_BIN 128 #define _IO_MAGIC 0xFBAD0000 #define _OLD_STDIO_MAGIC 0xFABC0000 #define _IO_MAGIC_MASK 0xFFFF0000 #define _IO_USER_BUF 1 #define _IO_UNBUFFERED 2 #define _IO_NO_READS 4 #define _IO_NO_WRITES 8 #define _IO_EOF_SEEN 0x10 #define _IO_ERR_SEEN 0x20 #define _IO_DELETE_DONT_CLOSE 0x40 #define _IO_LINKED 0x80 #define _IO_IN_BACKUP 0x100 #define _IO_LINE_BUF 0x200 #define _IO_TIED_PUT_GET 0x400 #define _IO_CURRENTLY_PUTTING 0x800 #define _IO_IS_APPENDING 0x1000 #define _IO_IS_FILEBUF 0x2000 #define _IO_BAD_SEEN 0x4000 #define _IO_USER_LOCK 0x8000 #define _IO_FLAGS2_MMAP 1 #define _IO_FLAGS2_NOTCANCEL 2 #define _IO_SKIPWS 01 #define _IO_LEFT 02 #define _IO_RIGHT 04 #define _IO_INTERNAL 010 #define _IO_DEC 020 #define _IO_OCT 040 #define _IO_HEX 0100 #define _IO_SHOWBASE 0200 #define _IO_SHOWPOINT 0400 #define _IO_UPPERCASE 01000 #define _IO_SHOWPOS 02000 #define _IO_SCIENTIFIC 04000 #define _IO_FIXED 010000 #define _IO_UNITBUF 020000 #define _IO_STDIO 040000 #define _IO_DONT_CLOSE 0100000 #define _IO_BOOLALPHA 0200000 struct _IO_jump_t; struct _IO_FILE; # 176 "/usr/include/libio.h" 3 4 typedef void _IO_lock_t; struct _IO_marker { struct _IO_marker *_next; struct _IO_FILE *_sbuf; int _pos; # 199 "/usr/include/libio.h" 3 4 }; enum __codecvt_result { __codecvt_ok, __codecvt_partial, __codecvt_error, __codecvt_noconv }; # 267 "/usr/include/libio.h" 3 4 struct _IO_FILE { int _flags; #define _IO_file_flags _flags char* _IO_read_ptr; char* _IO_read_end; char* _IO_read_base; char* _IO_write_base; char* _IO_write_ptr; char* _IO_write_end; char* _IO_buf_base; char* _IO_buf_end; char *_IO_save_base; char *_IO_backup_base; char *_IO_save_end; struct _IO_marker *_markers; struct _IO_FILE *_chain; int _fileno; int _flags2; __off_t _old_offset; #define __HAVE_COLUMN unsigned short _cur_column; signed char _vtable_offset; char _shortbuf[1]; _IO_lock_t *_lock; # 315 "/usr/include/libio.h" 3 4 __off64_t _offset; void *__pad1; void *__pad2; int _mode; char _unused2[15 * sizeof (int) - 2 * sizeof (void *)]; }; typedef struct _IO_FILE _IO_FILE; struct _IO_FILE_plus; extern struct _IO_FILE_plus _IO_2_1_stdin_; extern struct _IO_FILE_plus _IO_2_1_stdout_; extern struct _IO_FILE_plus _IO_2_1_stderr_; #define _IO_stdin ((_IO_FILE*)(&_IO_2_1_stdin_)) #define _IO_stdout ((_IO_FILE*)(&_IO_2_1_stdout_)) #define _IO_stderr ((_IO_FILE*)(&_IO_2_1_stderr_)) # 354 "/usr/include/libio.h" 3 4 typedef __ssize_t __io_read_fn (void *__cookie, char *__buf, size_t __nbytes); typedef __ssize_t __io_write_fn (void *__cookie, __const char *__buf, size_t __n); typedef int __io_seek_fn (void *__cookie, __off64_t *__pos, int __w); typedef int __io_close_fn (void *__cookie); typedef __io_read_fn cookie_read_function_t; typedef __io_write_fn cookie_write_function_t; typedef __io_seek_fn cookie_seek_function_t; typedef __io_close_fn cookie_close_function_t; typedef struct { __io_read_fn *read; __io_write_fn *write; __io_seek_fn *seek; __io_close_fn *close; } _IO_cookie_io_functions_t; typedef _IO_cookie_io_functions_t cookie_io_functions_t; struct _IO_cookie_file; extern void _IO_cookie_init (struct _IO_cookie_file *__cfile, int __read_write, void *__cookie, _IO_cookie_io_functions_t __fns); extern int __underflow (_IO_FILE *) __attribute__ ((__nothrow__)); extern int __uflow (_IO_FILE *) __attribute__ ((__nothrow__)); extern int __overflow (_IO_FILE *, int) __attribute__ ((__nothrow__)); extern wint_t __wunderflow (_IO_FILE *) __attribute__ ((__nothrow__)); extern wint_t __wuflow (_IO_FILE *) __attribute__ ((__nothrow__)); extern wint_t __woverflow (_IO_FILE *, wint_t) __attribute__ ((__nothrow__)); #define _IO_BE(expr,res) __builtin_expect (expr, res) #define _IO_getc_unlocked(_fp) (_IO_BE ((_fp)->_IO_read_ptr >= (_fp)->_IO_read_end, 0) ? __uflow (_fp) : *(unsigned char *) (_fp)->_IO_read_ptr++) #define _IO_peekc_unlocked(_fp) (_IO_BE ((_fp)->_IO_read_ptr >= (_fp)->_IO_read_end, 0) && __underflow (_fp) == EOF ? EOF : *(unsigned char *) (_fp)->_IO_read_ptr) #define _IO_putc_unlocked(_ch,_fp) (_IO_BE ((_fp)->_IO_write_ptr >= (_fp)->_IO_write_end, 0) ? __overflow (_fp, (unsigned char) (_ch)) : (unsigned char) (*(_fp)->_IO_write_ptr++ = (_ch))) #define _IO_getwc_unlocked(_fp) (_IO_BE ((_fp)->_wide_data->_IO_read_ptr >= (_fp)->_wide_data->_IO_read_end, 0) ? __wuflow (_fp) : (_IO_wint_t) *(_fp)->_wide_data->_IO_read_ptr++) #define _IO_putwc_unlocked(_wch,_fp) (_IO_BE ((_fp)->_wide_data->_IO_write_ptr >= (_fp)->_wide_data->_IO_write_end, 0) ? __woverflow (_fp, _wch) : (_IO_wint_t) (*(_fp)->_wide_data->_IO_write_ptr++ = (_wch))) #define _IO_feof_unlocked(__fp) (((__fp)->_flags & _IO_EOF_SEEN) != 0) #define _IO_ferror_unlocked(__fp) (((__fp)->_flags & _IO_ERR_SEEN) != 0) extern int _IO_getc (_IO_FILE *__fp) __attribute__ ((__nothrow__)); extern int _IO_putc (int __c, _IO_FILE *__fp) __attribute__ ((__nothrow__)); extern int _IO_feof (_IO_FILE *__fp) __attribute__ ((__nothrow__)); extern int _IO_ferror (_IO_FILE *__fp) __attribute__ ((__nothrow__)); extern int _IO_peekc_locked (_IO_FILE *__fp) __attribute__ ((__nothrow__)); #define _IO_PENDING_OUTPUT_COUNT(_fp) ((_fp)->_IO_write_ptr - (_fp)->_IO_write_base) extern void _IO_flockfile (_IO_FILE *) __attribute__ ((__nothrow__)); extern void _IO_funlockfile (_IO_FILE *) __attribute__ ((__nothrow__)); extern int _IO_ftrylockfile (_IO_FILE *) __attribute__ ((__nothrow__)); # 466 "/usr/include/libio.h" 3 4 #define _IO_peekc(_fp) _IO_peekc_unlocked (_fp) #define _IO_flockfile(_fp) #define _IO_funlockfile(_fp) #define _IO_ftrylockfile(_fp) #define _IO_cleanup_region_start(_fct,_fp) #define _IO_cleanup_region_end(_Doit) extern int _IO_vfscanf (_IO_FILE * __restrict, const char * __restrict, __gnuc_va_list, int *__restrict) __attribute__ ((__nothrow__)); extern int _IO_vfprintf (_IO_FILE *__restrict, const char *__restrict, __gnuc_va_list) __attribute__ ((__nothrow__)); extern __ssize_t _IO_padn (_IO_FILE *, int, __ssize_t) __attribute__ ((__nothrow__)); extern size_t _IO_sgetn (_IO_FILE *, void *, size_t) __attribute__ ((__nothrow__)); extern __off64_t _IO_seekoff (_IO_FILE *, __off64_t, int, int) __attribute__ ((__nothrow__)); extern __off64_t _IO_seekpos (_IO_FILE *, __off64_t, int) __attribute__ ((__nothrow__)); extern void _IO_free_backup_area (_IO_FILE *) __attribute__ ((__nothrow__)); # 73 "/usr/include/stdio.h" 2 3 4 # 86 "/usr/include/stdio.h" 3 4 typedef _G_fpos_t fpos_t; typedef _G_fpos64_t fpos64_t; #define _IOFBF 0 #define _IOLBF 1 #define _IONBF 2 #define BUFSIZ _IO_BUFSIZ # 118 "/usr/include/stdio.h" 3 4 #define SEEK_SET 0 #define SEEK_CUR 1 #define SEEK_END 2 #define P_tmpdir "/tmp" # 138 "/usr/include/stdio.h" 3 4 # 1 "/usr/include/bits/stdio_lim.h" 1 3 4 # 24 "/usr/include/bits/stdio_lim.h" 3 4 #define L_tmpnam 20 #define TMP_MAX 238328 #define FILENAME_MAX 4096 #define L_ctermid 9 #define L_cuserid 9 #undef FOPEN_MAX #define FOPEN_MAX 16 # 139 "/usr/include/stdio.h" 2 3 4 extern struct _IO_FILE *stdin; extern struct _IO_FILE *stdout; extern struct _IO_FILE *stderr; #define stdin stdin #define stdout stdout #define stderr stderr extern int remove (__const char *__filename) __attribute__ ((__nothrow__)); extern int rename (__const char *__old, __const char *__new) __attribute__ ((__nothrow__)); extern FILE *tmpfile (void); # 174 "/usr/include/stdio.h" 3 4 extern FILE *tmpfile64 (void); extern char *tmpnam (char *__s) __attribute__ ((__nothrow__)); extern char *tmpnam_r (char *__s) __attribute__ ((__nothrow__)); # 196 "/usr/include/stdio.h" 3 4 extern char *tempnam (__const char *__dir, __const char *__pfx) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)); extern int fclose (FILE *__stream); extern int fflush (FILE *__stream); # 221 "/usr/include/stdio.h" 3 4 extern int fflush_unlocked (FILE *__stream); # 231 "/usr/include/stdio.h" 3 4 extern int fcloseall (void); extern FILE *fopen (__const char *__restrict __filename, __const char *__restrict __modes); extern FILE *freopen (__const char *__restrict __filename, __const char *__restrict __modes, FILE *__restrict __stream); # 262 "/usr/include/stdio.h" 3 4 extern FILE *fopen64 (__const char *__restrict __filename, __const char *__restrict __modes); extern FILE *freopen64 (__const char *__restrict __filename, __const char *__restrict __modes, FILE *__restrict __stream); extern FILE *fdopen (int __fd, __const char *__modes) __attribute__ ((__nothrow__)); extern FILE *fopencookie (void *__restrict __magic_cookie, __const char *__restrict __modes, _IO_cookie_io_functions_t __io_funcs) __attribute__ ((__nothrow__)); extern FILE *fmemopen (void *__s, size_t __len, __const char *__modes) __attribute__ ((__nothrow__)); extern FILE *open_memstream (char **__restrict __bufloc, size_t *__restrict __sizeloc) __attribute__ ((__nothrow__)); extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) __attribute__ ((__nothrow__)); extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf, int __modes, size_t __n) __attribute__ ((__nothrow__)); extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf, size_t __size) __attribute__ ((__nothrow__)); extern void setlinebuf (FILE *__stream) __attribute__ ((__nothrow__)); extern int fprintf (FILE *__restrict __stream, __const char *__restrict __format, ...); extern int printf (__const char *__restrict __format, ...); extern int sprintf (char *__restrict __s, __const char *__restrict __format, ...) __attribute__ ((__nothrow__)); extern int vfprintf (FILE *__restrict __s, __const char *__restrict __format, __gnuc_va_list __arg); extern int vprintf (__const char *__restrict __format, __gnuc_va_list __arg); extern int vsprintf (char *__restrict __s, __const char *__restrict __format, __gnuc_va_list __arg) __attribute__ ((__nothrow__)); extern int snprintf (char *__restrict __s, size_t __maxlen, __const char *__restrict __format, ...) __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 4))); extern int vsnprintf (char *__restrict __s, size_t __maxlen, __const char *__restrict __format, __gnuc_va_list __arg) __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 0))); extern int vasprintf (char **__restrict __ptr, __const char *__restrict __f, __gnuc_va_list __arg) __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 0))); extern int __asprintf (char **__restrict __ptr, __const char *__restrict __fmt, ...) __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 3))); extern int asprintf (char **__restrict __ptr, __const char *__restrict __fmt, ...) __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 3))); extern int vdprintf (int __fd, __const char *__restrict __fmt, __gnuc_va_list __arg) __attribute__ ((__format__ (__printf__, 2, 0))); extern int dprintf (int __fd, __const char *__restrict __fmt, ...) __attribute__ ((__format__ (__printf__, 2, 3))); extern int fscanf (FILE *__restrict __stream, __const char *__restrict __format, ...); extern int scanf (__const char *__restrict __format, ...); extern int sscanf (__const char *__restrict __s, __const char *__restrict __format, ...) __attribute__ ((__nothrow__)); extern int vfscanf (FILE *__restrict __s, __const char *__restrict __format, __gnuc_va_list __arg) __attribute__ ((__format__ (__scanf__, 2, 0))); extern int vscanf (__const char *__restrict __format, __gnuc_va_list __arg) __attribute__ ((__format__ (__scanf__, 1, 0))); extern int vsscanf (__const char *__restrict __s, __const char *__restrict __format, __gnuc_va_list __arg) __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__scanf__, 2, 0))); extern int fgetc (FILE *__stream); extern int getc (FILE *__stream); extern int getchar (void); #define getc(_fp) _IO_getc (_fp) extern int getc_unlocked (FILE *__stream); extern int getchar_unlocked (void); # 465 "/usr/include/stdio.h" 3 4 extern int fgetc_unlocked (FILE *__stream); extern int fputc (int __c, FILE *__stream); extern int putc (int __c, FILE *__stream); extern int putchar (int __c); #define putc(_ch,_fp) _IO_putc (_ch, _fp) # 498 "/usr/include/stdio.h" 3 4 extern int fputc_unlocked (int __c, FILE *__stream); extern int putc_unlocked (int __c, FILE *__stream); extern int putchar_unlocked (int __c); extern int getw (FILE *__stream); extern int putw (int __w, FILE *__stream); extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream); extern char *gets (char *__s); # 543 "/usr/include/stdio.h" 3 4 extern char *fgets_unlocked (char *__restrict __s, int __n, FILE *__restrict __stream); # 559 "/usr/include/stdio.h" 3 4 extern __ssize_t __getdelim (char **__restrict __lineptr, size_t *__restrict __n, int __delimiter, FILE *__restrict __stream); extern __ssize_t getdelim (char **__restrict __lineptr, size_t *__restrict __n, int __delimiter, FILE *__restrict __stream); extern __ssize_t getline (char **__restrict __lineptr, size_t *__restrict __n, FILE *__restrict __stream); extern int fputs (__const char *__restrict __s, FILE *__restrict __stream); extern int puts (__const char *__s); extern int ungetc (int __c, FILE *__stream); extern size_t fread (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream); extern size_t fwrite (__const void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __s); # 620 "/usr/include/stdio.h" 3 4 extern int fputs_unlocked (__const char *__restrict __s, FILE *__restrict __stream); # 631 "/usr/include/stdio.h" 3 4 extern size_t fread_unlocked (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream); extern size_t fwrite_unlocked (__const void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream); extern int fseek (FILE *__stream, long int __off, int __whence); extern long int ftell (FILE *__stream); extern void rewind (FILE *__stream); # 667 "/usr/include/stdio.h" 3 4 extern int fseeko (FILE *__stream, __off_t __off, int __whence); extern __off_t ftello (FILE *__stream); # 686 "/usr/include/stdio.h" 3 4 extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos); extern int fsetpos (FILE *__stream, __const fpos_t *__pos); # 709 "/usr/include/stdio.h" 3 4 extern int fseeko64 (FILE *__stream, __off64_t __off, int __whence); extern __off64_t ftello64 (FILE *__stream); extern int fgetpos64 (FILE *__restrict __stream, fpos64_t *__restrict __pos); extern int fsetpos64 (FILE *__stream, __const fpos64_t *__pos); extern void clearerr (FILE *__stream) __attribute__ ((__nothrow__)); extern int feof (FILE *__stream) __attribute__ ((__nothrow__)); extern int ferror (FILE *__stream) __attribute__ ((__nothrow__)); extern void clearerr_unlocked (FILE *__stream) __attribute__ ((__nothrow__)); extern int feof_unlocked (FILE *__stream) __attribute__ ((__nothrow__)); extern int ferror_unlocked (FILE *__stream) __attribute__ ((__nothrow__)); extern void perror (__const char *__s); # 1 "/usr/include/bits/sys_errlist.h" 1 3 4 # 27 "/usr/include/bits/sys_errlist.h" 3 4 extern int sys_nerr; extern __const char *__const sys_errlist[]; extern int _sys_nerr; extern __const char *__const _sys_errlist[]; # 748 "/usr/include/stdio.h" 2 3 4 extern int fileno (FILE *__stream) __attribute__ ((__nothrow__)); extern int fileno_unlocked (FILE *__stream) __attribute__ ((__nothrow__)); # 767 "/usr/include/stdio.h" 3 4 extern FILE *popen (__const char *__command, __const char *__modes); extern int pclose (FILE *__stream); extern char *ctermid (char *__s) __attribute__ ((__nothrow__)); extern char *cuserid (char *__s); struct obstack; extern int obstack_printf (struct obstack *__restrict __obstack, __const char *__restrict __format, ...) __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 3))); extern int obstack_vprintf (struct obstack *__restrict __obstack, __const char *__restrict __format, __gnuc_va_list __args) __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 0))); extern void flockfile (FILE *__stream) __attribute__ ((__nothrow__)); extern int ftrylockfile (FILE *__stream) __attribute__ ((__nothrow__)); extern void funlockfile (FILE *__stream) __attribute__ ((__nothrow__)); # 834 "/usr/include/stdio.h" 3 4 # 34 "../../lib/direct/debug.h" 2 # 1 "/usr/include/errno.h" 1 3 4 # 28 "/usr/include/errno.h" 3 4 #define _ERRNO_H 1 # 1 "/usr/include/bits/errno.h" 1 3 4 # 22 "/usr/include/bits/errno.h" 3 4 #undef EDOM #undef EILSEQ #undef ERANGE # 1 "/usr/include/linux/errno.h" 1 3 4 #define _LINUX_ERRNO_H # 1 "/usr/include/asm/errno.h" 1 3 4 #define _I386_ERRNO_H # 1 "/usr/include/asm-generic/errno.h" 1 3 4 #define _ASM_GENERIC_ERRNO_H # 1 "/usr/include/asm-generic/errno-base.h" 1 3 4 #define _ASM_GENERIC_ERRNO_BASE_H #define EPERM 1 #define ENOENT 2 #define ESRCH 3 #define EINTR 4 #define EIO 5 #define ENXIO 6 #define E2BIG 7 #define ENOEXEC 8 #define EBADF 9 #define ECHILD 10 #define EAGAIN 11 #define ENOMEM 12 #define EACCES 13 #define EFAULT 14 #define ENOTBLK 15 #define EBUSY 16 #define EEXIST 17 #define EXDEV 18 #define ENODEV 19 #define ENOTDIR 20 #define EISDIR 21 #define EINVAL 22 #define ENFILE 23 #define EMFILE 24 #define ENOTTY 25 #define ETXTBSY 26 #define EFBIG 27 #define ENOSPC 28 #define ESPIPE 29 #define EROFS 30 #define EMLINK 31 #define EPIPE 32 #define EDOM 33 #define ERANGE 34 # 5 "/usr/include/asm-generic/errno.h" 2 3 4 #define EDEADLK 35 #define ENAMETOOLONG 36 #define ENOLCK 37 #define ENOSYS 38 #define ENOTEMPTY 39 #define ELOOP 40 #define EWOULDBLOCK EAGAIN #define ENOMSG 42 #define EIDRM 43 #define ECHRNG 44 #define EL2NSYNC 45 #define EL3HLT 46 #define EL3RST 47 #define ELNRNG 48 #define EUNATCH 49 #define ENOCSI 50 #define EL2HLT 51 #define EBADE 52 #define EBADR 53 #define EXFULL 54 #define ENOANO 55 #define EBADRQC 56 #define EBADSLT 57 #define EDEADLOCK EDEADLK #define EBFONT 59 #define ENOSTR 60 #define ENODATA 61 #define ETIME 62 #define ENOSR 63 #define ENONET 64 #define ENOPKG 65 #define EREMOTE 66 #define ENOLINK 67 #define EADV 68 #define ESRMNT 69 #define ECOMM 70 #define EPROTO 71 #define EMULTIHOP 72 #define EDOTDOT 73 #define EBADMSG 74 #define EOVERFLOW 75 #define ENOTUNIQ 76 #define EBADFD 77 #define EREMCHG 78 #define ELIBACC 79 #define ELIBBAD 80 #define ELIBSCN 81 #define ELIBMAX 82 #define ELIBEXEC 83 #define EILSEQ 84 #define ERESTART 85 #define ESTRPIPE 86 #define EUSERS 87 #define ENOTSOCK 88 #define EDESTADDRREQ 89 #define EMSGSIZE 90 #define EPROTOTYPE 91 #define ENOPROTOOPT 92 #define EPROTONOSUPPORT 93 #define ESOCKTNOSUPPORT 94 #define EOPNOTSUPP 95 #define EPFNOSUPPORT 96 #define EAFNOSUPPORT 97 #define EADDRINUSE 98 #define EADDRNOTAVAIL 99 #define ENETDOWN 100 #define ENETUNREACH 101 #define ENETRESET 102 #define ECONNABORTED 103 #define ECONNRESET 104 #define ENOBUFS 105 #define EISCONN 106 #define ENOTCONN 107 #define ESHUTDOWN 108 #define ETOOMANYREFS 109 #define ETIMEDOUT 110 #define ECONNREFUSED 111 #define EHOSTDOWN 112 #define EHOSTUNREACH 113 #define EALREADY 114 #define EINPROGRESS 115 #define ESTALE 116 #define EUCLEAN 117 #define ENOTNAM 118 #define ENAVAIL 119 #define EISNAM 120 #define EREMOTEIO 121 #define EDQUOT 122 #define ENOMEDIUM 123 #define EMEDIUMTYPE 124 #define ECANCELED 125 #define ENOKEY 126 #define EKEYEXPIRED 127 #define EKEYREVOKED 128 #define EKEYREJECTED 129 # 5 "/usr/include/asm/errno.h" 2 3 4 # 5 "/usr/include/linux/errno.h" 2 3 4 # 26 "/usr/include/bits/errno.h" 2 3 4 #define ENOTSUP EOPNOTSUPP # 38 "/usr/include/bits/errno.h" 3 4 extern int *__errno_location (void) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); #define errno (*__errno_location ()) # 37 "/usr/include/errno.h" 2 3 4 #undef __need_Emath # 55 "/usr/include/errno.h" 3 4 extern char *program_invocation_name, *program_invocation_short_name; # 69 "/usr/include/errno.h" 3 4 typedef int error_t; #define __error_t_defined 1 #undef __need_error_t # 35 "../../lib/direct/debug.h" 2 # 1 "../../lib/direct/conf.h" 1 # 29 "../../lib/direct/conf.h" #define __DIRECT__CONF_H__ # 1 "../../lib/direct/types.h" 1 # 29 "../../lib/direct/types.h" #define __DIRECT__TYPES_H__ # 1 "../../include/dfb_types.h" 1 #define __DFB_TYPES_H__ #define __u8 u_int8_t #define __u16 u_int16_t #define __u32 u_int32_t #define __u64 u_int64_t #define __s8 int8_t #define __s16 int16_t #define __s32 int32_t #define __s64 int64_t # 32 "../../lib/direct/types.h" 2 # 1 "../../include/directfb.h" 1 # 29 "../../include/directfb.h" #define __DIRECTFB_H__ # 1 "../../include/directfb_keyboard.h" 1 # 29 "../../include/directfb_keyboard.h" #define __DIRECTFB_KEYBOARD_H__ # 40 "../../include/directfb_keyboard.h" typedef enum { DIKT_UNICODE = 0x0000, DIKT_SPECIAL = 0xF000, DIKT_FUNCTION = 0xF100, DIKT_MODIFIER = 0xF200, DIKT_LOCK = 0xF300, DIKT_DEAD = 0xF400, DIKT_CUSTOM = 0xF500, DIKT_IDENTIFIER = 0xF600 } DFBInputDeviceKeyType; #define DFB_KEY(type,index) ((DIKT_ ##type) | (index)) #define DFB_KEY_TYPE(symbol) ((symbol) & 0xFF00) #define DFB_KEY_INDEX(symbol) ((symbol) & 0x00FF) #define DFB_KEY_IS_ASCII(symbol) ((symbol) < 128) #define DFB_FUNCTION_KEY(n) (DFB_KEY( FUNCTION, n )) #define DFB_MODIFIER_KEY(i) (DFB_KEY( MODIFIER, (1 << i) )) #define DFB_CUSTOM_KEY(n) (DFB_KEY( CUSTOM, n )) #define DFB_LOWER_CASE(symbol) (((symbol) >= 'A' && (symbol) <= 'Z') ? ((symbol) | 0x20) : (symbol)) #define DFB_UPPER_CASE(symbol) (((symbol) >= 'a' && (symbol) <= 'z') ? ((symbol) & ~0x20) : (symbol)) typedef enum { DIMKI_SHIFT, DIMKI_CONTROL, DIMKI_ALT, DIMKI_ALTGR, DIMKI_META, DIMKI_SUPER, DIMKI_HYPER, DIMKI_FIRST = DIMKI_SHIFT, DIMKI_LAST = DIMKI_HYPER } DFBInputDeviceModifierKeyIdentifier; typedef enum { DIKI_UNKNOWN = ((DIKT_IDENTIFIER) | (0)), DIKI_A, DIKI_B, DIKI_C, DIKI_D, DIKI_E, DIKI_F, DIKI_G, DIKI_H, DIKI_I, DIKI_J, DIKI_K, DIKI_L, DIKI_M, DIKI_N, DIKI_O, DIKI_P, DIKI_Q, DIKI_R, DIKI_S, DIKI_T, DIKI_U, DIKI_V, DIKI_W, DIKI_X, DIKI_Y, DIKI_Z, DIKI_0, DIKI_1, DIKI_2, DIKI_3, DIKI_4, DIKI_5, DIKI_6, DIKI_7, DIKI_8, DIKI_9, DIKI_F1, DIKI_F2, DIKI_F3, DIKI_F4, DIKI_F5, DIKI_F6, DIKI_F7, DIKI_F8, DIKI_F9, DIKI_F10, DIKI_F11, DIKI_F12, DIKI_SHIFT_L, DIKI_SHIFT_R, DIKI_CONTROL_L, DIKI_CONTROL_R, DIKI_ALT_L, DIKI_ALT_R, DIKI_META_L, DIKI_META_R, DIKI_SUPER_L, DIKI_SUPER_R, DIKI_HYPER_L, DIKI_HYPER_R, DIKI_CAPS_LOCK, DIKI_NUM_LOCK, DIKI_SCROLL_LOCK, DIKI_ESCAPE, DIKI_LEFT, DIKI_RIGHT, DIKI_UP, DIKI_DOWN, DIKI_TAB, DIKI_ENTER, DIKI_SPACE, DIKI_BACKSPACE, DIKI_INSERT, DIKI_DELETE, DIKI_HOME, DIKI_END, DIKI_PAGE_UP, DIKI_PAGE_DOWN, DIKI_PRINT, DIKI_PAUSE, DIKI_QUOTE_LEFT, DIKI_MINUS_SIGN, DIKI_EQUALS_SIGN, DIKI_BRACKET_LEFT, DIKI_BRACKET_RIGHT, DIKI_BACKSLASH, DIKI_SEMICOLON, DIKI_QUOTE_RIGHT, DIKI_COMMA, DIKI_PERIOD, DIKI_SLASH, DIKI_LESS_SIGN, DIKI_KP_DIV, DIKI_KP_MULT, DIKI_KP_MINUS, DIKI_KP_PLUS, DIKI_KP_ENTER, DIKI_KP_SPACE, DIKI_KP_TAB, DIKI_KP_F1, DIKI_KP_F2, DIKI_KP_F3, DIKI_KP_F4, DIKI_KP_EQUAL, DIKI_KP_SEPARATOR, DIKI_KP_DECIMAL, DIKI_KP_0, DIKI_KP_1, DIKI_KP_2, DIKI_KP_3, DIKI_KP_4, DIKI_KP_5, DIKI_KP_6, DIKI_KP_7, DIKI_KP_8, DIKI_KP_9, DIKI_KEYDEF_END, DIKI_NUMBER_OF_KEYS = DIKI_KEYDEF_END - ((DIKT_IDENTIFIER) | (0)) } DFBInputDeviceKeyIdentifier; typedef enum { DIKS_NULL = ((DIKT_UNICODE) | (0x00)), DIKS_BACKSPACE = ((DIKT_UNICODE) | (0x08)), DIKS_TAB = ((DIKT_UNICODE) | (0x09)), DIKS_RETURN = ((DIKT_UNICODE) | (0x0D)), DIKS_CANCEL = ((DIKT_UNICODE) | (0x18)), DIKS_ESCAPE = ((DIKT_UNICODE) | (0x1B)), DIKS_SPACE = ((DIKT_UNICODE) | (0x20)), DIKS_EXCLAMATION_MARK = ((DIKT_UNICODE) | (0x21)), DIKS_QUOTATION = ((DIKT_UNICODE) | (0x22)), DIKS_NUMBER_SIGN = ((DIKT_UNICODE) | (0x23)), DIKS_DOLLAR_SIGN = ((DIKT_UNICODE) | (0x24)), DIKS_PERCENT_SIGN = ((DIKT_UNICODE) | (0x25)), DIKS_AMPERSAND = ((DIKT_UNICODE) | (0x26)), DIKS_APOSTROPHE = ((DIKT_UNICODE) | (0x27)), DIKS_PARENTHESIS_LEFT = ((DIKT_UNICODE) | (0x28)), DIKS_PARENTHESIS_RIGHT = ((DIKT_UNICODE) | (0x29)), DIKS_ASTERISK = ((DIKT_UNICODE) | (0x2A)), DIKS_PLUS_SIGN = ((DIKT_UNICODE) | (0x2B)), DIKS_COMMA = ((DIKT_UNICODE) | (0x2C)), DIKS_MINUS_SIGN = ((DIKT_UNICODE) | (0x2D)), DIKS_PERIOD = ((DIKT_UNICODE) | (0x2E)), DIKS_SLASH = ((DIKT_UNICODE) | (0x2F)), DIKS_0 = ((DIKT_UNICODE) | (0x30)), DIKS_1 = ((DIKT_UNICODE) | (0x31)), DIKS_2 = ((DIKT_UNICODE) | (0x32)), DIKS_3 = ((DIKT_UNICODE) | (0x33)), DIKS_4 = ((DIKT_UNICODE) | (0x34)), DIKS_5 = ((DIKT_UNICODE) | (0x35)), DIKS_6 = ((DIKT_UNICODE) | (0x36)), DIKS_7 = ((DIKT_UNICODE) | (0x37)), DIKS_8 = ((DIKT_UNICODE) | (0x38)), DIKS_9 = ((DIKT_UNICODE) | (0x39)), DIKS_COLON = ((DIKT_UNICODE) | (0x3A)), DIKS_SEMICOLON = ((DIKT_UNICODE) | (0x3B)), DIKS_LESS_THAN_SIGN = ((DIKT_UNICODE) | (0x3C)), DIKS_EQUALS_SIGN = ((DIKT_UNICODE) | (0x3D)), DIKS_GREATER_THAN_SIGN = ((DIKT_UNICODE) | (0x3E)), DIKS_QUESTION_MARK = ((DIKT_UNICODE) | (0x3F)), DIKS_AT = ((DIKT_UNICODE) | (0x40)), DIKS_CAPITAL_A = ((DIKT_UNICODE) | (0x41)), DIKS_CAPITAL_B = ((DIKT_UNICODE) | (0x42)), DIKS_CAPITAL_C = ((DIKT_UNICODE) | (0x43)), DIKS_CAPITAL_D = ((DIKT_UNICODE) | (0x44)), DIKS_CAPITAL_E = ((DIKT_UNICODE) | (0x45)), DIKS_CAPITAL_F = ((DIKT_UNICODE) | (0x46)), DIKS_CAPITAL_G = ((DIKT_UNICODE) | (0x47)), DIKS_CAPITAL_H = ((DIKT_UNICODE) | (0x48)), DIKS_CAPITAL_I = ((DIKT_UNICODE) | (0x49)), DIKS_CAPITAL_J = ((DIKT_UNICODE) | (0x4A)), DIKS_CAPITAL_K = ((DIKT_UNICODE) | (0x4B)), DIKS_CAPITAL_L = ((DIKT_UNICODE) | (0x4C)), DIKS_CAPITAL_M = ((DIKT_UNICODE) | (0x4D)), DIKS_CAPITAL_N = ((DIKT_UNICODE) | (0x4E)), DIKS_CAPITAL_O = ((DIKT_UNICODE) | (0x4F)), DIKS_CAPITAL_P = ((DIKT_UNICODE) | (0x50)), DIKS_CAPITAL_Q = ((DIKT_UNICODE) | (0x51)), DIKS_CAPITAL_R = ((DIKT_UNICODE) | (0x52)), DIKS_CAPITAL_S = ((DIKT_UNICODE) | (0x53)), DIKS_CAPITAL_T = ((DIKT_UNICODE) | (0x54)), DIKS_CAPITAL_U = ((DIKT_UNICODE) | (0x55)), DIKS_CAPITAL_V = ((DIKT_UNICODE) | (0x56)), DIKS_CAPITAL_W = ((DIKT_UNICODE) | (0x57)), DIKS_CAPITAL_X = ((DIKT_UNICODE) | (0x58)), DIKS_CAPITAL_Y = ((DIKT_UNICODE) | (0x59)), DIKS_CAPITAL_Z = ((DIKT_UNICODE) | (0x5A)), DIKS_SQUARE_BRACKET_LEFT = ((DIKT_UNICODE) | (0x5B)), DIKS_BACKSLASH = ((DIKT_UNICODE) | (0x5C)), DIKS_SQUARE_BRACKET_RIGHT = ((DIKT_UNICODE) | (0x5D)), DIKS_CIRCUMFLEX_ACCENT = ((DIKT_UNICODE) | (0x5E)), DIKS_UNDERSCORE = ((DIKT_UNICODE) | (0x5F)), DIKS_GRAVE_ACCENT = ((DIKT_UNICODE) | (0x60)), DIKS_SMALL_A = ((DIKT_UNICODE) | (0x61)), DIKS_SMALL_B = ((DIKT_UNICODE) | (0x62)), DIKS_SMALL_C = ((DIKT_UNICODE) | (0x63)), DIKS_SMALL_D = ((DIKT_UNICODE) | (0x64)), DIKS_SMALL_E = ((DIKT_UNICODE) | (0x65)), DIKS_SMALL_F = ((DIKT_UNICODE) | (0x66)), DIKS_SMALL_G = ((DIKT_UNICODE) | (0x67)), DIKS_SMALL_H = ((DIKT_UNICODE) | (0x68)), DIKS_SMALL_I = ((DIKT_UNICODE) | (0x69)), DIKS_SMALL_J = ((DIKT_UNICODE) | (0x6A)), DIKS_SMALL_K = ((DIKT_UNICODE) | (0x6B)), DIKS_SMALL_L = ((DIKT_UNICODE) | (0x6C)), DIKS_SMALL_M = ((DIKT_UNICODE) | (0x6D)), DIKS_SMALL_N = ((DIKT_UNICODE) | (0x6E)), DIKS_SMALL_O = ((DIKT_UNICODE) | (0x6F)), DIKS_SMALL_P = ((DIKT_UNICODE) | (0x70)), DIKS_SMALL_Q = ((DIKT_UNICODE) | (0x71)), DIKS_SMALL_R = ((DIKT_UNICODE) | (0x72)), DIKS_SMALL_S = ((DIKT_UNICODE) | (0x73)), DIKS_SMALL_T = ((DIKT_UNICODE) | (0x74)), DIKS_SMALL_U = ((DIKT_UNICODE) | (0x75)), DIKS_SMALL_V = ((DIKT_UNICODE) | (0x76)), DIKS_SMALL_W = ((DIKT_UNICODE) | (0x77)), DIKS_SMALL_X = ((DIKT_UNICODE) | (0x78)), DIKS_SMALL_Y = ((DIKT_UNICODE) | (0x79)), DIKS_SMALL_Z = ((DIKT_UNICODE) | (0x7A)), DIKS_CURLY_BRACKET_LEFT = ((DIKT_UNICODE) | (0x7B)), DIKS_VERTICAL_BAR = ((DIKT_UNICODE) | (0x7C)), DIKS_CURLY_BRACKET_RIGHT = ((DIKT_UNICODE) | (0x7D)), DIKS_TILDE = ((DIKT_UNICODE) | (0x7E)), DIKS_DELETE = ((DIKT_UNICODE) | (0x7F)), DIKS_ENTER = DIKS_RETURN, DIKS_CURSOR_LEFT = ((DIKT_SPECIAL) | (0x00)), DIKS_CURSOR_RIGHT = ((DIKT_SPECIAL) | (0x01)), DIKS_CURSOR_UP = ((DIKT_SPECIAL) | (0x02)), DIKS_CURSOR_DOWN = ((DIKT_SPECIAL) | (0x03)), DIKS_INSERT = ((DIKT_SPECIAL) | (0x04)), DIKS_HOME = ((DIKT_SPECIAL) | (0x05)), DIKS_END = ((DIKT_SPECIAL) | (0x06)), DIKS_PAGE_UP = ((DIKT_SPECIAL) | (0x07)), DIKS_PAGE_DOWN = ((DIKT_SPECIAL) | (0x08)), DIKS_PRINT = ((DIKT_SPECIAL) | (0x09)), DIKS_PAUSE = ((DIKT_SPECIAL) | (0x0A)), DIKS_OK = ((DIKT_SPECIAL) | (0x0B)), DIKS_SELECT = ((DIKT_SPECIAL) | (0x0C)), DIKS_GOTO = ((DIKT_SPECIAL) | (0x0D)), DIKS_CLEAR = ((DIKT_SPECIAL) | (0x0E)), DIKS_POWER = ((DIKT_SPECIAL) | (0x0F)), DIKS_POWER2 = ((DIKT_SPECIAL) | (0x10)), DIKS_OPTION = ((DIKT_SPECIAL) | (0x11)), DIKS_MENU = ((DIKT_SPECIAL) | (0x12)), DIKS_HELP = ((DIKT_SPECIAL) | (0x13)), DIKS_INFO = ((DIKT_SPECIAL) | (0x14)), DIKS_TIME = ((DIKT_SPECIAL) | (0x15)), DIKS_VENDOR = ((DIKT_SPECIAL) | (0x16)), DIKS_ARCHIVE = ((DIKT_SPECIAL) | (0x17)), DIKS_PROGRAM = ((DIKT_SPECIAL) | (0x18)), DIKS_CHANNEL = ((DIKT_SPECIAL) | (0x19)), DIKS_FAVORITES = ((DIKT_SPECIAL) | (0x1A)), DIKS_EPG = ((DIKT_SPECIAL) | (0x1B)), DIKS_PVR = ((DIKT_SPECIAL) | (0x1C)), DIKS_MHP = ((DIKT_SPECIAL) | (0x1D)), DIKS_LANGUAGE = ((DIKT_SPECIAL) | (0x1E)), DIKS_TITLE = ((DIKT_SPECIAL) | (0x1F)), DIKS_SUBTITLE = ((DIKT_SPECIAL) | (0x20)), DIKS_ANGLE = ((DIKT_SPECIAL) | (0x21)), DIKS_ZOOM = ((DIKT_SPECIAL) | (0x22)), DIKS_MODE = ((DIKT_SPECIAL) | (0x23)), DIKS_KEYBOARD = ((DIKT_SPECIAL) | (0x24)), DIKS_PC = ((DIKT_SPECIAL) | (0x25)), DIKS_SCREEN = ((DIKT_SPECIAL) | (0x26)), DIKS_TV = ((DIKT_SPECIAL) | (0x27)), DIKS_TV2 = ((DIKT_SPECIAL) | (0x28)), DIKS_VCR = ((DIKT_SPECIAL) | (0x29)), DIKS_VCR2 = ((DIKT_SPECIAL) | (0x2A)), DIKS_SAT = ((DIKT_SPECIAL) | (0x2B)), DIKS_SAT2 = ((DIKT_SPECIAL) | (0x2C)), DIKS_CD = ((DIKT_SPECIAL) | (0x2D)), DIKS_TAPE = ((DIKT_SPECIAL) | (0x2E)), DIKS_RADIO = ((DIKT_SPECIAL) | (0x2F)), DIKS_TUNER = ((DIKT_SPECIAL) | (0x30)), DIKS_PLAYER = ((DIKT_SPECIAL) | (0x31)), DIKS_TEXT = ((DIKT_SPECIAL) | (0x32)), DIKS_DVD = ((DIKT_SPECIAL) | (0x33)), DIKS_AUX = ((DIKT_SPECIAL) | (0x34)), DIKS_MP3 = ((DIKT_SPECIAL) | (0x35)), DIKS_PHONE = ((DIKT_SPECIAL) | (0x36)), DIKS_AUDIO = ((DIKT_SPECIAL) | (0x37)), DIKS_VIDEO = ((DIKT_SPECIAL) | (0x38)), DIKS_INTERNET = ((DIKT_SPECIAL) | (0x39)), DIKS_MAIL = ((DIKT_SPECIAL) | (0x3A)), DIKS_NEWS = ((DIKT_SPECIAL) | (0x3B)), DIKS_DIRECTORY = ((DIKT_SPECIAL) | (0x3C)), DIKS_LIST = ((DIKT_SPECIAL) | (0x3D)), DIKS_CALCULATOR = ((DIKT_SPECIAL) | (0x3E)), DIKS_MEMO = ((DIKT_SPECIAL) | (0x3F)), DIKS_CALENDAR = ((DIKT_SPECIAL) | (0x40)), DIKS_EDITOR = ((DIKT_SPECIAL) | (0x41)), DIKS_RED = ((DIKT_SPECIAL) | (0x42)), DIKS_GREEN = ((DIKT_SPECIAL) | (0x43)), DIKS_YELLOW = ((DIKT_SPECIAL) | (0x44)), DIKS_BLUE = ((DIKT_SPECIAL) | (0x45)), DIKS_CHANNEL_UP = ((DIKT_SPECIAL) | (0x46)), DIKS_CHANNEL_DOWN = ((DIKT_SPECIAL) | (0x47)), DIKS_BACK = ((DIKT_SPECIAL) | (0x48)), DIKS_FORWARD = ((DIKT_SPECIAL) | (0x49)), DIKS_FIRST = ((DIKT_SPECIAL) | (0x4A)), DIKS_LAST = ((DIKT_SPECIAL) | (0x4B)), DIKS_VOLUME_UP = ((DIKT_SPECIAL) | (0x4C)), DIKS_VOLUME_DOWN = ((DIKT_SPECIAL) | (0x4D)), DIKS_MUTE = ((DIKT_SPECIAL) | (0x4E)), DIKS_AB = ((DIKT_SPECIAL) | (0x4F)), DIKS_PLAYPAUSE = ((DIKT_SPECIAL) | (0x50)), DIKS_PLAY = ((DIKT_SPECIAL) | (0x51)), DIKS_STOP = ((DIKT_SPECIAL) | (0x52)), DIKS_RESTART = ((DIKT_SPECIAL) | (0x53)), DIKS_SLOW = ((DIKT_SPECIAL) | (0x54)), DIKS_FAST = ((DIKT_SPECIAL) | (0x55)), DIKS_RECORD = ((DIKT_SPECIAL) | (0x56)), DIKS_EJECT = ((DIKT_SPECIAL) | (0x57)), DIKS_SHUFFLE = ((DIKT_SPECIAL) | (0x58)), DIKS_REWIND = ((DIKT_SPECIAL) | (0x59)), DIKS_FASTFORWARD = ((DIKT_SPECIAL) | (0x5A)), DIKS_PREVIOUS = ((DIKT_SPECIAL) | (0x5B)), DIKS_NEXT = ((DIKT_SPECIAL) | (0x5C)), DIKS_BEGIN = ((DIKT_SPECIAL) | (0x5D)), DIKS_DIGITS = ((DIKT_SPECIAL) | (0x5E)), DIKS_TEEN = ((DIKT_SPECIAL) | (0x5F)), DIKS_TWEN = ((DIKT_SPECIAL) | (0x60)), DIKS_BREAK = ((DIKT_SPECIAL) | (0x61)), DIKS_EXIT = ((DIKT_SPECIAL) | (0x62)), DIKS_SETUP = ((DIKT_SPECIAL) | (0x63)), DIKS_CURSOR_LEFT_UP = ((DIKT_SPECIAL) | (0x64)), DIKS_CURSOR_LEFT_DOWN = ((DIKT_SPECIAL) | (0x65)), DIKS_CURSOR_UP_RIGHT = ((DIKT_SPECIAL) | (0x66)), DIKS_CURSOR_DOWN_RIGHT = ((DIKT_SPECIAL) | (0x67)), DIKS_F1 = (((DIKT_FUNCTION) | (1))), DIKS_F2 = (((DIKT_FUNCTION) | (2))), DIKS_F3 = (((DIKT_FUNCTION) | (3))), DIKS_F4 = (((DIKT_FUNCTION) | (4))), DIKS_F5 = (((DIKT_FUNCTION) | (5))), DIKS_F6 = (((DIKT_FUNCTION) | (6))), DIKS_F7 = (((DIKT_FUNCTION) | (7))), DIKS_F8 = (((DIKT_FUNCTION) | (8))), DIKS_F9 = (((DIKT_FUNCTION) | (9))), DIKS_F10 = (((DIKT_FUNCTION) | (10))), DIKS_F11 = (((DIKT_FUNCTION) | (11))), DIKS_F12 = (((DIKT_FUNCTION) | (12))), DIKS_SHIFT = (((DIKT_MODIFIER) | ((1 << DIMKI_SHIFT)))), DIKS_CONTROL = (((DIKT_MODIFIER) | ((1 << DIMKI_CONTROL)))), DIKS_ALT = (((DIKT_MODIFIER) | ((1 << DIMKI_ALT)))), DIKS_ALTGR = (((DIKT_MODIFIER) | ((1 << DIMKI_ALTGR)))), DIKS_META = (((DIKT_MODIFIER) | ((1 << DIMKI_META)))), DIKS_SUPER = (((DIKT_MODIFIER) | ((1 << DIMKI_SUPER)))), DIKS_HYPER = (((DIKT_MODIFIER) | ((1 << DIMKI_HYPER)))), DIKS_CAPS_LOCK = ((DIKT_LOCK) | (0x00)), DIKS_NUM_LOCK = ((DIKT_LOCK) | (0x01)), DIKS_SCROLL_LOCK = ((DIKT_LOCK) | (0x02)), DIKS_DEAD_ABOVEDOT = ((DIKT_DEAD) | (0x00)), DIKS_DEAD_ABOVERING = ((DIKT_DEAD) | (0x01)), DIKS_DEAD_ACUTE = ((DIKT_DEAD) | (0x02)), DIKS_DEAD_BREVE = ((DIKT_DEAD) | (0x03)), DIKS_DEAD_CARON = ((DIKT_DEAD) | (0x04)), DIKS_DEAD_CEDILLA = ((DIKT_DEAD) | (0x05)), DIKS_DEAD_CIRCUMFLEX = ((DIKT_DEAD) | (0x06)), DIKS_DEAD_DIAERESIS = ((DIKT_DEAD) | (0x07)), DIKS_DEAD_DOUBLEACUTE = ((DIKT_DEAD) | (0x08)), DIKS_DEAD_GRAVE = ((DIKT_DEAD) | (0x09)), DIKS_DEAD_IOTA = ((DIKT_DEAD) | (0x0A)), DIKS_DEAD_MACRON = ((DIKT_DEAD) | (0x0B)), DIKS_DEAD_OGONEK = ((DIKT_DEAD) | (0x0C)), DIKS_DEAD_SEMIVOICED_SOUND = ((DIKT_DEAD) | (0x0D)), DIKS_DEAD_TILDE = ((DIKT_DEAD) | (0x0E)), DIKS_DEAD_VOICED_SOUND = ((DIKT_DEAD) | (0x0F)), DIKS_CUSTOM0 = (((DIKT_CUSTOM) | (0))), DIKS_CUSTOM1 = (((DIKT_CUSTOM) | (1))), DIKS_CUSTOM2 = (((DIKT_CUSTOM) | (2))), DIKS_CUSTOM3 = (((DIKT_CUSTOM) | (3))), DIKS_CUSTOM4 = (((DIKT_CUSTOM) | (4))), DIKS_CUSTOM5 = (((DIKT_CUSTOM) | (5))), DIKS_CUSTOM6 = (((DIKT_CUSTOM) | (6))), DIKS_CUSTOM7 = (((DIKT_CUSTOM) | (7))), DIKS_CUSTOM8 = (((DIKT_CUSTOM) | (8))), DIKS_CUSTOM9 = (((DIKT_CUSTOM) | (9))) } DFBInputDeviceKeySymbol; typedef enum { DILS_SCROLL = 0x00000001, DILS_NUM = 0x00000002, DILS_CAPS = 0x00000004 } DFBInputDeviceLockState; typedef enum { DIKSI_BASE = 0x00, DIKSI_BASE_SHIFT = 0x01, DIKSI_ALT = 0x02, DIKSI_ALT_SHIFT = 0x03, DIKSI_LAST = DIKSI_ALT_SHIFT } DFBInputDeviceKeymapSymbolIndex; typedef struct { int code; DFBInputDeviceLockState locks; DFBInputDeviceKeyIdentifier identifier; DFBInputDeviceKeySymbol symbols[DIKSI_LAST+1]; } DFBInputDeviceKeymapEntry; # 35 "../../include/directfb.h" 2 # 46 "../../include/directfb.h" #define DECLARE_INTERFACE(IFACE) typedef struct _ ##IFACE IFACE; #define DEFINE_INTERFACE(IFACE,IDATA...) struct _ ##IFACE { void *priv; int magic; DFBResult (*AddRef)( IFACE *thiz ); DFBResult (*Release)( IFACE *thiz ); IDATA }; # 68 "../../include/directfb.h" extern const unsigned int directfb_major_version; extern const unsigned int directfb_minor_version; extern const unsigned int directfb_micro_version; extern const unsigned int directfb_binary_age; extern const unsigned int directfb_interface_age; const char * DirectFBCheckVersion( unsigned int required_major, unsigned int required_minor, unsigned int required_micro ); typedef struct _IDirectFB IDirectFB; typedef struct _IDirectFBScreen IDirectFBScreen; typedef struct _IDirectFBDisplayLayer IDirectFBDisplayLayer; typedef struct _IDirectFBSurface IDirectFBSurface; typedef struct _IDirectFBPalette IDirectFBPalette; typedef struct _IDirectFBWindow IDirectFBWindow; typedef struct _IDirectFBInputDevice IDirectFBInputDevice; typedef struct _IDirectFBEventBuffer IDirectFBEventBuffer; typedef struct _IDirectFBFont IDirectFBFont; typedef struct _IDirectFBImageProvider IDirectFBImageProvider; typedef struct _IDirectFBVideoProvider IDirectFBVideoProvider; typedef struct _IDirectFBDataBuffer IDirectFBDataBuffer; typedef struct _IDirectFBGL IDirectFBGL; typedef enum { DFB_OK, DFB_FAILURE, DFB_INIT, DFB_BUG, DFB_DEAD, DFB_UNSUPPORTED, DFB_UNIMPLEMENTED, DFB_ACCESSDENIED, DFB_INVARG, DFB_NOSYSTEMMEMORY, DFB_NOVIDEOMEMORY, DFB_LOCKED, DFB_BUFFEREMPTY, DFB_FILENOTFOUND, DFB_IO, DFB_BUSY, DFB_NOIMPL, DFB_MISSINGFONT, DFB_TIMEOUT, DFB_MISSINGIMAGE, DFB_THIZNULL, DFB_IDNOTFOUND, DFB_INVAREA, DFB_DESTROYED, DFB_FUSION, DFB_BUFFERTOOLARGE, DFB_INTERRUPTED, DFB_NOCONTEXT, DFB_TEMPUNAVAIL, DFB_LIMITEXCEEDED, DFB_NOSUCHMETHOD, DFB_NOSUCHINSTANCE, DFB_ITEMNOTFOUND, DFB_VERSIONMISMATCH, DFB_NOSHAREDMEMORY, DFB_EOF } DFBResult; typedef enum { DFB_FALSE = 0, DFB_TRUE = !DFB_FALSE } DFBBoolean; typedef struct { int x; int y; } DFBPoint; typedef struct { int x; int w; } DFBSpan; typedef struct { int w; int h; } DFBDimension; typedef struct { int x; int y; int w; int h; } DFBRectangle; typedef struct { float x; float y; float w; float h; } DFBLocation; typedef struct { int x1; int y1; int x2; int y2; } DFBRegion; typedef struct { int l; int t; int r; int b; } DFBInsets; typedef struct { int x1; int y1; int x2; int y2; int x3; int y3; } DFBTriangle; typedef struct { u_int8_t a; u_int8_t r; u_int8_t g; u_int8_t b; } DFBColor; #define DFB_RECTANGLE_EQUAL(a,b) ((a).x == (b).x && (a).y == (b).y && (a).w == (b).w && (a).h == (b).h) #define DFB_LOCATION_EQUAL(a,b) ((a).x == (b).x && (a).y == (b).y && (a).w == (b).w && (a).h == (b).h) #define DFB_REGION_EQUAL(a,b) ((a).x1 == (b).x1 && (a).y1 == (b).y1 && (a).x2 == (b).x2 && (a).y2 == (b).y2) #define DFB_COLOR_EQUAL(x,y) ((x).a == (y).a && (x).r == (y).r && (x).g == (y).g && (x).b == (y).b) # 336 "../../include/directfb.h" DFBResult DirectFBError( const char *msg, DFBResult result ); DFBResult DirectFBErrorFatal( const char *msg, DFBResult result ); const char *DirectFBErrorString( DFBResult result ); const char *DirectFBUsageString( void ); DFBResult DirectFBInit( int *argc, char *(*argv[]) ); DFBResult DirectFBSetOption( const char *name, const char *value ); DFBResult DirectFBCreate( IDirectFB **interface ); typedef unsigned int DFBScreenID; typedef unsigned int DFBDisplayLayerID; typedef unsigned int DFBDisplayLayerSourceID; typedef unsigned int DFBWindowID; typedef unsigned int DFBInputDeviceID; typedef u_int32_t DFBDisplayLayerIDs; #define DFB_DISPLAYLAYER_IDS_MAX 32 #define DFB_DISPLAYLAYER_IDS_ADD(ids,id) (ids) |= (1 << (id)) #define DFB_DISPLAYLAYER_IDS_REMOVE(ids,id) (ids) &= ~(1 << (id)) #define DFB_DISPLAYLAYER_IDS_HAVE(ids,id) ((ids) & (1 << (id))) #define DFB_DISPLAYLAYER_IDS_EMPTY(ids) (ids) = 0 typedef enum { DFSCL_NORMAL = 0x00000000, DFSCL_FULLSCREEN, DFSCL_EXCLUSIVE } DFBCooperativeLevel; typedef enum { DLCAPS_NONE = 0x00000000, DLCAPS_SURFACE = 0x00000001, DLCAPS_OPACITY = 0x00000002, DLCAPS_ALPHACHANNEL = 0x00000004, DLCAPS_SCREEN_LOCATION = 0x00000008, DLCAPS_FLICKER_FILTERING = 0x00000010, DLCAPS_DEINTERLACING = 0x00000020, DLCAPS_SRC_COLORKEY = 0x00000040, DLCAPS_DST_COLORKEY = 0x00000080, DLCAPS_BRIGHTNESS = 0x00000100, DLCAPS_CONTRAST = 0x00000200, DLCAPS_HUE = 0x00000400, DLCAPS_SATURATION = 0x00000800, DLCAPS_LEVELS = 0x00001000, DLCAPS_FIELD_PARITY = 0x00002000, DLCAPS_WINDOWS = 0x00004000, DLCAPS_SOURCES = 0x00008000, DLCAPS_ALPHA_RAMP = 0x00010000, DLCAPS_PREMULTIPLIED = 0x00020000, DLCAPS_SCREEN_POSITION = 0x00100000, DLCAPS_SCREEN_SIZE = 0x00200000, DLCAPS_ALL = 0x0033FFFF } DFBDisplayLayerCapabilities; typedef enum { DSCCAPS_NONE = 0x00000000, DSCCAPS_VSYNC = 0x00000001, DSCCAPS_POWER_MANAGEMENT = 0x00000002, DSCCAPS_MIXERS = 0x00000010, DSCCAPS_ENCODERS = 0x00000020, DSCCAPS_OUTPUTS = 0x00000040, DSCCAPS_ALL = 0x00000073 } DFBScreenCapabilities; typedef enum { DLOP_NONE = 0x00000000, DLOP_ALPHACHANNEL = 0x00000001, DLOP_FLICKER_FILTERING = 0x00000002, DLOP_DEINTERLACING = 0x00000004, DLOP_SRC_COLORKEY = 0x00000008, DLOP_DST_COLORKEY = 0x00000010, DLOP_OPACITY = 0x00000020, DLOP_FIELD_PARITY = 0x00000040 } DFBDisplayLayerOptions; typedef enum { DLBM_UNKNOWN = 0x00000000, DLBM_FRONTONLY = 0x00000001, DLBM_BACKVIDEO = 0x00000002, DLBM_BACKSYSTEM = 0x00000004, DLBM_TRIPLE = 0x00000008, DLBM_WINDOWS = 0x00000010 } DFBDisplayLayerBufferMode; typedef enum { DSDESC_NONE = 0x00000000, DSDESC_CAPS = 0x00000001, DSDESC_WIDTH = 0x00000002, DSDESC_HEIGHT = 0x00000004, DSDESC_PIXELFORMAT = 0x00000008, DSDESC_PREALLOCATED = 0x00000010, DSDESC_PALETTE = 0x00000020, DSDESC_ALL = 0x0000003F } DFBSurfaceDescriptionFlags; typedef enum { DPDESC_CAPS = 0x00000001, DPDESC_SIZE = 0x00000002, DPDESC_ENTRIES = 0x00000004 } DFBPaletteDescriptionFlags; typedef enum { DSCAPS_NONE = 0x00000000, DSCAPS_PRIMARY = 0x00000001, DSCAPS_SYSTEMONLY = 0x00000002, DSCAPS_VIDEOONLY = 0x00000004, DSCAPS_DOUBLE = 0x00000010, DSCAPS_SUBSURFACE = 0x00000020, DSCAPS_INTERLACED = 0x00000040, DSCAPS_SEPARATED = 0x00000080, DSCAPS_STATIC_ALLOC = 0x00000100, DSCAPS_TRIPLE = 0x00000200, DSCAPS_PREMULTIPLIED = 0x00001000, DSCAPS_DEPTH = 0x00010000, DSCAPS_ALL = 0x000113F7, DSCAPS_FLIPPING = DSCAPS_DOUBLE | DSCAPS_TRIPLE } DFBSurfaceCapabilities; typedef enum { DPCAPS_NONE = 0x00000000 } DFBPaletteCapabilities; typedef enum { DSDRAW_NOFX = 0x00000000, DSDRAW_BLEND = 0x00000001, DSDRAW_DST_COLORKEY = 0x00000002, DSDRAW_SRC_PREMULTIPLY = 0x00000004, DSDRAW_DST_PREMULTIPLY = 0x00000008, DSDRAW_DEMULTIPLY = 0x00000010, DSDRAW_XOR = 0x00000020 } DFBSurfaceDrawingFlags; typedef enum { DSBLIT_NOFX = 0x00000000, DSBLIT_BLEND_ALPHACHANNEL = 0x00000001, DSBLIT_BLEND_COLORALPHA = 0x00000002, DSBLIT_COLORIZE = 0x00000004, DSBLIT_SRC_COLORKEY = 0x00000008, DSBLIT_DST_COLORKEY = 0x00000010, DSBLIT_SRC_PREMULTIPLY = 0x00000020, DSBLIT_DST_PREMULTIPLY = 0x00000040, DSBLIT_DEMULTIPLY = 0x00000080, DSBLIT_DEINTERLACE = 0x00000100, DSBLIT_SRC_PREMULTCOLOR = 0x00000200, DSBLIT_XOR = 0x00000400 } DFBSurfaceBlittingFlags; typedef enum { DFXL_NONE = 0x00000000, DFXL_FILLRECTANGLE = 0x00000001, DFXL_DRAWRECTANGLE = 0x00000002, DFXL_DRAWLINE = 0x00000004, DFXL_FILLTRIANGLE = 0x00000008, DFXL_BLIT = 0x00010000, DFXL_STRETCHBLIT = 0x00020000, DFXL_TEXTRIANGLES = 0x00040000, DFXL_DRAWSTRING = 0x01000000, DFXL_ALL = 0x0107000F } DFBAccelerationMask; #define DFB_DRAWING_FUNCTION(a) ((a) & 0x0000FFFF) #define DFB_BLITTING_FUNCTION(a) ((a) & 0xFFFF0000) typedef enum { DLTF_NONE = 0x00000000, DLTF_GRAPHICS = 0x00000001, DLTF_VIDEO = 0x00000002, DLTF_STILL_PICTURE = 0x00000004, DLTF_BACKGROUND = 0x00000008, DLTF_ALL = 0x0000000F } DFBDisplayLayerTypeFlags; typedef enum { DIDTF_NONE = 0x00000000, DIDTF_KEYBOARD = 0x00000001, DIDTF_MOUSE = 0x00000002, DIDTF_JOYSTICK = 0x00000004, DIDTF_REMOTE = 0x00000008, DIDTF_VIRTUAL = 0x00000010, DIDTF_ALL = 0x0000001F } DFBInputDeviceTypeFlags; typedef enum { DICAPS_KEYS = 0x00000001, DICAPS_AXES = 0x00000002, DICAPS_BUTTONS = 0x00000004, DICAPS_ALL = 0x00000007 } DFBInputDeviceCapabilities; typedef enum { DIBI_LEFT = 0x00000000, DIBI_RIGHT = 0x00000001, DIBI_MIDDLE = 0x00000002, DIBI_FIRST = DIBI_LEFT, DIBI_LAST = 0x0000001F } DFBInputDeviceButtonIdentifier; # 766 "../../include/directfb.h" typedef enum { DIAI_X = 0x00000000, DIAI_Y = 0x00000001, DIAI_Z = 0x00000002, DIAI_FIRST = DIAI_X, DIAI_LAST = 0x0000001F } DFBInputDeviceAxisIdentifier; typedef enum { DWDESC_CAPS = 0x00000001, DWDESC_WIDTH = 0x00000002, DWDESC_HEIGHT = 0x00000004, DWDESC_PIXELFORMAT = 0x00000008, DWDESC_POSX = 0x00000010, DWDESC_POSY = 0x00000020, DWDESC_SURFACE_CAPS = 0x00000040 } DFBWindowDescriptionFlags; typedef enum { DBDESC_FILE = 0x00000001, DBDESC_MEMORY = 0x00000002 } DFBDataBufferDescriptionFlags; typedef enum { DWCAPS_NONE = 0x00000000, DWCAPS_ALPHACHANNEL = 0x00000001, DWCAPS_DOUBLEBUFFER = 0x00000002, DWCAPS_INPUTONLY = 0x00000004, DWCAPS_NODECORATION = 0x00000008, DWCAPS_ALL = 0x0000000F } DFBWindowCapabilities; # 832 "../../include/directfb.h" typedef enum { DFFA_NONE = 0x00000000, DFFA_NOKERNING = 0x00000001, DFFA_NOHINTING = 0x00000002, DFFA_MONOCHROME = 0x00000004, DFFA_NOCHARMAP = 0x00000008 } DFBFontAttributes; typedef enum { DFDESC_ATTRIBUTES = 0x00000001, DFDESC_HEIGHT = 0x00000002, DFDESC_WIDTH = 0x00000004, DFDESC_INDEX = 0x00000008, DFDESC_FIXEDADVANCE = 0x00000010, DFDESC_FRACT_HEIGHT = 0x00000020, DFDESC_FRACT_WIDTH = 0x00000040, } DFBFontDescriptionFlags; # 872 "../../include/directfb.h" typedef struct { DFBFontDescriptionFlags flags; DFBFontAttributes attributes; int height; int width; unsigned int index; int fixed_advance; int fract_height; int fract_width; } DFBFontDescription; # 904 "../../include/directfb.h" #define DFB_SURFACE_PIXELFORMAT(index,color_bits,alpha_bits,has_alpha,row_bits,row_bytes,align,mul_f,mul_d,has_lut,inv_alpha) ( (((index ) & 0x7F) ) | (((color_bits) & 0x1F) << 7) | (((alpha_bits) & 0x0F) << 12) | (((has_alpha ) ? 1 :0) << 16) | (((row_bits ) & 0x07) << 17) | (((row_bytes ) & 0x07) << 20) | (((align ) & 0x07) << 23) | (((mul_f ) & 0x03) << 26) | (((mul_d ) & 0x03) << 28) | (((has_lut ) ? 1 :0) << 30) | (((inv_alpha ) ? 1 :0) << 31) ) # 922 "../../include/directfb.h" typedef enum { DSPF_UNKNOWN = 0x00000000, DSPF_ARGB1555 = ( (((0 ) & 0x7F) ) | (((15) & 0x1F) << 7) | (((1) & 0x0F) << 12) | (((1 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((2 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((0 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_RGB16 = ( (((1 ) & 0x7F) ) | (((16) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((2 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((0 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_RGB24 = ( (((2 ) & 0x7F) ) | (((24) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((3 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((0 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_RGB32 = ( (((3 ) & 0x7F) ) | (((24) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((4 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((0 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_ARGB = ( (((4 ) & 0x7F) ) | (((24) & 0x1F) << 7) | (((8) & 0x0F) << 12) | (((1 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((4 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((0 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_A8 = ( (((5 ) & 0x7F) ) | (((0) & 0x1F) << 7) | (((8) & 0x0F) << 12) | (((1 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((1 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((0 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_YUY2 = ( (((6 ) & 0x7F) ) | (((16) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((2 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((0 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_RGB332 = ( (((7 ) & 0x7F) ) | (((8) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((1 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((0 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_UYVY = ( (((8 ) & 0x7F) ) | (((16) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((2 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((0 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_I420 = ( (((9 ) & 0x7F) ) | (((12) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((1 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((2 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_YV12 = ( (((10 ) & 0x7F) ) | (((12) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((1 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((2 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_LUT8 = ( (((11 ) & 0x7F) ) | (((8) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((1 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((1 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((0 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((1 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_ALUT44 = ( (((12 ) & 0x7F) ) | (((4) & 0x1F) << 7) | (((4) & 0x0F) << 12) | (((1 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((1 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((0 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((1 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_AiRGB = ( (((13 ) & 0x7F) ) | (((24) & 0x1F) << 7) | (((8) & 0x0F) << 12) | (((1 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((4 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((0 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((1 ) ? 1 :0) << 31) ), DSPF_A1 = ( (((14 ) & 0x7F) ) | (((0) & 0x1F) << 7) | (((1) & 0x0F) << 12) | (((1 ) ? 1 :0) << 16) | (((1 ) & 0x07) << 17) | (((0 ) & 0x07) << 20) | (((7 ) & 0x07) << 23) | (((0 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_NV12 = ( (((15 ) & 0x7F) ) | (((12) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((1 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((2 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_NV16 = ( (((16 ) & 0x7F) ) | (((24) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((1 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((0 ) & 0x03) << 26) | (((1 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_ARGB2554 = ( (((17 ) & 0x7F) ) | (((14) & 0x1F) << 7) | (((2) & 0x0F) << 12) | (((1 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((2 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((0 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_ARGB4444 = ( (((18 ) & 0x7F) ) | (((12) & 0x1F) << 7) | (((4) & 0x0F) << 12) | (((1 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((2 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((0 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_NV21 = ( (((19 ) & 0x7F) ) | (((12) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((1 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((2 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ), DSPF_AYUV = ( (((20 ) & 0x7F) ) | (((24) & 0x1F) << 7) | (((8) & 0x0F) << 12) | (((1 ) ? 1 :0) << 16) | (((0 ) & 0x07) << 17) | (((4 ) & 0x07) << 20) | (((0 ) & 0x07) << 23) | (((0 ) & 0x03) << 26) | (((0 ) & 0x03) << 28) | (((0 ) ? 1 :0) << 30) | (((0 ) ? 1 :0) << 31) ) } DFBSurfacePixelFormat; #define DFB_NUM_PIXELFORMATS 21 #define DFB_PIXELFORMAT_INDEX(fmt) (((fmt) & 0x0000007F) ) #define DFB_COLOR_BITS_PER_PIXEL(fmt) (((fmt) & 0x00000F80) >> 7) #define DFB_ALPHA_BITS_PER_PIXEL(fmt) (((fmt) & 0x0000F000) >> 12) #define DFB_PIXELFORMAT_HAS_ALPHA(fmt) (((fmt) & 0x00010000) >> 16) #define DFB_BITS_PER_PIXEL(fmt) (((fmt) & 0x007E0000) >> 17) #define DFB_BYTES_PER_PIXEL(fmt) (((fmt) & 0x00700000) >> 20) #define DFB_BYTES_PER_LINE(fmt,width) (((((fmt) & 0x007E0000) >> 17) * (width) + 7) >> 3) #define DFB_PIXELFORMAT_ALIGNMENT(fmt) (((fmt) & 0x03800000) >> 23) #define DFB_PLANE_MULTIPLY(fmt,height) ((((((fmt) & 0x3C000000) >> 26) + 4) * (height)) >> 2) #define DFB_PIXELFORMAT_IS_INDEXED(fmt) (((fmt) & 0x40000000) >> 30) #define DFB_PLANAR_PIXELFORMAT(fmt) (((fmt) & 0x3C000000) ? 1 : 0) #define DFB_PIXELFORMAT_INV_ALPHA(fmt) (((fmt) & 0x80000000) >> 31) typedef struct { DFBSurfaceDescriptionFlags flags; DFBSurfaceCapabilities caps; int width; int height; DFBSurfacePixelFormat pixelformat; struct { void *data; int pitch; } preallocated[2]; struct { DFBColor *entries; unsigned int size; } palette; } DFBSurfaceDescription; typedef struct { DFBPaletteDescriptionFlags flags; DFBPaletteCapabilities caps; unsigned int size; const DFBColor *entries; } DFBPaletteDescription; #define DFB_DISPLAY_LAYER_DESC_NAME_LENGTH 32 typedef struct { DFBDisplayLayerTypeFlags type; DFBDisplayLayerCapabilities caps; char name[32]; int level; int regions; int sources; } DFBDisplayLayerDescription; #define DFB_DISPLAY_LAYER_SOURCE_DESC_NAME_LENGTH 24 typedef struct { DFBDisplayLayerSourceID source_id; char name[24]; } DFBDisplayLayerSourceDescription; #define DFB_SCREEN_DESC_NAME_LENGTH 32 typedef struct { DFBScreenCapabilities caps; char name[32]; int mixers; int encoders; int outputs; } DFBScreenDescription; #define DFB_INPUT_DEVICE_DESC_NAME_LENGTH 32 #define DFB_INPUT_DEVICE_DESC_VENDOR_LENGTH 40 typedef struct { DFBInputDeviceTypeFlags type; DFBInputDeviceCapabilities caps; int min_keycode; int max_keycode; DFBInputDeviceAxisIdentifier max_axis; DFBInputDeviceButtonIdentifier max_button; char name[32]; char vendor[40]; } DFBInputDeviceDescription; #define DFB_GRAPHICS_DRIVER_INFO_NAME_LENGTH 40 #define DFB_GRAPHICS_DRIVER_INFO_VENDOR_LENGTH 60 typedef struct { int major; int minor; char name[40]; char vendor[60]; } DFBGraphicsDriverInfo; #define DFB_GRAPHICS_DEVICE_DESC_NAME_LENGTH 48 #define DFB_GRAPHICS_DEVICE_DESC_VENDOR_LENGTH 64 typedef struct { DFBAccelerationMask acceleration_mask; DFBSurfaceBlittingFlags blitting_flags; DFBSurfaceDrawingFlags drawing_flags; unsigned int video_memory; char name[48]; char vendor[64]; DFBGraphicsDriverInfo driver; } DFBGraphicsDeviceDescription; typedef struct { DFBWindowDescriptionFlags flags; DFBWindowCapabilities caps; int width; int height; DFBSurfacePixelFormat pixelformat; int posx; int posy; DFBSurfaceCapabilities surface_caps; } DFBWindowDescription; typedef struct { DFBDataBufferDescriptionFlags flags; const char *file; struct { const void *data; unsigned int length; } memory; } DFBDataBufferDescription; typedef enum { DFENUM_OK = 0x00000000, DFENUM_CANCEL = 0x00000001 } DFBEnumerationResult; typedef DFBEnumerationResult (*DFBVideoModeCallback) ( int width, int height, int bpp, void *callbackdata ); typedef DFBEnumerationResult (*DFBScreenCallback) ( DFBScreenID screen_id, DFBScreenDescription desc, void *callbackdata ); typedef DFBEnumerationResult (*DFBDisplayLayerCallback) ( DFBDisplayLayerID layer_id, DFBDisplayLayerDescription desc, void *callbackdata ); typedef DFBEnumerationResult (*DFBInputDeviceCallback) ( DFBInputDeviceID device_id, DFBInputDeviceDescription desc, void *callbackdata ); typedef int (*DFBGetDataCallback) ( void *buffer, unsigned int length, void *callbackdata ); typedef enum { DVCAPS_BASIC = 0x00000000, DVCAPS_SEEK = 0x00000001, DVCAPS_SCALE = 0x00000002, DVCAPS_INTERLACED = 0x00000004, DVCAPS_BRIGHTNESS = 0x00000010, DVCAPS_CONTRAST = 0x00000020, DVCAPS_HUE = 0x00000040, DVCAPS_SATURATION = 0x00000080, DVCAPS_INTERACTIVE = 0x00000100 } DFBVideoProviderCapabilities; typedef enum { DVSTATE_UNKNOWN = 0x00000000, DVSTATE_PLAY = 0x00000001, DVSTATE_STOP = 0x00000002, DVSTATE_FINISHED = 0x00000003 } DFBVideoProviderStatus; typedef enum { DCAF_NONE = 0x00000000, DCAF_BRIGHTNESS = 0x00000001, DCAF_CONTRAST = 0x00000002, DCAF_HUE = 0x00000004, DCAF_SATURATION = 0x00000008, DCAF_ALL = 0x0000000F } DFBColorAdjustmentFlags; typedef struct { DFBColorAdjustmentFlags flags; u_int16_t brightness; u_int16_t contrast; u_int16_t hue; u_int16_t saturation; } DFBColorAdjustment; # 1372 "../../include/directfb.h" struct _IDirectFB { void *priv; int magic; DFBResult (*AddRef)( IDirectFB *thiz ); DFBResult (*Release)( IDirectFB *thiz ); DFBResult (*SetCooperativeLevel) ( IDirectFB *thiz, DFBCooperativeLevel level ); DFBResult (*SetVideoMode) ( IDirectFB *thiz, int width, int height, int bpp ); DFBResult (*GetDeviceDescription) ( IDirectFB *thiz, DFBGraphicsDeviceDescription *ret_desc ); DFBResult (*EnumVideoModes) ( IDirectFB *thiz, DFBVideoModeCallback callback, void *callbackdata ); DFBResult (*CreateSurface) ( IDirectFB *thiz, const DFBSurfaceDescription *desc, IDirectFBSurface **ret_interface ); DFBResult (*CreatePalette) ( IDirectFB *thiz, const DFBPaletteDescription *desc, IDirectFBPalette **ret_interface ); DFBResult (*EnumScreens) ( IDirectFB *thiz, DFBScreenCallback callback, void *callbackdata ); DFBResult (*GetScreen) ( IDirectFB *thiz, DFBScreenID screen_id, IDirectFBScreen **ret_interface ); DFBResult (*EnumDisplayLayers) ( IDirectFB *thiz, DFBDisplayLayerCallback callback, void *callbackdata ); DFBResult (*GetDisplayLayer) ( IDirectFB *thiz, DFBDisplayLayerID layer_id, IDirectFBDisplayLayer **ret_interface ); DFBResult (*EnumInputDevices) ( IDirectFB *thiz, DFBInputDeviceCallback callback, void *callbackdata ); DFBResult (*GetInputDevice) ( IDirectFB *thiz, DFBInputDeviceID device_id, IDirectFBInputDevice **ret_interface ); DFBResult (*CreateEventBuffer) ( IDirectFB *thiz, IDirectFBEventBuffer **ret_buffer ); DFBResult (*CreateInputEventBuffer) ( IDirectFB *thiz, DFBInputDeviceCapabilities caps, DFBBoolean global, IDirectFBEventBuffer **ret_buffer ); DFBResult (*CreateImageProvider) ( IDirectFB *thiz, const char *filename, IDirectFBImageProvider **ret_interface ); DFBResult (*CreateVideoProvider) ( IDirectFB *thiz, const char *filename, IDirectFBVideoProvider **ret_interface ); DFBResult (*CreateFont) ( IDirectFB *thiz, const char *filename, const DFBFontDescription *desc, IDirectFBFont **ret_interface ); DFBResult (*CreateDataBuffer) ( IDirectFB *thiz, const DFBDataBufferDescription *desc, IDirectFBDataBuffer **ret_interface ); DFBResult (*SetClipboardData) ( IDirectFB *thiz, const char *mime_type, const void *data, unsigned int size, struct timeval *ret_timestamp ); DFBResult (*GetClipboardData) ( IDirectFB *thiz, char **ret_mimetype, void **ret_data, unsigned int *ret_size ); DFBResult (*GetClipboardTimeStamp) ( IDirectFB *thiz, struct timeval *ret_timestamp ); DFBResult (*Suspend) ( IDirectFB *thiz ); DFBResult (*Resume) ( IDirectFB *thiz ); DFBResult (*WaitIdle) ( IDirectFB *thiz ); DFBResult (*WaitForSync) ( IDirectFB *thiz ); DFBResult (*GetInterface) ( IDirectFB *thiz, const char *type, const char *implementation, void *arg, void **ret_interface ); }; # 1714 "../../include/directfb.h" #define DLID_PRIMARY 0x0000 #define DLSID_SURFACE 0x0000 #define DSCID_PRIMARY 0x0000 #define DIDID_KEYBOARD 0x0000 #define DIDID_MOUSE 0x0001 #define DIDID_JOYSTICK 0x0002 #define DIDID_REMOTE 0x0003 #define DIDID_ANY 0x0010 typedef enum { DLSCL_SHARED = 0, DLSCL_EXCLUSIVE, DLSCL_ADMINISTRATIVE } DFBDisplayLayerCooperativeLevel; typedef enum { DLBM_DONTCARE = 0, DLBM_COLOR, DLBM_IMAGE, DLBM_TILE } DFBDisplayLayerBackgroundMode; typedef enum { DLCONF_NONE = 0x00000000, DLCONF_WIDTH = 0x00000001, DLCONF_HEIGHT = 0x00000002, DLCONF_PIXELFORMAT = 0x00000004, DLCONF_BUFFERMODE = 0x00000008, DLCONF_OPTIONS = 0x00000010, DLCONF_SOURCE = 0x00000020, DLCONF_SURFACE_CAPS = 0x00000040, DLCONF_ALL = 0x0000007F } DFBDisplayLayerConfigFlags; typedef struct { DFBDisplayLayerConfigFlags flags; int width; int height; DFBSurfacePixelFormat pixelformat; DFBDisplayLayerBufferMode buffermode; DFBDisplayLayerOptions options; DFBDisplayLayerSourceID source; DFBSurfaceCapabilities surface_caps; } DFBDisplayLayerConfig; typedef enum { DSPM_ON = 0, DSPM_STANDBY, DSPM_SUSPEND, DSPM_OFF } DFBScreenPowerMode; typedef enum { DSMCAPS_NONE = 0x00000000, DSMCAPS_FULL = 0x00000001, DSMCAPS_SUB_LEVEL = 0x00000002, DSMCAPS_SUB_LAYERS = 0x00000004, DSMCAPS_BACKGROUND = 0x00000008 } DFBScreenMixerCapabilities; #define DFB_SCREEN_MIXER_DESC_NAME_LENGTH 24 typedef struct { DFBScreenMixerCapabilities caps; DFBDisplayLayerIDs layers; int sub_num; DFBDisplayLayerIDs sub_layers; char name[24]; } DFBScreenMixerDescription; typedef enum { DSMCONF_NONE = 0x00000000, DSMCONF_TREE = 0x00000001, DSMCONF_LEVEL = 0x00000002, DSMCONF_LAYERS = 0x00000004, DSMCONF_BACKGROUND = 0x00000010, DSMCONF_ALL = 0x00000017 } DFBScreenMixerConfigFlags; typedef enum { DSMT_UNKNOWN = 0x00000000, DSMT_FULL = 0x00000001, DSMT_SUB_LEVEL = 0x00000002, DSMT_SUB_LAYERS = 0x00000003 } DFBScreenMixerTree; typedef struct { DFBScreenMixerConfigFlags flags; DFBScreenMixerTree tree; int level; DFBDisplayLayerIDs layers; DFBColor background; } DFBScreenMixerConfig; typedef enum { DSOCAPS_NONE = 0x00000000, DSOCAPS_CONNECTORS = 0x00000001, DSOCAPS_ENCODER_SEL = 0x00000010, DSOCAPS_SIGNAL_SEL = 0x00000020, DSOCAPS_CONNECTOR_SEL = 0x00000040, DSOCAPS_ALL = 0x00000071 } DFBScreenOutputCapabilities; typedef enum { DSOC_UNKNOWN = 0x00000000, DSOC_VGA = 0x00000001, DSOC_SCART = 0x00000002, DSOC_YC = 0x00000004, DSOC_CVBS = 0x00000008 } DFBScreenOutputConnectors; typedef enum { DSOS_NONE = 0x00000000, DSOS_VGA = 0x00000001, DSOS_YC = 0x00000002, DSOS_CVBS = 0x00000004, DSOS_RGB = 0x00000008, DSOS_YCBCR = 0x00000010 } DFBScreenOutputSignals; #define DFB_SCREEN_OUTPUT_DESC_NAME_LENGTH 24 typedef struct { DFBScreenOutputCapabilities caps; DFBScreenOutputConnectors all_connectors; DFBScreenOutputSignals all_signals; char name[24]; } DFBScreenOutputDescription; typedef enum { DSOCONF_NONE = 0x00000000, DSOCONF_ENCODER = 0x00000001, DSOCONF_SIGNALS = 0x00000002, DSOCONF_CONNECTORS = 0x00000004, DSOCONF_ALL = 0x00000007 } DFBScreenOutputConfigFlags; typedef struct { DFBScreenOutputConfigFlags flags; int encoder; DFBScreenOutputSignals out_signals; DFBScreenOutputConnectors out_connectors; } DFBScreenOutputConfig; typedef enum { DSECAPS_NONE = 0x00000000, DSECAPS_TV_STANDARDS = 0x00000001, DSECAPS_TEST_PICTURE = 0x00000002, DSECAPS_MIXER_SEL = 0x00000004, DSECAPS_OUT_SIGNALS = 0x00000008, DSECAPS_SCANMODE = 0x00000010, DSECAPS_BRIGHTNESS = 0x00000100, DSECAPS_CONTRAST = 0x00000200, DSECAPS_HUE = 0x00000400, DSECAPS_SATURATION = 0x00000800, DSECAPS_ALL = 0x00000f1f } DFBScreenEncoderCapabilities; typedef enum { DSET_UNKNOWN = 0x00000000, DSET_CRTC = 0x00000001, DSET_TV = 0x00000002 } DFBScreenEncoderType; typedef enum { DSETV_UNKNOWN = 0x00000000, DSETV_PAL = 0x00000001, DSETV_NTSC = 0x00000002, DSETV_SECAM = 0x00000004 } DFBScreenEncoderTVStandards; typedef enum { DSESM_UNKNOWN = 0x00000000, DSESM_INTERLACED = 0x00000001, DSESM_PROGRESSIVE = 0x00000002 } DFBScreenEncoderScanMode; #define DFB_SCREEN_ENCODER_DESC_NAME_LENGTH 24 typedef struct { DFBScreenEncoderCapabilities caps; DFBScreenEncoderType type; DFBScreenEncoderTVStandards tv_standards; DFBScreenOutputSignals out_signals; char name[24]; } DFBScreenEncoderDescription; typedef enum { DSECONF_NONE = 0x00000000, DSECONF_TV_STANDARD = 0x00000001, DSECONF_TEST_PICTURE = 0x00000002, DSECONF_MIXER = 0x00000004, DSECONF_OUT_SIGNALS = 0x00000008, DSECONF_SCANMODE = 0x00000010, DSECONF_TEST_COLOR = 0x00000020, DSECONF_ADJUSTMENT = 0x00000040, DSECONF_ALL = 0x0000007F } DFBScreenEncoderConfigFlags; typedef enum { DSETP_OFF = 0x00000000, DSETP_MULTI = 0x00000001, DSETP_SINGLE = 0x00000002, DSETP_WHITE = 0x00000010, DSETP_YELLOW = 0x00000020, DSETP_CYAN = 0x00000030, DSETP_GREEN = 0x00000040, DSETP_MAGENTA = 0x00000050, DSETP_RED = 0x00000060, DSETP_BLUE = 0x00000070, DSETP_BLACK = 0x00000080 } DFBScreenEncoderTestPicture; typedef struct { DFBScreenEncoderConfigFlags flags; DFBScreenEncoderTVStandards tv_standard; DFBScreenEncoderTestPicture test_picture; int mixer; DFBScreenOutputSignals out_signals; DFBScreenEncoderScanMode scanmode; DFBColor test_color; DFBColorAdjustment adjustment; } DFBScreenEncoderConfig; # 2082 "../../include/directfb.h" struct _IDirectFBScreen { void *priv; int magic; DFBResult (*AddRef)( IDirectFBScreen *thiz ); DFBResult (*Release)( IDirectFBScreen *thiz ); DFBResult (*GetID) ( IDirectFBScreen *thiz, DFBScreenID *ret_screen_id ); DFBResult (*GetDescription) ( IDirectFBScreen *thiz, DFBScreenDescription *ret_desc ); DFBResult (*EnumDisplayLayers) ( IDirectFBScreen *thiz, DFBDisplayLayerCallback callback, void *callbackdata ); DFBResult (*SetPowerMode) ( IDirectFBScreen *thiz, DFBScreenPowerMode mode ); DFBResult (*WaitForSync) ( IDirectFBScreen *thiz ); DFBResult (*GetMixerDescriptions) ( IDirectFBScreen *thiz, DFBScreenMixerDescription *ret_descriptions ); DFBResult (*GetMixerConfiguration) ( IDirectFBScreen *thiz, int mixer, DFBScreenMixerConfig *ret_config ); DFBResult (*TestMixerConfiguration) ( IDirectFBScreen *thiz, int mixer, const DFBScreenMixerConfig *config, DFBScreenMixerConfigFlags *ret_failed ); DFBResult (*SetMixerConfiguration) ( IDirectFBScreen *thiz, int mixer, const DFBScreenMixerConfig *config ); DFBResult (*GetEncoderDescriptions) ( IDirectFBScreen *thiz, DFBScreenEncoderDescription *ret_descriptions ); DFBResult (*GetEncoderConfiguration) ( IDirectFBScreen *thiz, int encoder, DFBScreenEncoderConfig *ret_config ); DFBResult (*TestEncoderConfiguration) ( IDirectFBScreen *thiz, int encoder, const DFBScreenEncoderConfig *config, DFBScreenEncoderConfigFlags *ret_failed ); DFBResult (*SetEncoderConfiguration) ( IDirectFBScreen *thiz, int encoder, const DFBScreenEncoderConfig *config ); DFBResult (*GetOutputDescriptions) ( IDirectFBScreen *thiz, DFBScreenOutputDescription *ret_descriptions ); DFBResult (*GetOutputConfiguration) ( IDirectFBScreen *thiz, int output, DFBScreenOutputConfig *ret_config ); DFBResult (*TestOutputConfiguration) ( IDirectFBScreen *thiz, int output, const DFBScreenOutputConfig *config, DFBScreenOutputConfigFlags *ret_failed ); DFBResult (*SetOutputConfiguration) ( IDirectFBScreen *thiz, int output, const DFBScreenOutputConfig *config ); }; # 2288 "../../include/directfb.h" struct _IDirectFBDisplayLayer { void *priv; int magic; DFBResult (*AddRef)( IDirectFBDisplayLayer *thiz ); DFBResult (*Release)( IDirectFBDisplayLayer *thiz ); DFBResult (*GetID) ( IDirectFBDisplayLayer *thiz, DFBDisplayLayerID *ret_layer_id ); DFBResult (*GetDescription) ( IDirectFBDisplayLayer *thiz, DFBDisplayLayerDescription *ret_desc ); DFBResult (*GetSourceDescriptions) ( IDirectFBDisplayLayer *thiz, DFBDisplayLayerSourceDescription *ret_descriptions ); DFBResult (*GetCurrentOutputField) ( IDirectFBDisplayLayer *thiz, int *ret_field ); DFBResult (*GetSurface) ( IDirectFBDisplayLayer *thiz, IDirectFBSurface **ret_interface ); DFBResult (*GetScreen) ( IDirectFBDisplayLayer *thiz, IDirectFBScreen **ret_interface ); DFBResult (*SetCooperativeLevel) ( IDirectFBDisplayLayer *thiz, DFBDisplayLayerCooperativeLevel level ); DFBResult (*GetConfiguration) ( IDirectFBDisplayLayer *thiz, DFBDisplayLayerConfig *ret_config ); DFBResult (*TestConfiguration) ( IDirectFBDisplayLayer *thiz, const DFBDisplayLayerConfig *config, DFBDisplayLayerConfigFlags *ret_failed ); DFBResult (*SetConfiguration) ( IDirectFBDisplayLayer *thiz, const DFBDisplayLayerConfig *config ); DFBResult (*SetScreenLocation) ( IDirectFBDisplayLayer *thiz, float x, float y, float width, float height ); DFBResult (*SetScreenPosition) ( IDirectFBDisplayLayer *thiz, int x, int y ); DFBResult (*SetScreenRectangle) ( IDirectFBDisplayLayer *thiz, int x, int y, int width, int height ); DFBResult (*SetOpacity) ( IDirectFBDisplayLayer *thiz, u_int8_t opacity ); DFBResult (*SetSourceRectangle) ( IDirectFBDisplayLayer *thiz, int x, int y, int width, int height ); DFBResult (*SetFieldParity) ( IDirectFBDisplayLayer *thiz, int field ); DFBResult (*SetSrcColorKey) ( IDirectFBDisplayLayer *thiz, u_int8_t r, u_int8_t g, u_int8_t b ); DFBResult (*SetDstColorKey) ( IDirectFBDisplayLayer *thiz, u_int8_t r, u_int8_t g, u_int8_t b ); DFBResult (*GetLevel) ( IDirectFBDisplayLayer *thiz, int *ret_level ); DFBResult (*SetLevel) ( IDirectFBDisplayLayer *thiz, int level ); DFBResult (*SetBackgroundMode) ( IDirectFBDisplayLayer *thiz, DFBDisplayLayerBackgroundMode mode ); DFBResult (*SetBackgroundImage) ( IDirectFBDisplayLayer *thiz, IDirectFBSurface *surface ); DFBResult (*SetBackgroundColor) ( IDirectFBDisplayLayer *thiz, u_int8_t r, u_int8_t g, u_int8_t b, u_int8_t a ); DFBResult (*GetColorAdjustment) ( IDirectFBDisplayLayer *thiz, DFBColorAdjustment *ret_adj ); DFBResult (*SetColorAdjustment) ( IDirectFBDisplayLayer *thiz, const DFBColorAdjustment *adj ); DFBResult (*CreateWindow) ( IDirectFBDisplayLayer *thiz, const DFBWindowDescription *desc, IDirectFBWindow **ret_interface ); DFBResult (*GetWindow) ( IDirectFBDisplayLayer *thiz, DFBWindowID window_id, IDirectFBWindow **ret_interface ); DFBResult (*EnableCursor) ( IDirectFBDisplayLayer *thiz, int enable ); DFBResult (*GetCursorPosition) ( IDirectFBDisplayLayer *thiz, int *ret_x, int *ret_y ); DFBResult (*WarpCursor) ( IDirectFBDisplayLayer *thiz, int x, int y ); DFBResult (*SetCursorAcceleration) ( IDirectFBDisplayLayer *thiz, int numerator, int denominator, int threshold ); DFBResult (*SetCursorShape) ( IDirectFBDisplayLayer *thiz, IDirectFBSurface *shape, int hot_x, int hot_y ); DFBResult (*SetCursorOpacity) ( IDirectFBDisplayLayer *thiz, u_int8_t opacity ); DFBResult (*WaitForSync) ( IDirectFBDisplayLayer *thiz ); }; # 2701 "../../include/directfb.h" typedef enum { DSFLIP_NONE = 0x00000000, DSFLIP_WAIT = 0x00000001, DSFLIP_BLIT = 0x00000002, DSFLIP_ONSYNC = 0x00000004, DSFLIP_PIPELINE = 0x00000008, DSFLIP_WAITFORSYNC = DSFLIP_WAIT | DSFLIP_ONSYNC } DFBSurfaceFlipFlags; typedef enum { DSTF_LEFT = 0x00000000, DSTF_CENTER = 0x00000001, DSTF_RIGHT = 0x00000002, DSTF_TOP = 0x00000004, DSTF_BOTTOM = 0x00000008, DSTF_TOPLEFT = DSTF_TOP | DSTF_LEFT, DSTF_TOPCENTER = DSTF_TOP | DSTF_CENTER, DSTF_TOPRIGHT = DSTF_TOP | DSTF_RIGHT, DSTF_BOTTOMLEFT = DSTF_BOTTOM | DSTF_LEFT, DSTF_BOTTOMCENTER = DSTF_BOTTOM | DSTF_CENTER, DSTF_BOTTOMRIGHT = DSTF_BOTTOM | DSTF_RIGHT } DFBSurfaceTextFlags; typedef enum { DSLF_READ = 0x00000001, DSLF_WRITE = 0x00000002 } DFBSurfaceLockFlags; typedef enum { DSPD_NONE = 0, DSPD_CLEAR = 1, DSPD_SRC = 2, DSPD_SRC_OVER = 3, DSPD_DST_OVER = 4, DSPD_SRC_IN = 5, DSPD_DST_IN = 6, DSPD_SRC_OUT = 7, DSPD_DST_OUT = 8 } DFBSurfacePorterDuffRule; typedef enum { DSBF_ZERO = 1, DSBF_ONE = 2, DSBF_SRCCOLOR = 3, DSBF_INVSRCCOLOR = 4, DSBF_SRCALPHA = 5, DSBF_INVSRCALPHA = 6, DSBF_DESTALPHA = 7, DSBF_INVDESTALPHA = 8, DSBF_DESTCOLOR = 9, DSBF_INVDESTCOLOR = 10, DSBF_SRCALPHASAT = 11 } DFBSurfaceBlendFunction; typedef struct { float x; float y; float z; float w; float s; float t; } DFBVertex; typedef enum { DTTF_LIST, DTTF_STRIP, DTTF_FAN } DFBTriangleFormation; # 2815 "../../include/directfb.h" struct _IDirectFBSurface { void *priv; int magic; DFBResult (*AddRef)( IDirectFBSurface *thiz ); DFBResult (*Release)( IDirectFBSurface *thiz ); DFBResult (*GetCapabilities) ( IDirectFBSurface *thiz, DFBSurfaceCapabilities *ret_caps ); DFBResult (*GetSize) ( IDirectFBSurface *thiz, int *ret_width, int *ret_height ); DFBResult (*GetVisibleRectangle) ( IDirectFBSurface *thiz, DFBRectangle *ret_rect ); DFBResult (*GetPixelFormat) ( IDirectFBSurface *thiz, DFBSurfacePixelFormat *ret_format ); DFBResult (*GetAccelerationMask) ( IDirectFBSurface *thiz, IDirectFBSurface *source, DFBAccelerationMask *ret_mask ); DFBResult (*GetPalette) ( IDirectFBSurface *thiz, IDirectFBPalette **ret_interface ); DFBResult (*SetPalette) ( IDirectFBSurface *thiz, IDirectFBPalette *palette ); DFBResult (*SetAlphaRamp) ( IDirectFBSurface *thiz, u_int8_t a0, u_int8_t a1, u_int8_t a2, u_int8_t a3 ); DFBResult (*Lock) ( IDirectFBSurface *thiz, DFBSurfaceLockFlags flags, void **ret_ptr, int *ret_pitch ); DFBResult (*Unlock) ( IDirectFBSurface *thiz ); DFBResult (*Flip) ( IDirectFBSurface *thiz, const DFBRegion *region, DFBSurfaceFlipFlags flags ); DFBResult (*SetField) ( IDirectFBSurface *thiz, int field ); DFBResult (*Clear) ( IDirectFBSurface *thiz, u_int8_t r, u_int8_t g, u_int8_t b, u_int8_t a ); DFBResult (*SetClip) ( IDirectFBSurface *thiz, const DFBRegion *clip ); DFBResult (*SetColor) ( IDirectFBSurface *thiz, u_int8_t r, u_int8_t g, u_int8_t b, u_int8_t a ); DFBResult (*SetColorIndex) ( IDirectFBSurface *thiz, unsigned int index ); DFBResult (*SetSrcBlendFunction) ( IDirectFBSurface *thiz, DFBSurfaceBlendFunction function ); DFBResult (*SetDstBlendFunction) ( IDirectFBSurface *thiz, DFBSurfaceBlendFunction function ); DFBResult (*SetPorterDuff) ( IDirectFBSurface *thiz, DFBSurfacePorterDuffRule rule ); DFBResult (*SetSrcColorKey) ( IDirectFBSurface *thiz, u_int8_t r, u_int8_t g, u_int8_t b ); DFBResult (*SetSrcColorKeyIndex) ( IDirectFBSurface *thiz, unsigned int index ); DFBResult (*SetDstColorKey) ( IDirectFBSurface *thiz, u_int8_t r, u_int8_t g, u_int8_t b ); DFBResult (*SetDstColorKeyIndex) ( IDirectFBSurface *thiz, unsigned int index ); DFBResult (*SetBlittingFlags) ( IDirectFBSurface *thiz, DFBSurfaceBlittingFlags flags ); DFBResult (*Blit) ( IDirectFBSurface *thiz, IDirectFBSurface *source, const DFBRectangle *source_rect, int x, int y ); DFBResult (*TileBlit) ( IDirectFBSurface *thiz, IDirectFBSurface *source, const DFBRectangle *source_rect, int x, int y ); DFBResult (*BatchBlit) ( IDirectFBSurface *thiz, IDirectFBSurface *source, const DFBRectangle *source_rects, const DFBPoint *dest_points, int num ); DFBResult (*StretchBlit) ( IDirectFBSurface *thiz, IDirectFBSurface *source, const DFBRectangle *source_rect, const DFBRectangle *destination_rect ); DFBResult (*TextureTriangles) ( IDirectFBSurface *thiz, IDirectFBSurface *texture, const DFBVertex *vertices, const int *indices, int num, DFBTriangleFormation formation ); DFBResult (*SetDrawingFlags) ( IDirectFBSurface *thiz, DFBSurfaceDrawingFlags flags ); DFBResult (*FillRectangle) ( IDirectFBSurface *thiz, int x, int y, int w, int h ); DFBResult (*DrawRectangle) ( IDirectFBSurface *thiz, int x, int y, int w, int h ); DFBResult (*DrawLine) ( IDirectFBSurface *thiz, int x1, int y1, int x2, int y2 ); DFBResult (*DrawLines) ( IDirectFBSurface *thiz, const DFBRegion *lines, unsigned int num_lines ); DFBResult (*FillTriangle) ( IDirectFBSurface *thiz, int x1, int y1, int x2, int y2, int x3, int y3 ); DFBResult (*FillRectangles) ( IDirectFBSurface *thiz, const DFBRectangle *rects, unsigned int num ); DFBResult (*FillSpans) ( IDirectFBSurface *thiz, int y, const DFBSpan *spans, unsigned int num ); DFBResult (*SetFont) ( IDirectFBSurface *thiz, IDirectFBFont *font ); DFBResult (*GetFont) ( IDirectFBSurface *thiz, IDirectFBFont **ret_font ); DFBResult (*DrawString) ( IDirectFBSurface *thiz, const char *text, int bytes, int x, int y, DFBSurfaceTextFlags flags ); DFBResult (*DrawGlyph) ( IDirectFBSurface *thiz, unsigned int index, int x, int y, DFBSurfaceTextFlags flags ); DFBResult (*GetSubSurface) ( IDirectFBSurface *thiz, const DFBRectangle *rect, IDirectFBSurface **ret_interface ); DFBResult (*GetGL) ( IDirectFBSurface *thiz, IDirectFBGL **ret_interface ); DFBResult (*Dump) ( IDirectFBSurface *thiz, const char *directory, const char *prefix ); DFBResult (*DisableAcceleration) ( IDirectFBSurface *thiz, DFBAccelerationMask mask ); DFBResult (*GetClip) ( IDirectFBSurface *thiz, DFBRegion *ret_clip ); }; # 3429 "../../include/directfb.h" struct _IDirectFBPalette { void *priv; int magic; DFBResult (*AddRef)( IDirectFBPalette *thiz ); DFBResult (*Release)( IDirectFBPalette *thiz ); DFBResult (*GetCapabilities) ( IDirectFBPalette *thiz, DFBPaletteCapabilities *ret_caps ); DFBResult (*GetSize) ( IDirectFBPalette *thiz, unsigned int *ret_size ); DFBResult (*SetEntries) ( IDirectFBPalette *thiz, const DFBColor *entries, unsigned int num_entries, unsigned int offset ); DFBResult (*GetEntries) ( IDirectFBPalette *thiz, DFBColor *ret_entries, unsigned int num_entries, unsigned int offset ); DFBResult (*FindBestMatch) ( IDirectFBPalette *thiz, u_int8_t r, u_int8_t g, u_int8_t b, u_int8_t a, unsigned int *ret_index ); DFBResult (*CreateCopy) ( IDirectFBPalette *thiz, IDirectFBPalette **ret_interface ); }; # 3508 "../../include/directfb.h" typedef enum { DIKS_UP = 0x00000000, DIKS_DOWN = 0x00000001 } DFBInputDeviceKeyState; typedef enum { DIBS_UP = 0x00000000, DIBS_DOWN = 0x00000001 } DFBInputDeviceButtonState; typedef enum { DIBM_LEFT = 0x00000001, DIBM_RIGHT = 0x00000002, DIBM_MIDDLE = 0x00000004 } DFBInputDeviceButtonMask; typedef enum { DIMM_SHIFT = (1 << DIMKI_SHIFT), DIMM_CONTROL = (1 << DIMKI_CONTROL), DIMM_ALT = (1 << DIMKI_ALT), DIMM_ALTGR = (1 << DIMKI_ALTGR), DIMM_META = (1 << DIMKI_META), DIMM_SUPER = (1 << DIMKI_SUPER), DIMM_HYPER = (1 << DIMKI_HYPER) } DFBInputDeviceModifierMask; # 3551 "../../include/directfb.h" struct _IDirectFBInputDevice { void *priv; int magic; DFBResult (*AddRef)( IDirectFBInputDevice *thiz ); DFBResult (*Release)( IDirectFBInputDevice *thiz ); DFBResult (*GetID) ( IDirectFBInputDevice *thiz, DFBInputDeviceID *ret_device_id ); DFBResult (*GetDescription) ( IDirectFBInputDevice *thiz, DFBInputDeviceDescription *ret_desc ); DFBResult (*GetKeymapEntry) ( IDirectFBInputDevice *thiz, int keycode, DFBInputDeviceKeymapEntry *ret_entry ); DFBResult (*CreateEventBuffer) ( IDirectFBInputDevice *thiz, IDirectFBEventBuffer **ret_buffer ); DFBResult (*AttachEventBuffer) ( IDirectFBInputDevice *thiz, IDirectFBEventBuffer *buffer ); DFBResult (*GetKeyState) ( IDirectFBInputDevice *thiz, DFBInputDeviceKeyIdentifier key_id, DFBInputDeviceKeyState *ret_state ); DFBResult (*GetModifiers) ( IDirectFBInputDevice *thiz, DFBInputDeviceModifierMask *ret_modifiers ); DFBResult (*GetLockState) ( IDirectFBInputDevice *thiz, DFBInputDeviceLockState *ret_locks ); DFBResult (*GetButtons) ( IDirectFBInputDevice *thiz, DFBInputDeviceButtonMask *ret_buttons ); DFBResult (*GetButtonState) ( IDirectFBInputDevice *thiz, DFBInputDeviceButtonIdentifier button, DFBInputDeviceButtonState *ret_state ); DFBResult (*GetAxis) ( IDirectFBInputDevice *thiz, DFBInputDeviceAxisIdentifier axis, int *ret_pos ); DFBResult (*GetXY) ( IDirectFBInputDevice *thiz, int *ret_x, int *ret_y ); }; # 3680 "../../include/directfb.h" typedef enum { DFEC_NONE = 0x00, DFEC_INPUT = 0x01, DFEC_WINDOW = 0x02, DFEC_USER = 0x03, DFEC_UNIVERSAL = 0x04 } DFBEventClass; typedef enum { DIET_UNKNOWN = 0, DIET_KEYPRESS, DIET_KEYRELEASE, DIET_BUTTONPRESS, DIET_BUTTONRELEASE, DIET_AXISMOTION } DFBInputEventType; typedef enum { DIEF_NONE = 0x000, DIEF_TIMESTAMP = 0x001, DIEF_AXISABS = 0x002, DIEF_AXISREL = 0x004, DIEF_KEYCODE = 0x008, DIEF_KEYID = 0x010, DIEF_KEYSYMBOL = 0x020, DIEF_MODIFIERS = 0x040, DIEF_LOCKS = 0x080, DIEF_BUTTONS = 0x100, DIEF_GLOBAL = 0x200, DIEF_REPEAT = 0x400 } DFBInputEventFlags; typedef struct { DFBEventClass clazz; DFBInputEventType type; DFBInputDeviceID device_id; DFBInputEventFlags flags; struct timeval timestamp; int key_code; DFBInputDeviceKeyIdentifier key_id; DFBInputDeviceKeySymbol key_symbol; DFBInputDeviceModifierMask modifiers; DFBInputDeviceLockState locks; DFBInputDeviceButtonIdentifier button; DFBInputDeviceButtonMask buttons; DFBInputDeviceAxisIdentifier axis; int axisabs; int axisrel; } DFBInputEvent; typedef enum { DWET_NONE = 0x00000000, DWET_POSITION = 0x00000001, DWET_SIZE = 0x00000002, DWET_CLOSE = 0x00000004, DWET_DESTROYED = 0x00000008, DWET_GOTFOCUS = 0x00000010, DWET_LOSTFOCUS = 0x00000020, DWET_KEYDOWN = 0x00000100, DWET_KEYUP = 0x00000200, DWET_BUTTONDOWN = 0x00010000, DWET_BUTTONUP = 0x00020000, DWET_MOTION = 0x00040000, DWET_ENTER = 0x00080000, DWET_LEAVE = 0x00100000, DWET_WHEEL = 0x00200000, DWET_POSITION_SIZE = DWET_POSITION | DWET_SIZE, DWET_ALL = 0x003F033F } DFBWindowEventType; typedef struct { DFBEventClass clazz; DFBWindowEventType type; DFBWindowID window_id; int x; int y; int cx; int cy; int step; int w; int h; int key_code; DFBInputDeviceKeyIdentifier key_id; DFBInputDeviceKeySymbol key_symbol; DFBInputDeviceModifierMask modifiers; DFBInputDeviceLockState locks; DFBInputDeviceButtonIdentifier button; DFBInputDeviceButtonMask buttons; struct timeval timestamp; } DFBWindowEvent; typedef struct { DFBEventClass clazz; unsigned int type; void *data; } DFBUserEvent; typedef struct { DFBEventClass clazz; unsigned int size; } DFBUniversalEvent; typedef union { DFBEventClass clazz; DFBInputEvent input; DFBWindowEvent window; DFBUserEvent user; DFBUniversalEvent universal; } DFBEvent; #define DFB_EVENT(e) ((DFBEvent *) (e)) typedef struct { unsigned int num_events; unsigned int DFEC_INPUT; unsigned int DFEC_WINDOW; unsigned int DFEC_USER; unsigned int DFEC_UNIVERSAL; unsigned int DIET_KEYPRESS; unsigned int DIET_KEYRELEASE; unsigned int DIET_BUTTONPRESS; unsigned int DIET_BUTTONRELEASE; unsigned int DIET_AXISMOTION; unsigned int DWET_POSITION; unsigned int DWET_SIZE; unsigned int DWET_CLOSE; unsigned int DWET_DESTROYED; unsigned int DWET_GOTFOCUS; unsigned int DWET_LOSTFOCUS; unsigned int DWET_KEYDOWN; unsigned int DWET_KEYUP; unsigned int DWET_BUTTONDOWN; unsigned int DWET_BUTTONUP; unsigned int DWET_MOTION; unsigned int DWET_ENTER; unsigned int DWET_LEAVE; unsigned int DWET_WHEEL; unsigned int DWET_POSITION_SIZE; } DFBEventBufferStats; # 3951 "../../include/directfb.h" struct _IDirectFBEventBuffer { void *priv; int magic; DFBResult (*AddRef)( IDirectFBEventBuffer *thiz ); DFBResult (*Release)( IDirectFBEventBuffer *thiz ); DFBResult (*Reset) ( IDirectFBEventBuffer *thiz ); DFBResult (*WaitForEvent) ( IDirectFBEventBuffer *thiz ); DFBResult (*WaitForEventWithTimeout) ( IDirectFBEventBuffer *thiz, unsigned int seconds, unsigned int milli_seconds ); DFBResult (*GetEvent) ( IDirectFBEventBuffer *thiz, DFBEvent *ret_event ); DFBResult (*PeekEvent) ( IDirectFBEventBuffer *thiz, DFBEvent *ret_event ); DFBResult (*HasEvent) ( IDirectFBEventBuffer *thiz ); DFBResult (*PostEvent) ( IDirectFBEventBuffer *thiz, const DFBEvent *event ); DFBResult (*WakeUp) ( IDirectFBEventBuffer *thiz ); DFBResult (*CreateFileDescriptor) ( IDirectFBEventBuffer *thiz, int *ret_fd ); DFBResult (*EnableStatistics) ( IDirectFBEventBuffer *thiz, DFBBoolean enable ); DFBResult (*GetStatistics) ( IDirectFBEventBuffer *thiz, DFBEventBufferStats *ret_stats ); }; # 4082 "../../include/directfb.h" typedef enum { DWOP_NONE = 0x00000000, DWOP_COLORKEYING = 0x00000001, DWOP_ALPHACHANNEL = 0x00000002, DWOP_OPAQUE_REGION = 0x00000004, DWOP_SHAPED = 0x00000008, DWOP_KEEP_POSITION = 0x00000010, DWOP_KEEP_SIZE = 0x00000020, DWOP_KEEP_STACKING = 0x00000040, DWOP_GHOST = 0x00001000, DWOP_INDESTRUCTIBLE = 0x00002000, DWOP_ALL = 0x0000307F } DFBWindowOptions; typedef enum { DWSC_MIDDLE = 0x00000000, DWSC_UPPER = 0x00000001, DWSC_LOWER = 0x00000002 } DFBWindowStackingClass; # 4131 "../../include/directfb.h" struct _IDirectFBWindow { void *priv; int magic; DFBResult (*AddRef)( IDirectFBWindow *thiz ); DFBResult (*Release)( IDirectFBWindow *thiz ); DFBResult (*GetID) ( IDirectFBWindow *thiz, DFBWindowID *ret_window_id ); DFBResult (*GetPosition) ( IDirectFBWindow *thiz, int *ret_x, int *ret_y ); DFBResult (*GetSize) ( IDirectFBWindow *thiz, int *ret_width, int *ret_height ); DFBResult (*CreateEventBuffer) ( IDirectFBWindow *thiz, IDirectFBEventBuffer **ret_buffer ); DFBResult (*AttachEventBuffer) ( IDirectFBWindow *thiz, IDirectFBEventBuffer *buffer ); DFBResult (*EnableEvents) ( IDirectFBWindow *thiz, DFBWindowEventType mask ); DFBResult (*DisableEvents) ( IDirectFBWindow *thiz, DFBWindowEventType mask ); DFBResult (*GetSurface) ( IDirectFBWindow *thiz, IDirectFBSurface **ret_surface ); DFBResult (*SetOptions) ( IDirectFBWindow *thiz, DFBWindowOptions options ); DFBResult (*GetOptions) ( IDirectFBWindow *thiz, DFBWindowOptions *ret_options ); DFBResult (*SetColorKey) ( IDirectFBWindow *thiz, u_int8_t r, u_int8_t g, u_int8_t b ); DFBResult (*SetColorKeyIndex) ( IDirectFBWindow *thiz, unsigned int index ); DFBResult (*SetOpacity) ( IDirectFBWindow *thiz, u_int8_t opacity ); DFBResult (*SetOpaqueRegion) ( IDirectFBWindow *thiz, int x1, int y1, int x2, int y2 ); DFBResult (*GetOpacity) ( IDirectFBWindow *thiz, u_int8_t *ret_opacity ); DFBResult (*SetCursorShape) ( IDirectFBWindow *thiz, IDirectFBSurface *shape, int hot_x, int hot_y ); DFBResult (*RequestFocus) ( IDirectFBWindow *thiz ); DFBResult (*GrabKeyboard) ( IDirectFBWindow *thiz ); DFBResult (*UngrabKeyboard) ( IDirectFBWindow *thiz ); DFBResult (*GrabPointer) ( IDirectFBWindow *thiz ); DFBResult (*UngrabPointer) ( IDirectFBWindow *thiz ); DFBResult (*GrabKey) ( IDirectFBWindow *thiz, DFBInputDeviceKeySymbol symbol, DFBInputDeviceModifierMask modifiers ); DFBResult (*UngrabKey) ( IDirectFBWindow *thiz, DFBInputDeviceKeySymbol symbol, DFBInputDeviceModifierMask modifiers ); DFBResult (*Move) ( IDirectFBWindow *thiz, int dx, int dy ); DFBResult (*MoveTo) ( IDirectFBWindow *thiz, int x, int y ); DFBResult (*Resize) ( IDirectFBWindow *thiz, int width, int height ); DFBResult (*SetStackingClass) ( IDirectFBWindow *thiz, DFBWindowStackingClass stacking_class ); DFBResult (*Raise) ( IDirectFBWindow *thiz ); DFBResult (*Lower) ( IDirectFBWindow *thiz ); DFBResult (*RaiseToTop) ( IDirectFBWindow *thiz ); DFBResult (*LowerToBottom) ( IDirectFBWindow *thiz ); DFBResult (*PutAtop) ( IDirectFBWindow *thiz, IDirectFBWindow *lower ); DFBResult (*PutBelow) ( IDirectFBWindow *thiz, IDirectFBWindow *upper ); DFBResult (*Close) ( IDirectFBWindow *thiz ); DFBResult (*Destroy) ( IDirectFBWindow *thiz ); }; # 4499 "../../include/directfb.h" struct _IDirectFBFont { void *priv; int magic; DFBResult (*AddRef)( IDirectFBFont *thiz ); DFBResult (*Release)( IDirectFBFont *thiz ); DFBResult (*GetAscender) ( IDirectFBFont *thiz, int *ret_ascender ); DFBResult (*GetDescender) ( IDirectFBFont *thiz, int *ret_descender ); DFBResult (*GetHeight) ( IDirectFBFont *thiz, int *ret_height ); DFBResult (*GetMaxAdvance) ( IDirectFBFont *thiz, int *ret_maxadvance ); DFBResult (*GetKerning) ( IDirectFBFont *thiz, unsigned int prev_index, unsigned int current_index, int *ret_kern_x, int *ret_kern_y ); DFBResult (*GetStringWidth) ( IDirectFBFont *thiz, const char *text, int bytes, int *ret_width ); DFBResult (*GetStringExtents) ( IDirectFBFont *thiz, const char *text, int bytes, DFBRectangle *ret_logical_rect, DFBRectangle *ret_ink_rect ); DFBResult (*GetGlyphExtents) ( IDirectFBFont *thiz, unsigned int index, DFBRectangle *ret_rect, int *ret_advance ); }; # 4635 "../../include/directfb.h" typedef enum { DICAPS_NONE = 0x00000000, DICAPS_ALPHACHANNEL = 0x00000001, DICAPS_COLORKEY = 0x00000002 } DFBImageCapabilities; typedef struct { DFBImageCapabilities caps; u_int8_t colorkey_r; u_int8_t colorkey_g; u_int8_t colorkey_b; } DFBImageDescription; typedef void (*DIRenderCallback)(DFBRectangle *rect, void *ctx); # 4669 "../../include/directfb.h" struct _IDirectFBImageProvider { void *priv; int magic; DFBResult (*AddRef)( IDirectFBImageProvider *thiz ); DFBResult (*Release)( IDirectFBImageProvider *thiz ); DFBResult (*GetSurfaceDescription) ( IDirectFBImageProvider *thiz, DFBSurfaceDescription *ret_dsc ); DFBResult (*GetImageDescription) ( IDirectFBImageProvider *thiz, DFBImageDescription *ret_dsc ); DFBResult (*RenderTo) ( IDirectFBImageProvider *thiz, IDirectFBSurface *destination, const DFBRectangle *destination_rect ); DFBResult (*SetRenderCallback) ( IDirectFBImageProvider *thiz, DIRenderCallback callback, void *callback_data ); }; # 4735 "../../include/directfb.h" typedef enum { DVSCAPS_NONE = 0x00000000, DVSCAPS_VIDEO = 0x00000001, DVSCAPS_AUDIO = 0x00000002 } DFBStreamCapabilities; #define DFB_STREAM_DESC_ENCODING_LENGTH 30 #define DFB_STREAM_DESC_TITLE_LENGTH 255 #define DFB_STREAM_DESC_AUTHOR_LENGTH 255 #define DFB_STREAM_DESC_ALBUM_LENGTH 255 #define DFB_STREAM_DESC_GENRE_LENGTH 32 #define DFB_STREAM_DESC_COMMENT_LENGTH 255 typedef struct { DFBStreamCapabilities caps; struct { char encoding[30]; double framerate; double aspect; int bitrate; } video; struct { char encoding[30]; int samplerate; int channels; int bitrate; } audio; char title[255]; char author[255]; char album[255]; short year; char genre[32]; char comment[255]; } DFBStreamDescription; typedef int (*DVFrameCallback)(void *ctx); # 4792 "../../include/directfb.h" struct _IDirectFBVideoProvider { void *priv; int magic; DFBResult (*AddRef)( IDirectFBVideoProvider *thiz ); DFBResult (*Release)( IDirectFBVideoProvider *thiz ); DFBResult (*GetCapabilities) ( IDirectFBVideoProvider *thiz, DFBVideoProviderCapabilities *ret_caps ); DFBResult (*GetSurfaceDescription) ( IDirectFBVideoProvider *thiz, DFBSurfaceDescription *ret_dsc ); DFBResult (*GetStreamDescription) ( IDirectFBVideoProvider *thiz, DFBStreamDescription *ret_dsc ); DFBResult (*PlayTo) ( IDirectFBVideoProvider *thiz, IDirectFBSurface *destination, const DFBRectangle *destination_rect, DVFrameCallback callback, void *ctx ); DFBResult (*Stop) ( IDirectFBVideoProvider *thiz ); DFBResult (*GetStatus) ( IDirectFBVideoProvider *thiz, DFBVideoProviderStatus *ret_status ); DFBResult (*SeekTo) ( IDirectFBVideoProvider *thiz, double seconds ); DFBResult (*GetPos) ( IDirectFBVideoProvider *thiz, double *ret_seconds ); DFBResult (*GetLength) ( IDirectFBVideoProvider *thiz, double *ret_seconds ); DFBResult (*GetColorAdjustment) ( IDirectFBVideoProvider *thiz, DFBColorAdjustment *ret_adj ); DFBResult (*SetColorAdjustment) ( IDirectFBVideoProvider *thiz, const DFBColorAdjustment *adj ); DFBResult (*SendEvent) ( IDirectFBVideoProvider *thiz, const DFBEvent *event ); }; # 4928 "../../include/directfb.h" struct _IDirectFBDataBuffer { void *priv; int magic; DFBResult (*AddRef)( IDirectFBDataBuffer *thiz ); DFBResult (*Release)( IDirectFBDataBuffer *thiz ); DFBResult (*Flush) ( IDirectFBDataBuffer *thiz ); DFBResult (*Finish) ( IDirectFBDataBuffer *thiz ); DFBResult (*SeekTo) ( IDirectFBDataBuffer *thiz, unsigned int offset ); DFBResult (*GetPosition) ( IDirectFBDataBuffer *thiz, unsigned int *ret_offset ); DFBResult (*GetLength) ( IDirectFBDataBuffer *thiz, unsigned int *ret_length ); DFBResult (*WaitForData) ( IDirectFBDataBuffer *thiz, unsigned int length ); DFBResult (*WaitForDataWithTimeout) ( IDirectFBDataBuffer *thiz, unsigned int length, unsigned int seconds, unsigned int milli_seconds ); DFBResult (*GetData) ( IDirectFBDataBuffer *thiz, unsigned int length, void *ret_data, unsigned int *ret_read ); DFBResult (*PeekData) ( IDirectFBDataBuffer *thiz, unsigned int length, int offset, void *ret_data, unsigned int *ret_read ); DFBResult (*HasData) ( IDirectFBDataBuffer *thiz ); DFBResult (*PutData) ( IDirectFBDataBuffer *thiz, const void *data, unsigned int length ); DFBResult (*CreateImageProvider) ( IDirectFBDataBuffer *thiz, IDirectFBImageProvider **interface ); DFBResult (*CreateVideoProvider) ( IDirectFBDataBuffer *thiz, IDirectFBVideoProvider **interface ); }; # 35 "../../lib/direct/types.h" 2 typedef DFBResult DirectResult; # 46 "../../lib/direct/types.h" #define false (0) #define true (!false) typedef u_int8_t bool; typedef u_int32_t unichar; typedef struct __D_DirectConfig DirectConfig; typedef struct __D_DirectHash DirectHash; typedef struct __D_DirectLink DirectLink; typedef struct __D_DirectLog DirectLog; typedef struct __D_DirectModuleDir DirectModuleDir; typedef struct __D_DirectModuleEntry DirectModuleEntry; typedef struct __D_DirectSerial DirectSerial; typedef struct __D_DirectSignalHandler DirectSignalHandler; typedef struct __D_DirectStream DirectStream; typedef struct __D_DirectTraceBuffer DirectTraceBuffer; typedef struct __D_DirectTree DirectTree; typedef struct __D_DirectThread DirectThread; typedef struct __D_DirectThreadInitHandler DirectThreadInitHandler; # 33 "../../lib/direct/conf.h" 2 # 1 "/usr/include/sys/signal.h" 1 3 4 # 36 "../../lib/direct/conf.h" 2 typedef enum { DCFL_NONE, DCFL_ASSERT, DCFL_ASSUME } DirectConfigFatalLevel; struct __D_DirectConfig { bool quiet; bool debug; bool trace; char *memcpy; char **disable_module; bool sighandler; sigset_t dont_catch; DirectLog *log; DirectConfigFatalLevel fatal; }; extern DirectConfig *direct_config; # 37 "../../lib/direct/debug.h" 2 # 1 "../../lib/direct/log.h" 1 # 29 "../../lib/direct/log.h" #define __DIRECT__LOG_H__ # 1 "../../lib/direct/messages.h" 1 # 29 "../../lib/direct/messages.h" #define __DIRECT__MESSAGES_H__ #define D_FORMAT_PRINTF(n) __attribute__((__format__ (__printf__, n, n+1))) # 1 "/usr/include/errno.h" 1 3 4 # 72 "/usr/include/errno.h" 3 4 #undef __need_error_t # 44 "../../lib/direct/messages.h" 2 void direct_messages_info ( const char *format, ... ) __attribute__((__format__ (__printf__, 1, 1 +1))); void direct_messages_error ( const char *format, ... ) __attribute__((__format__ (__printf__, 1, 1 +1))); void direct_messages_derror ( DirectResult result, const char *format, ... ) __attribute__((__format__ (__printf__, 2, 2 +1))); void direct_messages_perror ( int erno, const char *format, ... ) __attribute__((__format__ (__printf__, 2, 2 +1))); void direct_messages_dlerror ( const char *dlerr, const char *format, ... ) __attribute__((__format__ (__printf__, 2, 2 +1))); void direct_messages_once ( const char *func, const char *file, int line, const char *format, ... ) __attribute__((__format__ (__printf__, 4, 4 +1))); void direct_messages_unimplemented( const char *func, const char *file, int line ); void direct_messages_bug ( const char *func, const char *file, int line, const char *format, ... ) __attribute__((__format__ (__printf__, 4, 4 +1))); void direct_messages_warn ( const char *func, const char *file, int line, const char *format, ... ) __attribute__((__format__ (__printf__, 4, 4 +1))); #define D_INFO(x...) do { if (!direct_config->quiet) direct_messages_info( x ); } while (0) #define D_ERROR(x...) do { if (!direct_config->quiet) direct_messages_error( x ); } while (0) #define D_DERROR(r,x...) do { if (!direct_config->quiet) direct_messages_derror( r, x ); } while (0) #define D_PERROR(x...) do { if (!direct_config->quiet) direct_messages_perror( errno, x ); } while (0) #define D_DLERROR(x...) do { if (!direct_config->quiet) direct_messages_dlerror( dlerror(), x ); } while (0) #define D_ONCE(x...) do { if (!direct_config->quiet) { static bool first = true; if (first) { direct_messages_once( __FUNCTION__, __FILE__, __LINE__, x ); first = false; } } } while (0) # 118 "../../lib/direct/messages.h" #define D_UNIMPLEMENTED() do { if (!direct_config->quiet) { static bool first = true; if (first) { direct_messages_unimplemented( __FUNCTION__, __FILE__, __LINE__ ); first = false; } } } while (0) # 129 "../../lib/direct/messages.h" #define D_BUG(x...) do { if (!direct_config->quiet) direct_messages_bug( __FUNCTION__, __FILE__, __LINE__, x ); } while (0) #define D_WARN(x...) do { if (!direct_config->quiet) direct_messages_warn( __FUNCTION__, __FILE__, __LINE__, x ); } while (0) #define D_OOM() (direct_messages_warn( __FUNCTION__, __FILE__, __LINE__, "out of memory" ), DFB_NOSYSTEMMEMORY) # 33 "../../lib/direct/log.h" 2 typedef enum { DLT_STDERR, DLT_FILE, DLT_UDP } DirectLogType; # 50 "../../lib/direct/log.h" DirectResult direct_log_create ( DirectLogType type, const char *param, DirectLog **ret_log ); DirectResult direct_log_destroy ( DirectLog *log ); DirectResult direct_log_printf ( DirectLog *log, const char *format, ... ) __attribute__((__format__ (__printf__, 2, 2 +1))); DirectResult direct_log_set_default( DirectLog *log ); # 38 "../../lib/direct/debug.h" 2 # 1 "../../lib/direct/system.h" 1 # 29 "../../lib/direct/system.h" #define __DIRECT__SYSTEM_H__ pid_t direct_gettid(); long direct_pagesize(); # 40 "../../lib/direct/debug.h" 2 # 1 "../../lib/direct/util.h" 1 # 29 "../../lib/direct/util.h" #define __DIRECT__UTIL_H__ # 1 "/usr/include/pthread.h" 1 3 4 # 16 "/usr/include/pthread.h" 3 4 #define _PTHREAD_H 1 # 1 "/usr/include/sched.h" 1 3 4 # 21 "/usr/include/sched.h" 3 4 #define _SCHED_H 1 #define __need_timespec # 1 "/usr/include/time.h" 1 3 4 # 67 "/usr/include/time.h" 3 4 #undef __need_clock_t # 83 "/usr/include/time.h" 3 4 #undef __need_time_t # 95 "/usr/include/time.h" 3 4 #undef __clockid_time_t # 107 "/usr/include/time.h" 3 4 #undef __need_timer_t # 125 "/usr/include/time.h" 3 4 #undef __need_timespec # 30 "/usr/include/sched.h" 2 3 4 # 1 "/usr/include/bits/sched.h" 1 3 4 # 29 "/usr/include/bits/sched.h" 3 4 #define SCHED_OTHER 0 #define SCHED_FIFO 1 #define SCHED_RR 2 #define CSIGNAL 0x000000ff #define CLONE_VM 0x00000100 #define CLONE_FS 0x00000200 #define CLONE_FILES 0x00000400 #define CLONE_SIGHAND 0x00000800 #define CLONE_PTRACE 0x00002000 #define CLONE_VFORK 0x00004000 #define CLONE_PARENT 0x00008000 #define CLONE_THREAD 0x00010000 #define CLONE_NEWNS 0x00020000 #define CLONE_SYSVSEM 0x00040000 #define CLONE_SETTLS 0x00080000 #define CLONE_PARENT_SETTID 0x00100000 #define CLONE_CHILD_CLEARTID 0x00200000 #define CLONE_DETACHED 0x00400000 #define CLONE_UNTRACED 0x00800000 #define CLONE_CHILD_SETTID 0x01000000 #define CLONE_STOPPED 0x02000000 struct sched_param { int __sched_priority; }; extern int clone (int (*__fn) (void *__arg), void *__child_stack, int __flags, void *__arg) __attribute__ ((__nothrow__)); # 92 "/usr/include/bits/sched.h" 3 4 #define __cpu_set_t_defined #define __CPU_SETSIZE 1024 #define __NCPUBITS (8 * sizeof (__cpu_mask)) typedef unsigned long int __cpu_mask; #define __CPUELT(cpu) ((cpu) / __NCPUBITS) #define __CPUMASK(cpu) ((__cpu_mask) 1 << ((cpu) % __NCPUBITS)) typedef struct { __cpu_mask __bits[1024 / (8 * sizeof (__cpu_mask))]; } cpu_set_t; #define __CPU_ZERO(cpusetp) do { unsigned int __i; cpu_set_t *__arr = (cpusetp); for (__i = 0; __i < sizeof (cpu_set_t) / sizeof (__cpu_mask); ++__i) __arr->__bits[__i] = 0; } while (0) #define __CPU_SET(cpu,cpusetp) ((cpusetp)->__bits[__CPUELT (cpu)] |= __CPUMASK (cpu)) #define __CPU_CLR(cpu,cpusetp) ((cpusetp)->__bits[__CPUELT (cpu)] &= ~__CPUMASK (cpu)) #define __CPU_ISSET(cpu,cpusetp) (((cpusetp)->__bits[__CPUELT (cpu)] & __CPUMASK (cpu)) != 0) # 33 "/usr/include/sched.h" 2 3 4 #define sched_priority __sched_priority extern int sched_setparam (__pid_t __pid, __const struct sched_param *__param) __attribute__ ((__nothrow__)); extern int sched_getparam (__pid_t __pid, struct sched_param *__param) __attribute__ ((__nothrow__)); extern int sched_setscheduler (__pid_t __pid, int __policy, __const struct sched_param *__param) __attribute__ ((__nothrow__)); extern int sched_getscheduler (__pid_t __pid) __attribute__ ((__nothrow__)); extern int sched_yield (void) __attribute__ ((__nothrow__)); extern int sched_get_priority_max (int __algorithm) __attribute__ ((__nothrow__)); extern int sched_get_priority_min (int __algorithm) __attribute__ ((__nothrow__)); extern int sched_rr_get_interval (__pid_t __pid, struct timespec *__t) __attribute__ ((__nothrow__)); #define CPU_SETSIZE __CPU_SETSIZE #define CPU_SET(cpu,cpusetp) __CPU_SET (cpu, cpusetp) #define CPU_CLR(cpu,cpusetp) __CPU_CLR (cpu, cpusetp) #define CPU_ISSET(cpu,cpusetp) __CPU_ISSET (cpu, cpusetp) #define CPU_ZERO(cpusetp) __CPU_ZERO (cpusetp) extern int sched_setaffinity (__pid_t __pid, size_t __cpusetsize, __const cpu_set_t *__cpuset) __attribute__ ((__nothrow__)); extern int sched_getaffinity (__pid_t __pid, size_t __cpusetsize, cpu_set_t *__cpuset) __attribute__ ((__nothrow__)); # 21 "/usr/include/pthread.h" 2 3 4 # 1 "/usr/include/time.h" 1 3 4 # 27 "/usr/include/time.h" 3 4 #define _TIME_H 1 #define __need_size_t #define __need_NULL # 1 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 1 3 4 # 235 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef __need_size_t # 397 "/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/stddef.h" 3 4 #undef NULL #define NULL ((void *)0) #undef __need_NULL # 39 "/usr/include/time.h" 2 3 4 # 1 "/usr/include/bits/time.h" 1 3 4 # 26 "/usr/include/bits/time.h" 3 4 #define _BITS_TIME_H 1 #define CLOCKS_PER_SEC 1000000l # 46 "/usr/include/bits/time.h" 3 4 #define CLOCK_REALTIME 0 #define CLOCK_MONOTONIC 1 #define CLOCK_PROCESS_CPUTIME_ID 2 #define CLOCK_THREAD_CPUTIME_ID 3 #define TIMER_ABSTIME 1 # 43 "/usr/include/time.h" 2 3 4 # 67 "/usr/include/time.h" 3 4 #undef __need_clock_t # 83 "/usr/include/time.h" 3 4 #undef __need_time_t # 95 "/usr/include/time.h" 3 4 #undef __clockid_time_t # 107 "/usr/include/time.h" 3 4 #undef __need_timer_t # 125 "/usr/include/time.h" 3 4 #undef __need_timespec struct tm { int tm_sec; int tm_min; int tm_hour; int tm_mday; int tm_mon; int tm_year; int tm_wday; int tm_yday; int tm_isdst; long int tm_gmtoff; __const char *tm_zone; }; struct itimerspec { struct timespec it_interval; struct timespec it_value; }; struct sigevent; # 178 "/usr/include/time.h" 3 4 extern clock_t clock (void) __attribute__ ((__nothrow__)); extern time_t time (time_t *__timer) __attribute__ ((__nothrow__)); extern double difftime (time_t __time1, time_t __time0) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern time_t mktime (struct tm *__tp) __attribute__ ((__nothrow__)); extern size_t strftime (char *__restrict __s, size_t __maxsize, __const char *__restrict __format, __const struct tm *__restrict __tp) __attribute__ ((__nothrow__)); extern char *strptime (__const char *__restrict __s, __const char *__restrict __fmt, struct tm *__tp) __attribute__ ((__nothrow__)); extern size_t strftime_l (char *__restrict __s, size_t __maxsize, __const char *__restrict __format, __const struct tm *__restrict __tp, __locale_t __loc) __attribute__ ((__nothrow__)); extern char *strptime_l (__const char *__restrict __s, __const char *__restrict __fmt, struct tm *__tp, __locale_t __loc) __attribute__ ((__nothrow__)); extern struct tm *gmtime (__const time_t *__timer) __attribute__ ((__nothrow__)); extern struct tm *localtime (__const time_t *__timer) __attribute__ ((__nothrow__)); extern struct tm *gmtime_r (__const time_t *__restrict __timer, struct tm *__restrict __tp) __attribute__ ((__nothrow__)); extern struct tm *localtime_r (__const time_t *__restrict __timer, struct tm *__restrict __tp) __attribute__ ((__nothrow__)); extern char *asctime (__const struct tm *__tp) __attribute__ ((__nothrow__)); extern char *ctime (__const time_t *__timer) __attribute__ ((__nothrow__)); extern char *asctime_r (__const struct tm *__restrict __tp, char *__restrict __buf) __attribute__ ((__nothrow__)); extern char *ctime_r (__const time_t *__restrict __timer, char *__restrict __buf) __attribute__ ((__nothrow__)); extern char *__tzname[2]; extern int __daylight; extern long int __timezone; extern char *tzname[2]; extern void tzset (void) __attribute__ ((__nothrow__)); extern int daylight; extern long int timezone; extern int stime (__const time_t *__when) __attribute__ ((__nothrow__)); #define __isleap(year) ((year) % 4 == 0 && ((year) % 100 != 0 || (year) % 400 == 0)) # 309 "/usr/include/time.h" 3 4 extern time_t timegm (struct tm *__tp) __attribute__ ((__nothrow__)); extern time_t timelocal (struct tm *__tp) __attribute__ ((__nothrow__)); extern int dysize (int __year) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); # 324 "/usr/include/time.h" 3 4 extern int nanosleep (__const struct timespec *__requested_time, struct timespec *__remaining); extern int clock_getres (clockid_t __clock_id, struct timespec *__res) __attribute__ ((__nothrow__)); extern int clock_gettime (clockid_t __clock_id, struct timespec *__tp) __attribute__ ((__nothrow__)); extern int clock_settime (clockid_t __clock_id, __const struct timespec *__tp) __attribute__ ((__nothrow__)); extern int clock_nanosleep (clockid_t __clock_id, int __flags, __const struct timespec *__req, struct timespec *__rem); extern int clock_getcpuclockid (pid_t __pid, clockid_t *__clock_id) __attribute__ ((__nothrow__)); extern int timer_create (clockid_t __clock_id, struct sigevent *__restrict __evp, timer_t *__restrict __timerid) __attribute__ ((__nothrow__)); extern int timer_delete (timer_t __timerid) __attribute__ ((__nothrow__)); extern int timer_settime (timer_t __timerid, int __flags, __const struct itimerspec *__restrict __value, struct itimerspec *__restrict __ovalue) __attribute__ ((__nothrow__)); extern int timer_gettime (timer_t __timerid, struct itimerspec *__value) __attribute__ ((__nothrow__)); extern int timer_getoverrun (timer_t __timerid) __attribute__ ((__nothrow__)); # 386 "/usr/include/time.h" 3 4 extern int getdate_err; # 395 "/usr/include/time.h" 3 4 extern struct tm *getdate (__const char *__string); # 409 "/usr/include/time.h" 3 4 extern int getdate_r (__const char *__restrict __string, struct tm *__restrict __resbufp); # 22 "/usr/include/pthread.h" 2 3 4 #define __need_sigset_t # 1 "/usr/include/bits/pthreadtypes.h" 1 3 4 # 26 "/usr/include/pthread.h" 2 3 4 # 1 "/usr/include/bits/initspin.h" 1 3 4 # 23 "/usr/include/bits/initspin.h" 3 4 #define __LT_SPINLOCK_INIT 0 #define __LOCK_INITIALIZER { 0, __LT_SPINLOCK_INIT } #define __ALT_LOCK_INITIALIZER { 0, __LT_SPINLOCK_INIT } #define __ATOMIC_INITIALIZER { 0, __LT_SPINLOCK_INIT } # 27 "/usr/include/pthread.h" 2 3 4 #define PTHREAD_MUTEX_INITIALIZER {0, 0, 0, PTHREAD_MUTEX_TIMED_NP, __LOCK_INITIALIZER} #define PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP {0, 0, 0, PTHREAD_MUTEX_RECURSIVE_NP, __LOCK_INITIALIZER} #define PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP {0, 0, 0, PTHREAD_MUTEX_ERRORCHECK_NP, __LOCK_INITIALIZER} #define PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP {0, 0, 0, PTHREAD_MUTEX_ADAPTIVE_NP, __LOCK_INITIALIZER} #define PTHREAD_COND_INITIALIZER {__LOCK_INITIALIZER, 0, "", 0} #define PTHREAD_RWLOCK_INITIALIZER { __LOCK_INITIALIZER, 0, NULL, NULL, NULL, PTHREAD_RWLOCK_DEFAULT_NP, PTHREAD_PROCESS_PRIVATE } #define PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP { __LOCK_INITIALIZER, 0, NULL, NULL, NULL, PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP, PTHREAD_PROCESS_PRIVATE } enum { PTHREAD_CREATE_JOINABLE, #define PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_DETACHED #define PTHREAD_CREATE_DETACHED PTHREAD_CREATE_DETACHED }; enum { PTHREAD_INHERIT_SCHED, #define PTHREAD_INHERIT_SCHED PTHREAD_INHERIT_SCHED PTHREAD_EXPLICIT_SCHED #define PTHREAD_EXPLICIT_SCHED PTHREAD_EXPLICIT_SCHED }; enum { PTHREAD_SCOPE_SYSTEM, #define PTHREAD_SCOPE_SYSTEM PTHREAD_SCOPE_SYSTEM PTHREAD_SCOPE_PROCESS #define PTHREAD_SCOPE_PROCESS PTHREAD_SCOPE_PROCESS }; enum { PTHREAD_MUTEX_TIMED_NP, PTHREAD_MUTEX_RECURSIVE_NP, PTHREAD_MUTEX_ERRORCHECK_NP, PTHREAD_MUTEX_ADAPTIVE_NP , PTHREAD_MUTEX_NORMAL = PTHREAD_MUTEX_TIMED_NP, PTHREAD_MUTEX_RECURSIVE = PTHREAD_MUTEX_RECURSIVE_NP, PTHREAD_MUTEX_ERRORCHECK = PTHREAD_MUTEX_ERRORCHECK_NP, PTHREAD_MUTEX_DEFAULT = PTHREAD_MUTEX_NORMAL , PTHREAD_MUTEX_FAST_NP = PTHREAD_MUTEX_ADAPTIVE_NP }; enum { PTHREAD_PROCESS_PRIVATE, #define PTHREAD_PROCESS_PRIVATE PTHREAD_PROCESS_PRIVATE PTHREAD_PROCESS_SHARED #define PTHREAD_PROCESS_SHARED PTHREAD_PROCESS_SHARED }; enum { PTHREAD_RWLOCK_PREFER_READER_NP, PTHREAD_RWLOCK_PREFER_WRITER_NP, PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP, PTHREAD_RWLOCK_DEFAULT_NP = PTHREAD_RWLOCK_PREFER_WRITER_NP }; #define PTHREAD_ONCE_INIT 0 #define PTHREAD_BARRIER_SERIAL_THREAD -1 struct _pthread_cleanup_buffer { void (*__routine) (void *); void *__arg; int __canceltype; struct _pthread_cleanup_buffer *__prev; }; enum { PTHREAD_CANCEL_ENABLE, #define PTHREAD_CANCEL_ENABLE PTHREAD_CANCEL_ENABLE PTHREAD_CANCEL_DISABLE #define PTHREAD_CANCEL_DISABLE PTHREAD_CANCEL_DISABLE }; enum { PTHREAD_CANCEL_DEFERRED, #define PTHREAD_CANCEL_DEFERRED PTHREAD_CANCEL_DEFERRED PTHREAD_CANCEL_ASYNCHRONOUS #define PTHREAD_CANCEL_ASYNCHRONOUS PTHREAD_CANCEL_ASYNCHRONOUS }; #define PTHREAD_CANCELED ((void *) -1) extern int pthread_create (pthread_t *__restrict __threadp, __const pthread_attr_t *__restrict __attr, void *(*__start_routine) (void *), void *__restrict __arg) __attribute__ ((__nothrow__)); extern pthread_t pthread_self (void) __attribute__ ((__nothrow__)); extern int pthread_equal (pthread_t __thread1, pthread_t __thread2) __attribute__ ((__nothrow__)); extern void pthread_exit (void *__retval) __attribute__ ((__noreturn__)); extern int pthread_join (pthread_t __th, void **__thread_return); extern int pthread_detach (pthread_t __th) __attribute__ ((__nothrow__)); extern int pthread_attr_init (pthread_attr_t *__attr) __attribute__ ((__nothrow__)); extern int pthread_attr_destroy (pthread_attr_t *__attr) __attribute__ ((__nothrow__)); extern int pthread_attr_setdetachstate (pthread_attr_t *__attr, int __detachstate) __attribute__ ((__nothrow__)); extern int pthread_attr_getdetachstate (__const pthread_attr_t *__attr, int *__detachstate) __attribute__ ((__nothrow__)); extern int pthread_attr_setschedparam (pthread_attr_t *__restrict __attr, __const struct sched_param *__restrict __param) __attribute__ ((__nothrow__)); extern int pthread_attr_getschedparam (__const pthread_attr_t *__restrict __attr, struct sched_param *__restrict __param) __attribute__ ((__nothrow__)); extern int pthread_attr_setschedpolicy (pthread_attr_t *__attr, int __policy) __attribute__ ((__nothrow__)); extern int pthread_attr_getschedpolicy (__const pthread_attr_t *__restrict __attr, int *__restrict __policy) __attribute__ ((__nothrow__)); extern int pthread_attr_setinheritsched (pthread_attr_t *__attr, int __inherit) __attribute__ ((__nothrow__)); extern int pthread_attr_getinheritsched (__const pthread_attr_t *__restrict __attr, int *__restrict __inherit) __attribute__ ((__nothrow__)); extern int pthread_attr_setscope (pthread_attr_t *__attr, int __scope) __attribute__ ((__nothrow__)); extern int pthread_attr_getscope (__const pthread_attr_t *__restrict __attr, int *__restrict __scope) __attribute__ ((__nothrow__)); extern int pthread_attr_setguardsize (pthread_attr_t *__attr, size_t __guardsize) __attribute__ ((__nothrow__)); extern int pthread_attr_getguardsize (__const pthread_attr_t *__restrict __attr, size_t *__restrict __guardsize) __attribute__ ((__nothrow__)); extern int pthread_attr_setstackaddr (pthread_attr_t *__attr, void *__stackaddr) __attribute__ ((__nothrow__)); extern int pthread_attr_getstackaddr (__const pthread_attr_t *__restrict __attr, void **__restrict __stackaddr) __attribute__ ((__nothrow__)); extern int pthread_attr_setstack (pthread_attr_t *__attr, void *__stackaddr, size_t __stacksize) __attribute__ ((__nothrow__)); extern int pthread_attr_getstack (__const pthread_attr_t *__restrict __attr, void **__restrict __stackaddr, size_t *__restrict __stacksize) __attribute__ ((__nothrow__)); extern int pthread_attr_setstacksize (pthread_attr_t *__attr, size_t __stacksize) __attribute__ ((__nothrow__)); extern int pthread_attr_getstacksize (__const pthread_attr_t *__restrict __attr, size_t *__restrict __stacksize) __attribute__ ((__nothrow__)); extern int pthread_getattr_np (pthread_t __th, pthread_attr_t *__attr) __attribute__ ((__nothrow__)); extern int pthread_setschedparam (pthread_t __target_thread, int __policy, __const struct sched_param *__param) __attribute__ ((__nothrow__)); extern int pthread_getschedparam (pthread_t __target_thread, int *__restrict __policy, struct sched_param *__restrict __param) __attribute__ ((__nothrow__)); extern int pthread_getconcurrency (void) __attribute__ ((__nothrow__)); extern int pthread_setconcurrency (int __level) __attribute__ ((__nothrow__)); extern int pthread_yield (void) __attribute__ ((__nothrow__)); extern int pthread_mutex_init (pthread_mutex_t *__restrict __mutex, __const pthread_mutexattr_t *__restrict __mutex_attr) __attribute__ ((__nothrow__)); extern int pthread_mutex_destroy (pthread_mutex_t *__mutex) __attribute__ ((__nothrow__)); extern int pthread_mutex_trylock (pthread_mutex_t *__mutex) __attribute__ ((__nothrow__)); extern int pthread_mutex_lock (pthread_mutex_t *__mutex) __attribute__ ((__nothrow__)); extern int pthread_mutex_timedlock (pthread_mutex_t *__restrict __mutex, __const struct timespec *__restrict __abstime) __attribute__ ((__nothrow__)); extern int pthread_mutex_unlock (pthread_mutex_t *__mutex) __attribute__ ((__nothrow__)); extern int pthread_mutexattr_init (pthread_mutexattr_t *__attr) __attribute__ ((__nothrow__)); extern int pthread_mutexattr_destroy (pthread_mutexattr_t *__attr) __attribute__ ((__nothrow__)); extern int pthread_mutexattr_getpshared (__const pthread_mutexattr_t * __restrict __attr, int *__restrict __pshared) __attribute__ ((__nothrow__)); extern int pthread_mutexattr_setpshared (pthread_mutexattr_t *__attr, int __pshared) __attribute__ ((__nothrow__)); extern int pthread_mutexattr_settype (pthread_mutexattr_t *__attr, int __kind) __attribute__ ((__nothrow__)); extern int pthread_mutexattr_gettype (__const pthread_mutexattr_t *__restrict __attr, int *__restrict __kind) __attribute__ ((__nothrow__)); extern int pthread_cond_init (pthread_cond_t *__restrict __cond, __const pthread_condattr_t *__restrict __cond_attr) __attribute__ ((__nothrow__)); extern int pthread_cond_destroy (pthread_cond_t *__cond) __attribute__ ((__nothrow__)); extern int pthread_cond_signal (pthread_cond_t *__cond) __attribute__ ((__nothrow__)); extern int pthread_cond_broadcast (pthread_cond_t *__cond) __attribute__ ((__nothrow__)); extern int pthread_cond_wait (pthread_cond_t *__restrict __cond, pthread_mutex_t *__restrict __mutex); extern int pthread_cond_timedwait (pthread_cond_t *__restrict __cond, pthread_mutex_t *__restrict __mutex, __const struct timespec *__restrict __abstime); extern int pthread_condattr_init (pthread_condattr_t *__attr) __attribute__ ((__nothrow__)); extern int pthread_condattr_destroy (pthread_condattr_t *__attr) __attribute__ ((__nothrow__)); extern int pthread_condattr_getpshared (__const pthread_condattr_t * __restrict __attr, int *__restrict __pshared) __attribute__ ((__nothrow__)); extern int pthread_condattr_setpshared (pthread_condattr_t *__attr, int __pshared) __attribute__ ((__nothrow__)); extern int pthread_rwlock_init (pthread_rwlock_t *__restrict __rwlock, __const pthread_rwlockattr_t *__restrict __attr) __attribute__ ((__nothrow__)); extern int pthread_rwlock_destroy (pthread_rwlock_t *__rwlock) __attribute__ ((__nothrow__)); extern int pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock) __attribute__ ((__nothrow__)); extern int pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock) __attribute__ ((__nothrow__)); extern int pthread_rwlock_timedrdlock (pthread_rwlock_t *__restrict __rwlock, __const struct timespec *__restrict __abstime) __attribute__ ((__nothrow__)); extern int pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock) __attribute__ ((__nothrow__)); extern int pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock) __attribute__ ((__nothrow__)); extern int pthread_rwlock_timedwrlock (pthread_rwlock_t *__restrict __rwlock, __const struct timespec *__restrict __abstime) __attribute__ ((__nothrow__)); extern int pthread_rwlock_unlock (pthread_rwlock_t *__rwlock) __attribute__ ((__nothrow__)); extern int pthread_rwlockattr_init (pthread_rwlockattr_t *__attr) __attribute__ ((__nothrow__)); extern int pthread_rwlockattr_destroy (pthread_rwlockattr_t *__attr) __attribute__ ((__nothrow__)); extern int pthread_rwlockattr_getpshared (__const pthread_rwlockattr_t * __restrict __attr, int *__restrict __pshared) __attribute__ ((__nothrow__)); extern int pthread_rwlockattr_setpshared (pthread_rwlockattr_t *__attr, int __pshared) __attribute__ ((__nothrow__)); extern int pthread_rwlockattr_getkind_np (__const pthread_rwlockattr_t *__attr, int *__pref) __attribute__ ((__nothrow__)); extern int pthread_rwlockattr_setkind_np (pthread_rwlockattr_t *__attr, int __pref) __attribute__ ((__nothrow__)); # 510 "/usr/include/pthread.h" 3 4 extern int pthread_spin_init (pthread_spinlock_t *__lock, int __pshared) __attribute__ ((__nothrow__)); extern int pthread_spin_destroy (pthread_spinlock_t *__lock) __attribute__ ((__nothrow__)); extern int pthread_spin_lock (pthread_spinlock_t *__lock) __attribute__ ((__nothrow__)); extern int pthread_spin_trylock (pthread_spinlock_t *__lock) __attribute__ ((__nothrow__)); extern int pthread_spin_unlock (pthread_spinlock_t *__lock) __attribute__ ((__nothrow__)); extern int pthread_barrier_init (pthread_barrier_t *__restrict __barrier, __const pthread_barrierattr_t *__restrict __attr, unsigned int __count) __attribute__ ((__nothrow__)); extern int pthread_barrier_destroy (pthread_barrier_t *__barrier) __attribute__ ((__nothrow__)); extern int pthread_barrierattr_init (pthread_barrierattr_t *__attr) __attribute__ ((__nothrow__)); extern int pthread_barrierattr_destroy (pthread_barrierattr_t *__attr) __attribute__ ((__nothrow__)); extern int pthread_barrierattr_getpshared (__const pthread_barrierattr_t * __restrict __attr, int *__restrict __pshared) __attribute__ ((__nothrow__)); extern int pthread_barrierattr_setpshared (pthread_barrierattr_t *__attr, int __pshared) __attribute__ ((__nothrow__)); extern int pthread_barrier_wait (pthread_barrier_t *__barrier) __attribute__ ((__nothrow__)); # 557 "/usr/include/pthread.h" 3 4 extern int pthread_key_create (pthread_key_t *__key, void (*__destr_function) (void *)) __attribute__ ((__nothrow__)); extern int pthread_key_delete (pthread_key_t __key) __attribute__ ((__nothrow__)); extern int pthread_setspecific (pthread_key_t __key, __const void *__pointer) __attribute__ ((__nothrow__)); extern void *pthread_getspecific (pthread_key_t __key) __attribute__ ((__nothrow__)); # 580 "/usr/include/pthread.h" 3 4 extern int pthread_once (pthread_once_t *__once_control, void (*__init_routine) (void)); extern int pthread_setcancelstate (int __state, int *__oldstate); extern int pthread_setcanceltype (int __type, int *__oldtype); extern int pthread_cancel (pthread_t __cancelthread); extern void pthread_testcancel (void); # 610 "/usr/include/pthread.h" 3 4 #define pthread_cleanup_push(routine,arg) { struct _pthread_cleanup_buffer _buffer; _pthread_cleanup_push (&_buffer, (routine), (arg)); extern void _pthread_cleanup_push (struct _pthread_cleanup_buffer *__buffer, void (*__routine) (void *), void *__arg) __attribute__ ((__nothrow__)); #define pthread_cleanup_pop(execute) _pthread_cleanup_pop (&_buffer, (execute)); } extern void _pthread_cleanup_pop (struct _pthread_cleanup_buffer *__buffer, int __execute) __attribute__ ((__nothrow__)); #define pthread_cleanup_push_defer_np(routine,arg) { struct _pthread_cleanup_buffer _buffer; _pthread_cleanup_push_defer (&_buffer, (routine), (arg)); extern void _pthread_cleanup_push_defer (struct _pthread_cleanup_buffer *__buffer, void (*__routine) (void *), void *__arg) __attribute__ ((__nothrow__)); #define pthread_cleanup_pop_restore_np(execute) _pthread_cleanup_pop_restore (&_buffer, (execute)); } extern void _pthread_cleanup_pop_restore (struct _pthread_cleanup_buffer *__buffer, int __execute) __attribute__ ((__nothrow__)); extern int pthread_getcpuclockid (pthread_t __thread_id, __clockid_t *__clock_id) __attribute__ ((__nothrow__)); # 675 "/usr/include/pthread.h" 3 4 extern int pthread_atfork (void (*__prepare) (void), void (*__parent) (void), void (*__child) (void)) __attribute__ ((__nothrow__)); extern void pthread_kill_other_threads_np (void) __attribute__ ((__nothrow__)); # 35 "../../lib/direct/util.h" 2 #define MIN(a,b) ((a) < (b) ? (a) : (b)) #define MAX(a,b) ((a) > (b) ? (a) : (b)) #define SIGN(x) (((x) < 0) ? -1 : (((x) > 0) ? 1 : 0)) #define ABS(x) ((x) > 0 ? (x) : -(x)) #define CLAMP(x,min,max) ((x) < (min) ? (min) : (x) > (max) ? (max) : (x)) #define D_FLAGS_SET(flags,f) do { (flags) |= (f); } while (0) #define D_FLAGS_CLEAR(flags,f) do { (flags) &= ~(f); } while (0) #define D_FLAGS_IS_SET(flags,f) (((flags) & (f)) != 0) #define D_FLAGS_ARE_SET(flags,f) (((flags) & (f)) == (f)) #define D_FLAGS_ARE_IN(flags,f) (((flags) & ~(f)) == 0) #define D_FLAGS_INVALID(flags,f) (((flags) & ~(f)) != 0) #define D_FLAGS_ASSERT(flags,f) D_ASSERT( D_FLAGS_ARE_IN(flags,f) ) #define D_ARRAY_SIZE(array) ((int)(sizeof(array) / sizeof((array)[0]))) #define D_CONST_FUNC __attribute__((const)) # 78 "../../lib/direct/util.h" DirectResult errno2result( int erno ); const char *DirectResultString( DirectResult result ); int direct_try_open( const char *name1, const char *name2, int flags, bool error_msg ); void direct_trim( char **s ); static __inline__ int direct_util_count_bits( unsigned int mask ) { register int ret = 0; while (mask) { ret += mask & 1; mask >>= 1; } return ret; } static __inline__ int direct_util_align( int value, int alignment ) { if (alignment > 1) { int tail = value % alignment; if (tail) value += alignment - tail; } return value; } int direct_util_recursive_pthread_mutex_init( pthread_mutex_t *mutex ); # 135 "../../lib/direct/util.h" static __inline__ int D_IFLOOR(float f) { int ai, bi; double af, bf; af = (3 << 22) + 0.5 + (double)f; bf = (3 << 22) + 0.5 - (double)f; __asm__ __volatile__ ("fstps %0" : "=m" (ai) : "t" (af) : "st"); __asm__ __volatile__ ("fstps %0" : "=m" (bi) : "t" (bf) : "st"); # 157 "../../lib/direct/util.h" return (ai - bi) >> 1; } # 169 "../../lib/direct/util.h" static __inline__ int D_ICEIL(float f) { int ai, bi; double af, bf; af = (3 << 22) + 0.5 + (double)f; bf = (3 << 22) + 0.5 - (double)f; __asm__ __volatile__ ("fstps %0" : "=m" (ai) : "t" (af) : "st"); __asm__ __volatile__ ("fstps %0" : "=m" (bi) : "t" (bf) : "st"); # 191 "../../lib/direct/util.h" return (ai - bi + 1) >> 1; } static __inline__ int direct_log2( int val ) { register int ret = 0; while (val >> ++ret); if ((1 << --ret) < val) ret++; return ret; } # 42 "../../lib/direct/debug.h" 2 typedef struct { unsigned int age; bool enabled; bool registered; const char *name; const char *description; } DirectDebugDomain; void direct_debug_config_domain( const char *name, bool enable ); void direct_debug( const char *format, ... ) __attribute__((__format__ (__printf__, 1, 1 +1))); void direct_debug_at( DirectDebugDomain *domain, const char *format, ... ) __attribute__((__format__ (__printf__, 2, 2 +1))); void direct_debug_enter( DirectDebugDomain *domain, const char *func, const char *file, int line, const char *format, ... ) __attribute__((__format__ (__printf__, 5, 5 +1))); void direct_debug_exit( DirectDebugDomain *domain, const char *func, const char *file, int line, const char *format, ... ) __attribute__((__format__ (__printf__, 5, 5 +1))); void direct_break( const char *func, const char *file, int line, const char *format, ... ) __attribute__((__format__ (__printf__, 4, 4 +1))); void direct_assertion( const char *exp, const char *func, const char *file, int line ); void direct_assumption( const char *exp, const char *func, const char *file, int line ); # 101 "../../lib/direct/debug.h" #define D_DEBUG_ENABLED (1) #define D_HEAVYDEBUG(x...) #define D_DEBUG_DOMAIN(identifier,name,description) static DirectDebugDomain identifier = { 0, false, false, name, description } #define D_DEBUG(x...) do { if (!direct_config || direct_config->debug) direct_debug( x ); } while (0) #define D_DEBUG_AT(d,x...) do { direct_debug_at( &d, x ); } while (0) #define D_DEBUG_ENTER(d,x...) do { direct_debug_enter( &d, __FUNCTION__, __FILE__, __LINE__, x ); } while (0) #define D_DEBUG_EXIT(d,x...) do { direct_debug_exit( &d, __FUNCTION__, __FILE__, __LINE__, x ); } while (0) #define D_ASSERT(exp) do { if (!(exp)) direct_assertion( #exp, __FUNCTION__, __FILE__, __LINE__ ); } while (0) #define D_ASSUME(exp) do { if (!(exp)) direct_assumption( #exp, __FUNCTION__, __FILE__, __LINE__ ); } while (0) #define D_BREAK(x...) do { direct_break( __FUNCTION__, __FILE__, __LINE__, x ); } while (0) # 174 "../../lib/direct/debug.h" #define D_MAGIC(spell) ( (((spell)[sizeof(spell)*8/9] << 24) | ((spell)[sizeof(spell)*7/9] << 16) | ((spell)[sizeof(spell)*6/9] << 8) | ((spell)[sizeof(spell)*5/9] )) ^ (((spell)[sizeof(spell)*4/9] << 24) | ((spell)[sizeof(spell)*3/9] << 16) | ((spell)[sizeof(spell)*2/9] << 8) | ((spell)[sizeof(spell)*1/9] )) ) # 184 "../../lib/direct/debug.h" #define D_MAGIC_SET(o,m) do { D_ASSERT( (o) != NULL ); D_ASSUME( (o)->magic != D_MAGIC(#m) ); (o)->magic = D_MAGIC(#m); } while (0) #define D_MAGIC_SET_ONLY(o,m) do { D_ASSERT( (o) != NULL ); (o)->magic = D_MAGIC(#m); } while (0) #define D_MAGIC_ASSERT(o,m) do { D_ASSERT( (o) != NULL ); D_ASSERT( (o)->magic == D_MAGIC(#m) ); } while (0) #define D_MAGIC_ASSUME(o,m) do { D_ASSUME( (o) != NULL ); if (o) D_ASSUME( (o)->magic == D_MAGIC(#m) ); } while (0) #define D_MAGIC_ASSERT_IF(o,m) do { if (o) D_ASSERT( (o)->magic == D_MAGIC(#m) ); } while (0) #define D_MAGIC_CLEAR(o) do { D_ASSERT( (o) != NULL ); D_ASSUME( (o)->magic != 0 ); (o)->magic = 0; } while (0) # 41 "debug.c" 2 # 1 "../../lib/direct/list.h" 1 # 29 "../../lib/direct/list.h" #define __DIRECT__LIST_H__ struct __D_DirectLink { int magic; DirectLink *next; DirectLink *prev; }; static __inline__ void direct_list_prepend( DirectLink **list, DirectLink *link ) { DirectLink *first = *list; link->next = first; if (first) { do { do { if (!((first) != ((void *)0))) direct_assertion( "(first) != NULL", __FUNCTION__, "../../lib/direct/list.h", 51 ); } while (0); do { if (!((first)->magic == ( ((("DirectLink")[sizeof("DirectLink")*8/9] << 24) | (("DirectLink")[sizeof("DirectLink")*7/9] << 16) | (("DirectLink")[sizeof("DirectLink")*6/9] << 8) | (("DirectLink")[sizeof("DirectLink")*5/9] )) ^ ((("DirectLink")[sizeof("DirectLink")*4/9] << 24) | (("DirectLink")[sizeof("DirectLink")*3/9] << 16) | (("DirectLink")[sizeof("DirectLink")*2/9] << 8) | (("DirectLink")[sizeof("DirectLink")*1/9] )) ))) direct_assertion( "(first)->magic == D_MAGIC(\"DirectLink\")", __FUNCTION__, "../../lib/direct/list.h", 51 ); } while (0); } while (0); link->prev = first->prev; first->prev = link; } else link->prev = link; *list = link; do { do { if (!((link) != ((void *)0))) direct_assertion( "(link) != NULL", __FUNCTION__, "../../lib/direct/list.h", 62 ); } while (0); do { if (!((link)->magic != ( ((("DirectLink")[sizeof("DirectLink")*8/9] << 24) | (("DirectLink")[sizeof("DirectLink")*7/9] << 16) | (("DirectLink")[sizeof("DirectLink")*6/9] << 8) | (("DirectLink")[sizeof("DirectLink")*5/9] )) ^ ((("DirectLink")[sizeof("DirectLink")*4/9] << 24) | (("DirectLink")[sizeof("DirectLink")*3/9] << 16) | (("DirectLink")[sizeof("DirectLink")*2/9] << 8) | (("DirectLink")[sizeof("DirectLink")*1/9] )) ))) direct_assumption( "(link)->magic != D_MAGIC(\"DirectLink\")", __FUNCTION__, "../../lib/direct/list.h", 62 ); } while (0); (link)->magic = ( ((("DirectLink")[sizeof("DirectLink")*8/9] << 24) | (("DirectLink")[sizeof("DirectLink")*7/9] << 16) | (("DirectLink")[sizeof("DirectLink")*6/9] << 8) | (("DirectLink")[sizeof("DirectLink")*5/9] )) ^ ((("DirectLink")[sizeof("DirectLink")*4/9] << 24) | (("DirectLink")[sizeof("DirectLink")*3/9] << 16) | (("DirectLink")[sizeof("DirectLink")*2/9] << 8) | (("DirectLink")[sizeof("DirectLink")*1/9] )) ); } while (0); } static __inline__ void direct_list_append( DirectLink **list, DirectLink *link ) { DirectLink *first = *list; link->next = ((void *)0); if (first) { DirectLink *last = first->prev; do { do { if (!((first) != ((void *)0))) direct_assertion( "(first) != NULL", __FUNCTION__, "../../lib/direct/list.h", 75 ); } while (0); do { if (!((first)->magic == ( ((("DirectLink")[sizeof("DirectLink")*8/9] << 24) | (("DirectLink")[sizeof("DirectLink")*7/9] << 16) | (("DirectLink")[sizeof("DirectLink")*6/9] << 8) | (("DirectLink")[sizeof("DirectLink")*5/9] )) ^ ((("DirectLink")[sizeof("DirectLink")*4/9] << 24) | (("DirectLink")[sizeof("DirectLink")*3/9] << 16) | (("DirectLink")[sizeof("DirectLink")*2/9] << 8) | (("DirectLink")[sizeof("DirectLink")*1/9] )) ))) direct_assertion( "(first)->magic == D_MAGIC(\"DirectLink\")", __FUNCTION__, "../../lib/direct/list.h", 75 ); } while (0); } while (0); do { do { if (!((last) != ((void *)0))) direct_assertion( "(last) != NULL", __FUNCTION__, "../../lib/direct/list.h", 76 ); } while (0); do { if (!((last)->magic == ( ((("DirectLink")[sizeof("DirectLink")*8/9] << 24) | (("DirectLink")[sizeof("DirectLink")*7/9] << 16) | (("DirectLink")[sizeof("DirectLink")*6/9] << 8) | (("DirectLink")[sizeof("DirectLink")*5/9] )) ^ ((("DirectLink")[sizeof("DirectLink")*4/9] << 24) | (("DirectLink")[sizeof("DirectLink")*3/9] << 16) | (("DirectLink")[sizeof("DirectLink")*2/9] << 8) | (("DirectLink")[sizeof("DirectLink")*1/9] )) ))) direct_assertion( "(last)->magic == D_MAGIC(\"DirectLink\")", __FUNCTION__, "../../lib/direct/list.h", 76 ); } while (0); } while (0); link->prev = last; last->next = first->prev = link; } else *list = link->prev = link; do { do { if (!((link) != ((void *)0))) direct_assertion( "(link) != NULL", __FUNCTION__, "../../lib/direct/list.h", 85 ); } while (0); do { if (!((link)->magic != ( ((("DirectLink")[sizeof("DirectLink")*8/9] << 24) | (("DirectLink")[sizeof("DirectLink")*7/9] << 16) | (("DirectLink")[sizeof("DirectLink")*6/9] << 8) | (("DirectLink")[sizeof("DirectLink")*5/9] )) ^ ((("DirectLink")[sizeof("DirectLink")*4/9] << 24) | (("DirectLink")[sizeof("DirectLink")*3/9] << 16) | (("DirectLink")[sizeof("DirectLink")*2/9] << 8) | (("DirectLink")[sizeof("DirectLink")*1/9] )) ))) direct_assumption( "(link)->magic != D_MAGIC(\"DirectLink\")", __FUNCTION__, "../../lib/direct/list.h", 85 ); } while (0); (link)->magic = ( ((("DirectLink")[sizeof("DirectLink")*8/9] << 24) | (("DirectLink")[sizeof("DirectLink")*7/9] << 16) | (("DirectLink")[sizeof("DirectLink")*6/9] << 8) | (("DirectLink")[sizeof("DirectLink")*5/9] )) ^ ((("DirectLink")[sizeof("DirectLink")*4/9] << 24) | (("DirectLink")[sizeof("DirectLink")*3/9] << 16) | (("DirectLink")[sizeof("DirectLink")*2/9] << 8) | (("DirectLink")[sizeof("DirectLink")*1/9] )) ); } while (0); } static __inline__ bool direct_list_contains_element_EXPENSIVE( DirectLink *list, DirectLink *link ) { do { if (list) do { if (!((list)->magic == ( ((("DirectLink")[sizeof("DirectLink")*8/9] << 24) | (("DirectLink")[sizeof("DirectLink")*7/9] << 16) | (("DirectLink")[sizeof("DirectLink")*6/9] << 8) | (("DirectLink")[sizeof("DirectLink")*5/9] )) ^ ((("DirectLink")[sizeof("DirectLink")*4/9] << 24) | (("DirectLink")[sizeof("DirectLink")*3/9] << 16) | (("DirectLink")[sizeof("DirectLink")*2/9] << 8) | (("DirectLink")[sizeof("DirectLink")*1/9] )) ))) direct_assertion( "(list)->magic == D_MAGIC(\"DirectLink\")", __FUNCTION__, "../../lib/direct/list.h", 91 ); } while (0); } while (0); if (!link->prev && !link->next) return (0); while (list) { if (list == link) return (!(0)); list = list->next; } return (0); } static __inline__ int direct_list_count_elements_EXPENSIVE( DirectLink *list ) { int count = 0; while (list) { do { do { if (!((list) != ((void *)0))) direct_assertion( "(list) != NULL", __FUNCTION__, "../../lib/direct/list.h", 114 ); } while (0); do { if (!((list)->magic == ( ((("DirectLink")[sizeof("DirectLink")*8/9] << 24) | (("DirectLink")[sizeof("DirectLink")*7/9] << 16) | (("DirectLink")[sizeof("DirectLink")*6/9] << 8) | (("DirectLink")[sizeof("DirectLink")*5/9] )) ^ ((("DirectLink")[sizeof("DirectLink")*4/9] << 24) | (("DirectLink")[sizeof("DirectLink")*3/9] << 16) | (("DirectLink")[sizeof("DirectLink")*2/9] << 8) | (("DirectLink")[sizeof("DirectLink")*1/9] )) ))) direct_assertion( "(list)->magic == D_MAGIC(\"DirectLink\")", __FUNCTION__, "../../lib/direct/list.h", 114 ); } while (0); } while (0); count++; list = list->next; } return count; } static __inline__ void direct_list_remove( DirectLink **list, DirectLink *link ) { DirectLink *next; DirectLink *prev; do { if (!(direct_list_contains_element_EXPENSIVE( *list, link ))) direct_assertion( "direct_list_contains_element_EXPENSIVE( *list, link )", __FUNCTION__, "../../lib/direct/list.h", 130 ); } while (0); do { do { if (!((*list) != ((void *)0))) direct_assertion( "(*list) != NULL", __FUNCTION__, "../../lib/direct/list.h", 132 ); } while (0); do { if (!((*list)->magic == ( ((("DirectLink")[sizeof("DirectLink")*8/9] << 24) | (("DirectLink")[sizeof("DirectLink")*7/9] << 16) | (("DirectLink")[sizeof("DirectLink")*6/9] << 8) | (("DirectLink")[sizeof("DirectLink")*5/9] )) ^ ((("DirectLink")[sizeof("DirectLink")*4/9] << 24) | (("DirectLink")[sizeof("DirectLink")*3/9] << 16) | (("DirectLink")[sizeof("DirectLink")*2/9] << 8) | (("DirectLink")[sizeof("DirectLink")*1/9] )) ))) direct_assertion( "(*list)->magic == D_MAGIC(\"DirectLink\")", __FUNCTION__, "../../lib/direct/list.h", 132 ); } while (0); } while (0); do { do { if (!((link) != ((void *)0))) direct_assertion( "(link) != NULL", __FUNCTION__, "../../lib/direct/list.h", 133 ); } while (0); do { if (!((link)->magic == ( ((("DirectLink")[sizeof("DirectLink")*8/9] << 24) | (("DirectLink")[sizeof("DirectLink")*7/9] << 16) | (("DirectLink")[sizeof("DirectLink")*6/9] << 8) | (("DirectLink")[sizeof("DirectLink")*5/9] )) ^ ((("DirectLink")[sizeof("DirectLink")*4/9] << 24) | (("DirectLink")[sizeof("DirectLink")*3/9] << 16) | (("DirectLink")[sizeof("DirectLink")*2/9] << 8) | (("DirectLink")[sizeof("DirectLink")*1/9] )) ))) direct_assertion( "(link)->magic == D_MAGIC(\"DirectLink\")", __FUNCTION__, "../../lib/direct/list.h", 133 ); } while (0); } while (0); next = link->next; prev = link->prev; if (next) { do { do { if (!((next) != ((void *)0))) direct_assertion( "(next) != NULL", __FUNCTION__, "../../lib/direct/list.h", 139 ); } while (0); do { if (!((next)->magic == ( ((("DirectLink")[sizeof("DirectLink")*8/9] << 24) | (("DirectLink")[sizeof("DirectLink")*7/9] << 16) | (("DirectLink")[sizeof("DirectLink")*6/9] << 8) | (("DirectLink")[sizeof("DirectLink")*5/9] )) ^ ((("DirectLink")[sizeof("DirectLink")*4/9] << 24) | (("DirectLink")[sizeof("DirectLink")*3/9] << 16) | (("DirectLink")[sizeof("DirectLink")*2/9] << 8) | (("DirectLink")[sizeof("DirectLink")*1/9] )) ))) direct_assertion( "(next)->magic == D_MAGIC(\"DirectLink\")", __FUNCTION__, "../../lib/direct/list.h", 139 ); } while (0); } while (0); next->prev = prev; } else (*list)->prev = prev; if (link == *list) *list = next; else { do { do { if (!((prev) != ((void *)0))) direct_assertion( "(prev) != NULL", __FUNCTION__, "../../lib/direct/list.h", 149 ); } while (0); do { if (!((prev)->magic == ( ((("DirectLink")[sizeof("DirectLink")*8/9] << 24) | (("DirectLink")[sizeof("DirectLink")*7/9] << 16) | (("DirectLink")[sizeof("DirectLink")*6/9] << 8) | (("DirectLink")[sizeof("DirectLink")*5/9] )) ^ ((("DirectLink")[sizeof("DirectLink")*4/9] << 24) | (("DirectLink")[sizeof("DirectLink")*3/9] << 16) | (("DirectLink")[sizeof("DirectLink")*2/9] << 8) | (("DirectLink")[sizeof("DirectLink")*1/9] )) ))) direct_assertion( "(prev)->magic == D_MAGIC(\"DirectLink\")", __FUNCTION__, "../../lib/direct/list.h", 149 ); } while (0); } while (0); prev->next = next; } link->next = link->prev = ((void *)0); do { do { if (!((link) != ((void *)0))) direct_assertion( "(link) != NULL", __FUNCTION__, "../../lib/direct/list.h", 156 ); } while (0); do { if (!((link)->magic != 0)) direct_assumption( "(link)->magic != 0", __FUNCTION__, "../../lib/direct/list.h", 156 ); } while (0); (link)->magic = 0; } while (0); } static __inline__ bool direct_list_check_link( const DirectLink *link ) { do { if (link) do { if (!((link)->magic == ( ((("DirectLink")[sizeof("DirectLink")*8/9] << 24) | (("DirectLink")[sizeof("DirectLink")*7/9] << 16) | (("DirectLink")[sizeof("DirectLink")*6/9] << 8) | (("DirectLink")[sizeof("DirectLink")*5/9] )) ^ ((("DirectLink")[sizeof("DirectLink")*4/9] << 24) | (("DirectLink")[sizeof("DirectLink")*3/9] << 16) | (("DirectLink")[sizeof("DirectLink")*2/9] << 8) | (("DirectLink")[sizeof("DirectLink")*1/9] )) ))) direct_assertion( "(link)->magic == D_MAGIC(\"DirectLink\")", __FUNCTION__, "../../lib/direct/list.h", 162 ); } while (0); } while (0); return link != ((void *)0); } #define direct_list_foreach(elem,list) for (elem = (typeof(elem))(list); direct_list_check_link( (DirectLink*)(elem) ); elem = (typeof(elem))(((DirectLink*)(elem))->next)) #define direct_list_foreach_safe(elem,temp,list) for (elem = (typeof(elem))(list), temp = ((typeof(temp))(elem) ? (typeof(temp))(((DirectLink*)(elem))->next) : NULL); direct_list_check_link( (DirectLink*)(elem) ); elem = (typeof(elem))(temp), temp = ((typeof(temp))(elem) ? (typeof(temp))(((DirectLink*)(elem))->next) : NULL)) # 42 "debug.c" 2 # 1 "../../lib/direct/thread.h" 1 # 29 "../../lib/direct/thread.h" #define __DIRECT__THREAD_H__ typedef enum { DTT_DEFAULT = 0, DTT_CLEANUP = -5, DTT_INPUT = -10, DTT_OUTPUT = -12, DTT_MESSAGING = -15, DTT_CRITICAL = -20 } DirectThreadType; typedef void * (*DirectThreadMainFunc)( DirectThread *thread, void *arg ); typedef void (*DirectThreadInitFunc)( DirectThread *thread, void *arg ); DirectThreadInitHandler *direct_thread_add_init_handler ( DirectThreadInitFunc func, void *arg ); void direct_thread_remove_init_handler( DirectThreadInitHandler *handler ); DirectThread *direct_thread_create ( DirectThreadType thread_type, DirectThreadMainFunc thread_main, void *arg, const char *name ); DirectThread *direct_thread_self (); const char *direct_thread_get_name ( DirectThread *thread ); const char *direct_thread_self_name (); void direct_thread_set_name ( const char *name ); void direct_thread_cancel ( DirectThread *thread ); bool direct_thread_is_canceled( DirectThread *thread ); void direct_thread_testcancel ( DirectThread *thread ); void direct_thread_join ( DirectThread *thread ); bool direct_thread_is_joined ( DirectThread *thread ); void direct_thread_destroy ( DirectThread *thread ); # 44 "debug.c" 2 # 1 "../../lib/direct/trace.h" 1 # 29 "../../lib/direct/trace.h" #define __DIRECT__TRACE_H__ void direct_trace_print_stack( DirectTraceBuffer *buffer ); void direct_trace_print_stacks(); int direct_trace_debug_indent(); DirectTraceBuffer *direct_trace_copy_buffer( DirectTraceBuffer *buffer ); void direct_trace_free_buffer( DirectTraceBuffer *buffer ); # 45 "debug.c" 2 typedef struct { DirectLink link; char *name; bool enabled; } DebugDomainEntry; static pthread_mutex_t domains_lock = {0, 0, 0, PTHREAD_MUTEX_TIMED_NP, { 0, 0 }}; static unsigned int domains_age = 1; static DirectLink *domains = ((void *)0); __attribute__((no_instrument_function)) static __inline__ DebugDomainEntry * lookup_domain( const char *name, bool sub ) { DebugDomainEntry *entry; for (entry = (typeof(entry))(domains); direct_list_check_link( (DirectLink*)(entry) ); entry = (typeof(entry))(((DirectLink*)(entry))->next)) { if (! strcasecmp( entry->name, name )) return entry; } if (sub && strchr(name, '/')) { int passed_name_len = strlen( name ); for (entry = (typeof(entry))(domains); direct_list_check_link( (DirectLink*)(entry) ); entry = (typeof(entry))(((DirectLink*)(entry))->next)) { int entry_len = strlen( entry->name ); if ((passed_name_len > entry_len) && (name[entry_len] == '/') && (! strncasecmp( entry->name, name, entry_len))) { return entry; } } } return ((void *)0); } __attribute__((no_instrument_function)) static __inline__ bool check_domain( DirectDebugDomain *domain ) { if (domain->age != domains_age) { DebugDomainEntry *entry = lookup_domain( domain->name, (!(0)) ); domain->age = domains_age; if (entry) { domain->registered = (!(0)); domain->enabled = entry->enabled; } } return domain->registered ? domain->enabled : direct_config->debug; } void direct_debug_config_domain( const char *name, bool enable ) { DebugDomainEntry *entry; pthread_mutex_lock( &domains_lock ); entry = lookup_domain( name, (0) ); if (!entry) { entry = calloc( 1, sizeof(DebugDomainEntry) ); if (!entry) { do { if (!direct_config->quiet) direct_messages_warn( __FUNCTION__, "debug.c", 127, "out of memory" ); } while (0); pthread_mutex_unlock( &domains_lock ); return; } entry->name = strdup( name ); direct_list_prepend( &domains, &entry->link ); } entry->enabled = enable; ++domains_age || domains_age++; pthread_mutex_unlock( &domains_lock ); } __attribute__((no_instrument_function)) void direct_debug( const char *format, ... ) { char buf[512]; long long millis = direct_clock_get_millis(); const char *name = direct_thread_self_name(); va_list ap; __builtin_va_start(ap,format); vsnprintf( buf, sizeof(buf), format, ap ); __builtin_va_end(ap); direct_log_printf( ((void *)0), "(-) [%-15s %3lld.%03lld] (%5d) %s", name ? name : " NO NAME ", millis / 1000LL, millis % 1000LL, direct_gettid(), buf ); } __attribute__((no_instrument_function)) void direct_debug_at( DirectDebugDomain *domain, const char *format, ... ) { pthread_mutex_lock( &domains_lock ); if (check_domain( domain )) { int len; char dom[48]; char fmt[64]; char buf[512]; long long millis = direct_clock_get_millis(); const char *name = direct_thread_self_name(); va_list ap; __builtin_va_start(ap,format); vsnprintf( buf, sizeof(buf), format, ap ); __builtin_va_end(ap); len = snprintf( dom, sizeof(dom), "%s:", domain->name ); if (len < 18) len = 18; else len = 28; len += direct_trace_debug_indent() * 4; snprintf( fmt, sizeof(fmt), "(-) [%%-15s %%3lld.%%03lld] (%%5d) %%-%ds %%s", len ); direct_log_printf( ((void *)0), fmt, name ? name : " NO NAME ", millis / 1000LL, millis % 1000LL, direct_gettid(), dom, buf ); } pthread_mutex_unlock( &domains_lock ); } __attribute__((no_instrument_function)) void direct_debug_enter( DirectDebugDomain *domain, const char *func, const char *file, int line, const char *format, ... ) { pthread_mutex_lock( &domains_lock ); if (check_domain( domain )) { int len; char dom[48]; char fmt[128]; char buf[512]; long long millis = direct_clock_get_millis(); const char *name = direct_thread_self_name(); va_list ap; __builtin_va_start(ap,format); vsnprintf( buf, sizeof(buf), format, ap ); __builtin_va_end(ap); len = snprintf( dom, sizeof(dom), "%s:", domain->name ); if (len < 18) len = 18; else len = 28; len += direct_trace_debug_indent() * 4; snprintf( fmt, sizeof(fmt), "(>) [%%-15s %%3lld.%%03lld] (%%5d) %%-%ds Entering %%s%%s [%%s:%%d]\n", len ); direct_log_printf( ((void *)0), fmt, name ? name : " NO NAME ", millis / 1000LL, millis % 1000LL, direct_gettid(), dom, func, buf, file, line ); } pthread_mutex_unlock( &domains_lock ); } __attribute__((no_instrument_function)) void direct_debug_exit( DirectDebugDomain *domain, const char *func, const char *file, int line, const char *format, ... ) { pthread_mutex_lock( &domains_lock ); if (check_domain( domain )) { int len; char dom[48]; char fmt[128]; char buf[512]; long long millis = direct_clock_get_millis(); const char *name = direct_thread_self_name(); va_list ap; __builtin_va_start(ap,format); vsnprintf( buf, sizeof(buf), format, ap ); __builtin_va_end(ap); len = snprintf( dom, sizeof(dom), "%s:", domain->name ); if (len < 18) len = 18; else len = 28; len += direct_trace_debug_indent() * 4; snprintf( fmt, sizeof(fmt), "(<) [%%-15s %%3lld.%%03lld] (%%5d) %%-%ds Returning from %%s%%s [%%s:%%d]\n", len ); direct_log_printf( ((void *)0), fmt, name ? name : " NO NAME ", millis / 1000LL, millis % 1000LL, direct_gettid(), dom, func, buf, file, line ); } pthread_mutex_unlock( &domains_lock ); } __attribute__((no_instrument_function)) void direct_break( const char *func, const char *file, int line, const char *format, ... ) { char buf[512]; long long millis = direct_clock_get_millis(); const char *name = direct_thread_self_name(); va_list ap; __builtin_va_start(ap,format); vsnprintf( buf, sizeof(buf), format, ap ); __builtin_va_end(ap); direct_log_printf( ((void *)0), "(!) [%-15s %3lld.%03lld] (%5d) *** Break [%s] *** [%s:%d in %s()]\n", name ? name : " NO NAME ", millis / 1000LL, millis % 1000LL, direct_gettid(), buf, file, line, func ); direct_trace_print_stack( ((void *)0) ); do { if (!direct_config || direct_config->debug) direct_debug( "Direct/Break: " "Sending SIGTRAP to process group %d...\n", getpgrp() ); } while (0); killpg( getpgrp(), 5 ); do { if (!direct_config || direct_config->debug) direct_debug( "Direct/Break: " "...didn't catch signal on my own, calling _exit(-1).\n" ); } while (0); _exit( -1 ); } __attribute__((no_instrument_function)) void direct_assertion( const char *exp, const char *func, const char *file, int line ) { long long millis = direct_clock_get_millis(); const char *name = direct_thread_self_name(); direct_log_printf( ((void *)0), "(!) [%-15s %3lld.%03lld] (%5d) *** Assertion [%s] failed *** [%s:%d in %s()]\n", name ? name : " NO NAME ", millis / 1000LL, millis % 1000LL, direct_gettid(), exp, file, line, func ); direct_trace_print_stack( ((void *)0) ); if (direct_config->fatal >= DCFL_ASSERT) { do { if (!direct_config || direct_config->debug) direct_debug( "Direct/Assertion: " "Sending SIGTRAP to process group %d...\n", getpgrp() ); } while (0); killpg( getpgrp(), 5 ); do { if (!direct_config || direct_config->debug) direct_debug( "Direct/Assertion: " "...didn't catch signal on my own, calling _exit(-1).\n" ); } while (0); _exit( -1 ); } } __attribute__((no_instrument_function)) void direct_assumption( const char *exp, const char *func, const char *file, int line ) { long long millis = direct_clock_get_millis(); const char *name = direct_thread_self_name(); direct_log_printf( ((void *)0), "(!) [%-15s %3lld.%03lld] (%5d) *** Assumption [%s] failed *** [%s:%d in %s()]\n", name ? name : " NO NAME ", millis / 1000LL, millis % 1000LL, direct_gettid(), exp, file, line, func ); direct_trace_print_stack( ((void *)0) ); if (direct_config->fatal >= DCFL_ASSUME) { do { if (!direct_config || direct_config->debug) direct_debug( "Direct/Assumption: " "Sending SIGTRAP to process group %d...\n", getpgrp() ); } while (0); killpg( getpgrp(), 5 ); do { if (!direct_config || direct_config->debug) direct_debug( "Direct/Assumption: " "...didn't catch signal on my own, calling _exit(-1).\n" ); } while (0); _exit( -1 ); } }