| [ |
| // =========================================== |
| // libc |
| // =========================================== |
| { |
| "file": "dirent.h", |
| "structs": { |
| "dirent": [ |
| "d_ino", |
| "d_off", |
| "d_reclen", |
| "d_type", |
| "d_name" |
| ] |
| } |
| }, |
| { |
| "file": "limits.h", |
| "defines": [ |
| "INT_MAX" |
| ] |
| }, |
| { |
| "file": "utime.h", |
| "structs": { |
| "utimbuf": [ |
| "actime", |
| "modtime" |
| ] |
| } |
| }, |
| { |
| "file": "sys/stat.h", |
| "defines": [ |
| "S_IFDIR", |
| "S_IFREG", |
| "S_IFMT", |
| "S_IFIFO", |
| "S_IFSOCK", |
| "S_IFBLK", |
| "S_IFLNK", |
| "S_IFCHR" |
| ], |
| "structs": { |
| "stat": [ |
| "st_dev", |
| "__st_dev_padding", |
| "__st_ino_truncated", |
| "st_mode", |
| "st_nlink", |
| "st_uid", |
| "st_gid", |
| "st_rdev", |
| "__st_rdev_padding", |
| "st_size", |
| "st_blksize", |
| "st_blocks", |
| { |
| "st_atim": [ |
| "tv_sec", |
| "tv_nsec" |
| ] |
| }, |
| { |
| "st_mtim": [ |
| "tv_sec", |
| "tv_nsec" |
| ] |
| }, |
| { |
| "st_ctim": [ |
| "tv_sec", |
| "tv_nsec" |
| ] |
| }, |
| "st_ino" |
| ] |
| } |
| }, |
| { |
| "file": "sys/statvfs.h", |
| "structs": { |
| "statvfs": [ |
| "f_bsize", |
| "f_frsize", |
| "f_blocks", |
| "f_bfree", |
| "f_bavail", |
| "f_files", |
| "f_ffree", |
| "f_favail", |
| "f_fsid", |
| "f_flag", |
| "f_namemax" |
| ] |
| } |
| }, |
| { |
| "file": "sys/statfs.h", |
| "structs": { |
| "statfs": [ |
| "f_bsize", |
| "f_frsize", |
| "f_blocks", |
| "f_bfree", |
| "f_bavail", |
| "f_files", |
| "f_ffree", |
| "f_fsid", |
| "f_flags", |
| "f_namelen" |
| ] |
| } |
| }, |
| { |
| "file": "fcntl.h", |
| "defines": [ |
| "F_UNLCK", |
| "O_RDWR", |
| "S_IRWXO", |
| "F_GETLK64", |
| "F_SETLKW64", |
| "F_SETLKW", |
| "F_SETLK64", |
| "F_GETLK", |
| "S_ISVTX", |
| "O_RDONLY", |
| "O_ACCMODE", |
| "F_DUPFD", |
| "F_SETLK", |
| "O_WRONLY", |
| "AT_FDCWD", |
| "AT_SYMLINK_NOFOLLOW", |
| "AT_REMOVEDIR", |
| "AT_EMPTY_PATH" |
| ], |
| "structs": { |
| "flock": [ |
| "l_type", |
| "l_whence", |
| "l_start", |
| "l_len", |
| "l_pid" |
| ] |
| } |
| }, |
| { |
| "file": "poll.h", |
| "defines": [ |
| "POLLHUP", |
| "POLLERR", |
| "POLLRDNORM", |
| "POLLWRNORM", |
| "POLLPRI", |
| "POLLIN", |
| "POLLOUT", |
| "POLLNVAL" |
| ], |
| "structs": { |
| "pollfd": [ |
| "fd", |
| "events", |
| "revents" |
| ] |
| } |
| }, |
| { |
| "file": "stdlib.h", |
| "defines": [ |
| "RAND_MAX" |
| ], |
| "structs": { |
| // NOTE: The hash sign at the end of this name is a hint to the processor that it mustn't prefix "struct " to the name to reference this struct. |
| // It will be stripped away when writing the compiled JSON file. You can just refer to it as C_STRUCTS.div_t when using it in the JS code. |
| // For more information see gen_inspect_code() in tools/gen_struct_info.py . |
| "div_t#": [ |
| "quot", |
| "rem" |
| ] |
| } |
| }, |
| { |
| "file": "limits.h", |
| "defines": [ |
| "PTHREAD_KEYS_MAX" |
| ] |
| }, |
| { |
| "file": "sys/utsname.h", |
| "structs": { |
| "utsname": [ |
| "sysname", |
| "nodename", |
| "release", |
| "version", |
| "machine", |
| "domainname" |
| ] |
| } |
| }, |
| { |
| "file": "sys/time.h", |
| "structs": { |
| "timezone": [ |
| "tz_minuteswest", |
| "tz_dsttime" |
| ], |
| "timeval": [ |
| "tv_sec", |
| "tv_usec" |
| ] |
| } |
| }, |
| { |
| "file": "time.h", |
| "defines": [ |
| ["li", "CLOCKS_PER_SEC"], |
| "TIME_UTC", |
| "CLOCK_REALTIME", |
| "CLOCK_MONOTONIC", |
| "CLOCK_MONOTONIC_RAW" |
| ], |
| "structs": { |
| "tm": [ |
| "tm_sec", |
| "tm_min", |
| "tm_hour", |
| "tm_mday", |
| "tm_mon", |
| "tm_year", |
| "tm_wday", |
| "tm_yday", |
| "tm_isdst", |
| "tm_gmtoff", |
| "tm_zone" |
| ], |
| "itimerspec": [ |
| { |
| "it_interval": [ |
| "tv_sec", |
| "tv_nsec" |
| ] |
| }, |
| { |
| "it_value": [ |
| "tv_sec", |
| "tv_nsec" |
| ] |
| } |
| ], |
| "timespec": [ |
| "tv_sec", |
| "tv_nsec" |
| ] |
| } |
| }, |
| { |
| "file": "sys/times.h", |
| "structs": { |
| "tms": [ |
| "tms_utime", |
| "tms_stime", |
| "tms_cutime", |
| "tms_cstime" |
| ] |
| } |
| }, |
| { |
| "file": "compat/sys/timeb.h", |
| "structs": { |
| "timeb": [ |
| "time", |
| "millitm", |
| "timezone", |
| "dstflag" |
| ] |
| } |
| }, |
| { |
| "file": "sys/resource.h", |
| "structs": { |
| "rlimit": [ |
| "rlim_cur", |
| "rlim_max" |
| ], |
| "rusage": [ |
| { |
| "ru_utime": [ |
| "tv_sec", |
| "tv_usec" |
| ] |
| }, |
| { |
| "ru_stime": [ |
| "tv_sec", |
| "tv_usec" |
| ] |
| }, |
| "ru_maxrss", |
| "ru_ixrss", |
| "ru_idrss", |
| "ru_isrss", |
| "ru_minflt", |
| "ru_majflt", |
| "ru_nswap", |
| "ru_inblock", |
| "ru_oublock", |
| "ru_msgsnd", |
| "ru_msgrcv", |
| "ru_nsignals", |
| "ru_nvcsw", |
| "ru_nivcsw" |
| ] |
| } |
| }, |
| { |
| "file": "netdb.h", |
| "defines": [ |
| "AI_V4MAPPED", |
| "EAI_SERVICE", |
| "EAI_FAMILY", |
| "AI_ALL", |
| "AI_ADDRCONFIG", |
| "AI_NUMERICSERV", |
| "NI_NUMERICHOST", |
| "EAI_OVERFLOW", |
| "AI_NUMERICHOST", |
| "AI_CANONNAME", |
| "AI_PASSIVE", |
| "NI_NAMEREQD", |
| "EAI_NONAME", |
| "EAI_AGAIN", |
| "EAI_FAIL", |
| "EAI_MEMORY", |
| "EAI_SYSTEM", |
| "EAI_SOCKTYPE", |
| "EAI_BADFLAGS" |
| ], |
| "structs": { |
| "sockaddr": [ |
| "sa_family", |
| "sa_data" |
| ], |
| "hostent": [ |
| "h_name", |
| "h_aliases", |
| "h_addrtype", |
| "h_length", |
| "h_addr_list" |
| ], |
| "addrinfo": [ |
| "ai_flags", |
| "ai_family", |
| "ai_socktype", |
| "ai_protocol", |
| "ai_addrlen", |
| "ai_addr", |
| "ai_canonname", |
| "ai_next" |
| ], |
| "in_addr": [ |
| "s_addr" |
| ], |
| "linger": [ |
| "l_onoff", |
| "l_linger" |
| ], |
| "protoent": [ |
| "p_name", |
| "p_aliases", |
| "p_proto" |
| ], |
| "sockaddr_in": [ |
| "sin_family", |
| "sin_port", |
| { |
| "sin_addr": [ |
| "s_addr" |
| ] |
| }, |
| "sin_zero" |
| ], |
| "iovec": [ |
| "iov_base", |
| "iov_len" |
| ], |
| "cmsghdr": [ |
| "cmsg_len", |
| "cmsg_level", |
| "cmsg_type" |
| ], |
| "sockaddr_in6": [ |
| "sin6_family", |
| "sin6_port", |
| "sin6_flowinfo", |
| { |
| "sin6_addr": [ |
| { |
| "__in6_union": [ |
| "__s6_addr", |
| "__s6_addr16", |
| "__s6_addr32" |
| ] |
| } |
| ] |
| }, |
| "sin6_scope_id" |
| ], |
| "msghdr": [ |
| "msg_name", |
| "msg_namelen", |
| "msg_iov", |
| "msg_iovlen", |
| "msg_control", |
| "msg_controllen", |
| "msg_flags" |
| ], |
| "in6_addr": [ |
| { |
| "__in6_union": [ |
| "__s6_addr", |
| "__s6_addr16", |
| "__s6_addr32" |
| ] |
| } |
| ], |
| "netent": [ |
| "n_name", |
| "n_aliases", |
| "n_addrtype", |
| "n_net" |
| ] |
| } |
| }, |
| { |
| "file": "netinet/in.h", |
| "defines": [ |
| "IPPROTO_UDP", |
| "IPPROTO_TCP", |
| "INADDR_LOOPBACK" |
| ] |
| }, |
| { |
| "file": "math.h", |
| "defines": [ |
| "FP_ZERO", |
| "FP_NAN", |
| "FP_INFINITE", |
| "FP_NORMAL" |
| ] |
| }, |
| { |
| "file": "bits/fcntl.h", |
| "defines": [ |
| "O_CREAT", |
| "O_SYNC", |
| "O_DSYNC", |
| "F_GETFD", |
| "F_SETFL", |
| "O_NOFOLLOW", |
| "O_APPEND", |
| "F_SETOWN", |
| "O_TRUNC", |
| "O_DIRECTORY", |
| "F_GETOWN", |
| "F_GETOWN_EX", |
| "F_SETFD", |
| "O_EXCL", |
| "F_GETFL", |
| "O_LARGEFILE", |
| "O_NOCTTY" |
| ] |
| }, |
| { |
| "file": "signal.h", |
| "defines": [ |
| "SIGALRM" |
| ] |
| }, |
| { |
| "file": "sys/socket.h", |
| "defines": [ |
| "SOCK_DGRAM", |
| "SOCK_STREAM", |
| "SOCK_CLOEXEC", |
| "SOCK_NONBLOCK", |
| "AF_INET", |
| "AF_UNSPEC", |
| "AF_INET6", |
| "SOL_SOCKET", |
| "SO_ERROR" |
| ] |
| }, |
| { |
| "file": "bits/ioctl.h", |
| "defines": [ |
| "FIONREAD", |
| "TCGETA", |
| "TCGETS", |
| "TCSETA", |
| "TCSETAW", |
| "TCSETAF", |
| "TCSETS", |
| "TCSETSW", |
| "TCSETSF", |
| "TIOCGPGRP", |
| "TIOCSPGRP", |
| "TIOCGWINSZ", |
| "TIOCSWINSZ" |
| ] |
| }, |
| { |
| "file": "unistd.h", |
| "defines": [ |
| "_SC_NGROUPS_MAX", |
| "R_OK", |
| "W_OK", |
| "X_OK" |
| ] |
| }, |
| { |
| "file": "bits/errno.h", |
| "defines": [ |
| "ETXTBSY", |
| "ETOOMANYREFS", |
| "ENAMETOOLONG", |
| "ENOPKG", |
| "EL3HLT", |
| "EINPROGRESS", |
| "ENOTSOCK", |
| "ENOTSUP", |
| "EFBIG", |
| "ENOLINK", |
| "EL3RST", |
| "ENOTUNIQ", |
| "ELNRNG", |
| "ENOANO", |
| "ENOPROTOOPT", |
| "E2BIG", |
| "EHOSTDOWN", |
| "EBFONT", |
| "ENOTEMPTY", |
| "EBUSY", |
| "EADDRINUSE", |
| "ELIBACC", |
| "EDQUOT", |
| "ENOENT", |
| "ECOMM", |
| "EXFULL", |
| "ENOTDIR", |
| "ENETRESET", |
| "EAFNOSUPPORT", |
| "EINVAL", |
| "ENODEV", |
| "ENOCSI", |
| "EPROTONOSUPPORT", |
| "ETIME", |
| "ENOTTY", |
| "EAGAIN", |
| "EMSGSIZE", |
| "ELIBEXEC", |
| "EMLINK", |
| "ECANCELED", |
| "EDESTADDRREQ", |
| "EADDRNOTAVAIL", |
| "EPERM", |
| "EPROTOTYPE", |
| "ENOMEDIUM", |
| "ELOOP", |
| "EREMOTE", |
| "ELIBMAX", |
| "EMULTIHOP", |
| "ECONNABORTED", |
| "EFAULT", |
| "EBADMSG", |
| "EDOM", |
| "EILSEQ", |
| "EPFNOSUPPORT", |
| "ENONET", |
| "ECHRNG", |
| "ESRCH", |
| "EHOSTUNREACH", |
| "EL2HLT", |
| "EL2NSYNC", |
| "ENOMSG", |
| "EISDIR", |
| "EDEADLOCK", |
| "ECONNRESET", |
| "ESTRPIPE", |
| "ESHUTDOWN", |
| "EDEADLK", |
| "EBADRQC", |
| "EUNATCH", |
| "ECHILD", |
| "ETIMEDOUT", |
| "EALREADY", |
| "ENXIO", |
| "EMFILE", |
| "ENFILE", |
| "EREMCHG", |
| "ENOMEM", |
| "ENOSR", |
| "EOWNERDEAD", |
| "ELIBSCN", |
| "EPIPE", |
| "EBADSLT", |
| "ENOSTR", |
| "EIO", |
| "EWOULDBLOCK", |
| "EBADE", |
| "ENODATA", |
| "ESOCKTNOSUPPORT", |
| "ENOLCK", |
| "EPROTO", |
| "ESRMNT", |
| "EXDEV", |
| "ENOSPC", |
| "ELIBBAD", |
| "ERANGE", |
| "ESTALE", |
| "ENOTRECOVERABLE", |
| "ENOBUFS", |
| "EIDRM", |
| "EINTR", |
| "EADV", |
| "ENOSYS", |
| "EUSERS", |
| "EOPNOTSUPP", |
| "ENOTCONN", |
| "ENETUNREACH", |
| "ESPIPE", |
| "EROFS", |
| "ECONNREFUSED", |
| "ENETDOWN", |
| "ENOEXEC", |
| "EBADF", |
| "EDOTDOT", |
| "EBADFD", |
| "EBADR", |
| "EISCONN", |
| "ENOTBLK", |
| "EOVERFLOW", |
| "EACCES", |
| "EEXIST" |
| ] |
| }, |
| { |
| "file": "langinfo.h", |
| "defines": [ |
| "ABDAY_7", |
| "ABDAY_6", |
| "ABDAY_5", |
| "ABDAY_4", |
| "ABDAY_3", |
| "ABDAY_2", |
| "ABDAY_1", |
| "ABMON_1", |
| "RADIXCHAR", |
| "ABMON_3", |
| "AM_STR", |
| "ALT_DIGITS", |
| "PM_STR", |
| "ABMON_9", |
| "YESEXPR", |
| "ABMON_2", |
| "ABMON_7", |
| "ABMON_6", |
| "ABMON_5", |
| "ABMON_4", |
| "ABMON_8", |
| "ERA", |
| "MON_2", |
| "MON_3", |
| "MON_1", |
| "MON_6", |
| "MON_7", |
| "MON_4", |
| "MON_5", |
| "MON_8", |
| "MON_9", |
| "NOEXPR", |
| "T_FMT_AMPM", |
| "MON_10", |
| "MON_11", |
| "MON_12", |
| "T_FMT", |
| "THOUSEP", |
| "ERA_T_FMT", |
| "ERA_D_T_FMT", |
| "D_FMT", |
| "DAY_2", |
| "DAY_3", |
| "DAY_1", |
| "DAY_6", |
| "DAY_7", |
| "DAY_4", |
| "DAY_5", |
| "ERA_D_FMT", |
| "CODESET", |
| "D_T_FMT", |
| "CRNCYSTR", |
| "ABMON_12", |
| "ABMON_11", |
| "ABMON_10" |
| ] |
| }, |
| { |
| "file": "stdio.h", |
| "defines": [ |
| "EOF", |
| "SEEK_END", |
| "SEEK_CUR", |
| "SEEK_SET" |
| ] |
| }, |
| { |
| "file": "sys/stat.h", |
| "defines": [ |
| "S_IALLUGO", |
| "S_IWUGO", |
| "S_IRUGO", |
| "S_IRWXUGO", |
| "S_IXUGO" |
| ] |
| }, |
| { |
| "file": "sys/mman.h", |
| "defines": [ |
| "MAP_ANONYMOUS", |
| "MAP_FAILED", |
| "MAP_FIXED", |
| "MAP_PRIVATE", |
| "PROT_WRITE" |
| ] |
| }, |
| { |
| "file": "dlfcn.h", |
| "defines": [ |
| "RTLD_NOW", |
| "RTLD_LAZY", |
| "RTLD_DEFAULT", |
| "RTLD_GLOBAL", |
| "RTLD_NODELETE" |
| ] |
| }, |
| // =========================================== |
| // SDL |
| // =========================================== |
| { |
| "file": "SDL/SDL_rect.h", |
| "structs": { |
| "SDL_Rect": [ |
| "x", |
| "y", |
| "w", |
| "h" |
| ] |
| } |
| }, |
| { |
| "file": "SDL/SDL_keyboard.h", |
| "structs": { |
| "SDL_Keysym": [ |
| "scancode", |
| "sym", |
| "mod", |
| "unicode" |
| ] |
| } |
| }, |
| { |
| "file": "SDL/SDL_pixels.h", |
| "defines": ["SDL_PIXELFORMAT_RGBA8888"], |
| "structs": { |
| "SDL_Palette": [ |
| "ncolors", |
| "colors", |
| "version", |
| "refcount" |
| ], |
| "SDL_PixelFormat": [ |
| "format", |
| "palette", |
| "BitsPerPixel", |
| "BytesPerPixel", |
| "padding", |
| "Rmask", |
| "Gmask", |
| "Bmask", |
| "Amask", |
| "Rloss", |
| "Gloss", |
| "Bloss", |
| "Aloss", |
| "Rshift", |
| "Gshift", |
| "Bshift", |
| "Ashift", |
| "refcount", |
| "next" |
| ], |
| "SDL_Color": [ |
| "r", |
| "g", |
| "b", |
| "unused" |
| ] |
| } |
| }, |
| { |
| "file": "SDL/SDL_surface.h", |
| "structs": { |
| "SDL_Surface": [ |
| "flags", |
| "format", |
| "w", |
| "h", |
| "pitch", |
| "pixels", |
| "userdata", |
| "locked", |
| "lock_data", |
| "clip_rect", |
| "map", |
| "refcount" |
| ] |
| } |
| }, |
| { |
| "file": "SDL/SDL_events.h", |
| "structs": { |
| "SDL_WindowEvent": [ |
| "type", |
| "windowID", |
| "event", |
| "padding1", |
| "padding2", |
| "padding3", |
| "data1", |
| "data2" |
| ], |
| "SDL_KeyboardEvent": [ |
| "type", |
| "windowID", |
| "state", |
| "repeat", |
| "padding2", |
| "padding3", |
| "keysym" |
| ], |
| "SDL_TextInputEvent": [ |
| "type", |
| "windowID", |
| "text" |
| ], |
| "SDL_MouseMotionEvent": [ |
| "type", |
| "timestamp", |
| "windowID", |
| "which", |
| "state", |
| "x", |
| "y", |
| "xrel", |
| "yrel" |
| ], |
| "SDL_MouseButtonEvent": [ |
| "type", |
| "timestamp", |
| "windowID", |
| "which", |
| "button", |
| "state", |
| "padding1", |
| "padding2", |
| "x", |
| "y" |
| ], |
| "SDL_MouseWheelEvent": [ |
| "type", |
| "timestamp", |
| "windowID", |
| "which", |
| "x", |
| "y" |
| ], |
| "SDL_JoyAxisEvent": [ |
| "type", |
| "which", |
| "axis", |
| "padding1", |
| "padding2", |
| "value" |
| ], |
| "SDL_JoyButtonEvent": [ |
| "type", |
| "which", |
| "button", |
| "state", |
| "padding1" |
| ], |
| "SDL_TouchFingerEvent": [ |
| "type", |
| "timestamp", |
| "touchId", |
| "fingerId", |
| "x", |
| "y", |
| "dx", |
| "dy", |
| "pressure" |
| ], |
| "SDL_ResizeEvent": [ |
| "type", |
| "w", |
| "h" |
| ] |
| } |
| }, |
| { |
| "file": "SDL/SDL_touch.h", |
| "defines": ["SDL_TOUCH_MOUSEID"] |
| }, |
| { |
| "file": "SDL/SDL_audio.h", |
| "defines": [ |
| "SDL_AUDIO_MASK_BITSIZE", |
| "SDL_AUDIO_MASK_DATATYPE", |
| "SDL_AUDIO_MASK_ENDIAN", |
| "SDL_AUDIO_MASK_SIGNED", |
| "AUDIO_U8", |
| "AUDIO_S8", |
| "AUDIO_U16LSB", |
| "AUDIO_S16LSB", |
| "AUDIO_U16MSB", |
| "AUDIO_S16MSB", |
| "AUDIO_U16", |
| "AUDIO_S16", |
| "AUDIO_S32LSB", |
| "AUDIO_S32MSB", |
| "AUDIO_S32", |
| "AUDIO_F32LSB", |
| "AUDIO_F32MSB", |
| "AUDIO_F32", |
| "AUDIO_U16SYS", |
| "AUDIO_S16SYS", |
| "AUDIO_S32SYS", |
| "AUDIO_F32SYS", |
| "SDL_AUDIO_ALLOW_FREQUENCY_CHANGE", |
| "SDL_AUDIO_ALLOW_FORMAT_CHANGE", |
| "SDL_AUDIO_ALLOW_CHANNELS_CHANGE", |
| "SDL_AUDIO_ALLOW_ANY_CHANGE", |
| "SDL_MIX_MAXVOLUME" |
| ], |
| "structs": { |
| "SDL_AudioCVT": [ |
| "needed", |
| "src_format", |
| "dst_format", |
| "rate_incr", |
| "buf", |
| "len", |
| "len_cvt", |
| "len_mult", |
| "len_ratio", |
| "filters", |
| "filter_index" |
| ], |
| "SDL_AudioSpec": [ |
| "freq", |
| "format", |
| "channels", |
| "silence", |
| "samples", |
| "padding", |
| "size", |
| "callback", |
| "userdata" |
| ] |
| } |
| }, |
| { |
| "file": "SDL/SDL_version.h", |
| "defines": [ |
| "SDL_MAJOR_VERSION", |
| "SDL_MINOR_VERSION", |
| "SDL_PATCHLEVEL", |
| "SDL_COMPILEDVERSION" |
| ], |
| "structs": { |
| "SDL_version": [ |
| "major", |
| "minor", |
| "patch" |
| ] |
| } |
| }, |
| { |
| "file": "uuid/uuid.h", |
| "defines": [ |
| "UUID_VARIANT_NCS", |
| "UUID_VARIANT_DCE", |
| "UUID_VARIANT_MICROSOFT", |
| "UUID_VARIANT_OTHER", |
| "UUID_TYPE_DCE_TIME", |
| "UUID_TYPE_DCE_RANDOM" |
| ] |
| }, |
| // =========================================== |
| // emscripten html5 library |
| // =========================================== |
| { |
| "file": "emscripten/html5.h", |
| "defines": [ |
| "EMSCRIPTEN_EVENT_KEYPRESS", |
| "EMSCRIPTEN_EVENT_KEYDOWN", |
| "EMSCRIPTEN_EVENT_KEYUP", |
| "EMSCRIPTEN_EVENT_CLICK", |
| "EMSCRIPTEN_EVENT_MOUSEDOWN", |
| "EMSCRIPTEN_EVENT_MOUSEUP", |
| "EMSCRIPTEN_EVENT_DBLCLICK", |
| "EMSCRIPTEN_EVENT_MOUSEMOVE", |
| "EMSCRIPTEN_EVENT_WHEEL", |
| "EMSCRIPTEN_EVENT_RESIZE", |
| "EMSCRIPTEN_EVENT_SCROLL", |
| "EMSCRIPTEN_EVENT_BLUR", |
| "EMSCRIPTEN_EVENT_FOCUS", |
| "EMSCRIPTEN_EVENT_FOCUSIN", |
| "EMSCRIPTEN_EVENT_FOCUSOUT", |
| "EMSCRIPTEN_EVENT_DEVICEORIENTATION", |
| "EMSCRIPTEN_EVENT_DEVICEMOTION", |
| "EMSCRIPTEN_EVENT_ORIENTATIONCHANGE", |
| "EMSCRIPTEN_EVENT_FULLSCREENCHANGE", |
| "EMSCRIPTEN_EVENT_POINTERLOCKCHANGE", |
| "EMSCRIPTEN_EVENT_VISIBILITYCHANGE", |
| "EMSCRIPTEN_EVENT_TOUCHSTART", |
| "EMSCRIPTEN_EVENT_TOUCHEND", |
| "EMSCRIPTEN_EVENT_TOUCHMOVE", |
| "EMSCRIPTEN_EVENT_TOUCHCANCEL", |
| "EMSCRIPTEN_EVENT_GAMEPADCONNECTED", |
| "EMSCRIPTEN_EVENT_GAMEPADDISCONNECTED", |
| "EMSCRIPTEN_EVENT_BEFOREUNLOAD", |
| "EMSCRIPTEN_EVENT_BATTERYCHARGINGCHANGE", |
| "EMSCRIPTEN_EVENT_BATTERYLEVELCHANGE", |
| "EMSCRIPTEN_EVENT_WEBGLCONTEXTLOST", |
| "EMSCRIPTEN_EVENT_WEBGLCONTEXTRESTORED", |
| "EMSCRIPTEN_EVENT_MOUSEENTER", |
| "EMSCRIPTEN_EVENT_MOUSELEAVE", |
| "EMSCRIPTEN_EVENT_MOUSEOVER", |
| "EMSCRIPTEN_EVENT_MOUSEOUT", |
| "EMSCRIPTEN_EVENT_CANVASRESIZED", |
| "EMSCRIPTEN_EVENT_POINTERLOCKERROR", |
| |
| "EMSCRIPTEN_RESULT_SUCCESS", |
| "EMSCRIPTEN_RESULT_DEFERRED", |
| "EMSCRIPTEN_RESULT_FAILED_NOT_DEFERRED", |
| "EMSCRIPTEN_RESULT_INVALID_TARGET", |
| "EMSCRIPTEN_RESULT_UNKNOWN_TARGET", |
| "EMSCRIPTEN_RESULT_INVALID_PARAM", |
| "EMSCRIPTEN_RESULT_NOT_SUPPORTED", |
| "EMSCRIPTEN_RESULT_FAILED", |
| "EMSCRIPTEN_RESULT_NO_DATA", |
| "EMSCRIPTEN_RESULT_TIMED_OUT", |
| |
| "EMSCRIPTEN_EVENT_TARGET_INVALID", |
| "EMSCRIPTEN_EVENT_TARGET_DOCUMENT", |
| "EMSCRIPTEN_EVENT_TARGET_WINDOW", |
| "EMSCRIPTEN_EVENT_TARGET_SCREEN", |
| |
| "EMSCRIPTEN_FULLSCREEN_SCALE_DEFAULT", |
| "EMSCRIPTEN_FULLSCREEN_SCALE_STRETCH", |
| "EMSCRIPTEN_FULLSCREEN_SCALE_ASPECT", |
| "EMSCRIPTEN_FULLSCREEN_SCALE_CENTER", |
| "EMSCRIPTEN_FULLSCREEN_CANVAS_SCALE_NONE", |
| "EMSCRIPTEN_FULLSCREEN_CANVAS_SCALE_STDDEF", |
| "EMSCRIPTEN_FULLSCREEN_CANVAS_SCALE_HIDEF", |
| "EMSCRIPTEN_FULLSCREEN_FILTERING_DEFAULT", |
| "EMSCRIPTEN_FULLSCREEN_FILTERING_NEAREST", |
| "EMSCRIPTEN_FULLSCREEN_FILTERING_BILINEAR", |
| |
| "EM_HTML5_SHORT_STRING_LEN_BYTES", |
| "EM_HTML5_MEDIUM_STRING_LEN_BYTES", |
| "EM_HTML5_LONG_STRING_LEN_BYTES", |
| |
| "EMSCRIPTEN_WEBGL_CONTEXT_PROXY_DISALLOW", |
| "EMSCRIPTEN_WEBGL_CONTEXT_PROXY_FALLBACK", |
| "EMSCRIPTEN_WEBGL_CONTEXT_PROXY_ALWAYS", |
| |
| "EM_CALLBACK_THREAD_CONTEXT_MAIN_BROWSER_THREAD", |
| "EM_CALLBACK_THREAD_CONTEXT_CALLING_THREAD", |
| |
| "EMSCRIPTEN_DEVICE_MOTION_EVENT_SUPPORTS_ACCELERATION", |
| "EMSCRIPTEN_DEVICE_MOTION_EVENT_SUPPORTS_ACCELERATION_INCLUDING_GRAVITY", |
| "EMSCRIPTEN_DEVICE_MOTION_EVENT_SUPPORTS_ROTATION_RATE" |
| ], |
| "structs": { |
| "EmscriptenKeyboardEvent": [ |
| "key", |
| "code", |
| "location", |
| "ctrlKey", |
| "shiftKey", |
| "altKey", |
| "metaKey", |
| "repeat", |
| "locale", |
| "charValue", |
| "charCode", |
| "keyCode", |
| "which" |
| ], |
| "EmscriptenMouseEvent": [ |
| "screenX", |
| "screenY", |
| "clientX", |
| "clientY", |
| "ctrlKey", |
| "shiftKey", |
| "altKey", |
| "metaKey", |
| "button", |
| "buttons", |
| "movementX", |
| "movementY", |
| "targetX", |
| "targetY", |
| "canvasX", |
| "canvasY" |
| ], |
| "EmscriptenWheelEvent": [ |
| "mouse", |
| "deltaX", |
| "deltaY", |
| "deltaZ", |
| "deltaMode" |
| ], |
| "EmscriptenUiEvent": [ |
| "detail", |
| "documentBodyClientWidth", |
| "documentBodyClientHeight", |
| "windowInnerWidth", |
| "windowInnerHeight", |
| "windowOuterWidth", |
| "windowOuterHeight", |
| "scrollTop", |
| "scrollLeft" |
| ], |
| "EmscriptenFocusEvent": [ |
| "nodeName", |
| "id" |
| ], |
| "EmscriptenDeviceOrientationEvent": [ |
| "alpha", |
| "beta", |
| "gamma", |
| "absolute" |
| ], |
| "EmscriptenDeviceMotionEvent": [ |
| "accelerationX", |
| "accelerationY", |
| "accelerationZ", |
| "accelerationIncludingGravityX", |
| "accelerationIncludingGravityY", |
| "accelerationIncludingGravityZ", |
| "rotationRateAlpha", |
| "rotationRateBeta", |
| "rotationRateGamma" |
| ], |
| "EmscriptenOrientationChangeEvent": [ |
| "orientationIndex", |
| "orientationAngle" |
| ], |
| "EmscriptenFullscreenChangeEvent": [ |
| "isFullscreen", |
| "fullscreenEnabled", |
| "nodeName", |
| "id", |
| "elementWidth", |
| "elementHeight", |
| "screenWidth", |
| "screenHeight" |
| ], |
| "EmscriptenPointerlockChangeEvent": [ |
| "isActive", |
| "nodeName", |
| "id" |
| ], |
| "EmscriptenVisibilityChangeEvent": [ |
| "hidden", |
| "visibilityState" |
| ], |
| "EmscriptenTouchPoint": [ |
| "identifier", |
| "screenX", |
| "screenY", |
| "clientX", |
| "clientY", |
| "pageX", |
| "pageY", |
| "isChanged", |
| "onTarget", |
| "targetX", |
| "targetY", |
| "canvasX", |
| "canvasY" |
| ], |
| "EmscriptenTouchEvent": [ |
| "numTouches", |
| "ctrlKey", |
| "shiftKey", |
| "altKey", |
| "metaKey", |
| "touches" |
| ], |
| "EmscriptenGamepadEvent": [ |
| "timestamp", |
| "axis", |
| "analogButton", |
| "digitalButton", |
| "connected", |
| "index", |
| "numAxes", |
| "numButtons", |
| "id", |
| "mapping" |
| ], |
| "EmscriptenBatteryEvent": [ |
| "chargingTime", |
| "dischargingTime", |
| "level", |
| "charging" |
| ], |
| "EmscriptenWebGLContextAttributes": [ |
| "alpha", |
| "depth", |
| "stencil", |
| "antialias", |
| "premultipliedAlpha", |
| "preserveDrawingBuffer", |
| "powerPreference", |
| "failIfMajorPerformanceCaveat", |
| "majorVersion", |
| "minorVersion", |
| "enableExtensionsByDefault", |
| "explicitSwapControl", |
| "proxyContextToMainThread", |
| "renderViaOffscreenBackBuffer" |
| ], |
| "EmscriptenFullscreenStrategy": [ |
| "scaleMode", |
| "canvasResolutionScaleMode", |
| "filteringMode", |
| "canvasResizedCallback", |
| "canvasResizedCallbackUserData", |
| "canvasResizedCallbackTargetThread" |
| ] |
| } |
| }, |
| { |
| "file": "emscripten/threading.h", |
| "defines": [ |
| "EM_PROXIED_PTHREAD_CREATE", |
| "EM_PROXIED_CREATE_CONTEXT", |
| "EM_PROXIED_RESIZE_OFFSCREENCANVAS", |
| "EM_PROXIED_JS_FUNCTION", |
| "EM_QUEUED_CALL_MAX_ARGS", |
| "EM_QUEUED_JS_CALL_MAX_ARGS", |
| "EM_THREAD_STATUS_NOTSTARTED", |
| "EM_THREAD_STATUS_RUNNING", |
| "EM_THREAD_STATUS_SLEEPING", |
| "EM_THREAD_STATUS_WAITFUTEX", |
| "EM_THREAD_STATUS_WAITPROXY", |
| "EM_THREAD_STATUS_FINISHED", |
| "EM_FUNC_SIG_V", |
| "EM_FUNC_SIG_VI", |
| "EM_FUNC_SIG_VII", |
| "EM_FUNC_SIG_VIII", |
| "EM_FUNC_SIG_I", |
| "EM_FUNC_SIG_II", |
| "EM_FUNC_SIG_III", |
| "EM_FUNC_SIG_IIII", |
| "EM_FUNC_SIG_PARAM_I", |
| "EM_FUNC_SIG_PARAM_I64", |
| "EM_FUNC_SIG_PARAM_F", |
| "EM_FUNC_SIG_PARAM_D", |
| "EM_FUNC_SIG_PARAM_B", |
| "EM_FUNC_SIG_PARAM_F2I" |
| ] |
| }, |
| { |
| "file": "wasi/api.h", |
| "structs": { |
| "__wasi_fdstat_t": [ |
| "fs_filetype", |
| "fs_flags", |
| "fs_rights_base", |
| "fs_rights_inheriting" |
| ] |
| }, |
| "defines": [ |
| "__WASI_FILETYPE_CHARACTER_DEVICE", |
| "__WASI_FILETYPE_DIRECTORY", |
| "__WASI_FILETYPE_REGULAR_FILE", |
| "__WASI_FILETYPE_SYMBOLIC_LINK", |
| "__WASI_CLOCKID_REALTIME", |
| "__WASI_CLOCKID_MONOTONIC", |
| "__WASI_CLOCKID_PROCESS_CPUTIME_ID", |
| "__WASI_CLOCKID_THREAD_CPUTIME_ID" |
| ] |
| }, |
| { |
| "file": "emscripten/fetch.h", |
| "structs": { |
| "emscripten_fetch_attr_t": [ |
| "requestMethod", |
| "userData", |
| "onsuccess", |
| "onerror", |
| "onprogress", |
| "onreadystatechange", |
| "attributes", |
| "timeoutMSecs", |
| "withCredentials", |
| "destinationPath", |
| "userName", |
| "password", |
| "requestHeaders", |
| "overriddenMimeType", |
| "requestData", |
| "requestDataSize" |
| ], |
| "emscripten_fetch_t": [ |
| "id", |
| "userData", |
| "url", |
| "data", |
| "numBytes", |
| "dataOffset", |
| "totalBytes", |
| "readyState", |
| "status", |
| "statusText", |
| "__proxyState", |
| "__attributes" |
| ] |
| }, |
| "defines": ["EMSCRIPTEN_FETCH_LOAD_TO_MEMORY", |
| "EMSCRIPTEN_FETCH_STREAM_DATA", |
| "EMSCRIPTEN_FETCH_PERSIST_FILE", |
| "EMSCRIPTEN_FETCH_APPEND", |
| "EMSCRIPTEN_FETCH_REPLACE", |
| "EMSCRIPTEN_FETCH_NO_DOWNLOAD", |
| "EMSCRIPTEN_FETCH_SYNCHRONOUS", |
| "EMSCRIPTEN_FETCH_WAITABLE" |
| ] |
| }, |
| { |
| "file": "emscripten/fiber.h", |
| "structs": { |
| "asyncify_data_s": [ |
| "stack_ptr", |
| "stack_limit", |
| "rewind_id" |
| ], |
| "emscripten_fiber_s": [ |
| "stack_base", |
| "stack_limit", |
| "stack_ptr", |
| "entry", |
| "user_data", |
| "asyncify_data" |
| ] |
| } |
| }, |
| // =========================================== |
| // WebGPU |
| // NOTE: This can be (mostly) auto-generated: |
| // https://dawn.googlesource.com/dawn/+/refs/heads/main/generator/templates/webgpu_struct_info.json |
| // =========================================== |
| { |
| "file": "webgpu/webgpu.h", |
| "defines": [], |
| "structs": { |
| "WGPUChainedStruct": [ |
| "next", |
| "sType" |
| ], |
| "WGPUAdapterProperties": [ |
| "nextInChain", |
| "deviceID", |
| "vendorID", |
| "name", |
| "driverDescription", |
| "adapterType", |
| "backendType" |
| ], |
| "WGPUBindGroupEntry": [ |
| "binding", |
| "buffer", |
| "offset", |
| "size", |
| "sampler", |
| "textureView" |
| ], |
| "WGPUBlendComponent": [ |
| "operation", |
| "srcFactor", |
| "dstFactor" |
| ], |
| "WGPUBufferBindingLayout": [ |
| "nextInChain", |
| "type", |
| "hasDynamicOffset", |
| "minBindingSize" |
| ], |
| "WGPUBufferDescriptor": [ |
| "nextInChain", |
| "label", |
| "usage", |
| "size", |
| "mappedAtCreation" |
| ], |
| "WGPUColor": [ |
| "r", |
| "g", |
| "b", |
| "a" |
| ], |
| "WGPUCommandBufferDescriptor": [ |
| "nextInChain", |
| "label" |
| ], |
| "WGPUCommandEncoderDescriptor": [ |
| "nextInChain", |
| "label" |
| ], |
| "WGPUComputePassDescriptor": [ |
| "nextInChain", |
| "label" |
| ], |
| "WGPUExtent3D": [ |
| "width", |
| "height", |
| "depthOrArrayLayers" |
| ], |
| "WGPUInstanceDescriptor": [ |
| "nextInChain" |
| ], |
| "WGPUMultisampleState": [ |
| "nextInChain", |
| "count", |
| "mask", |
| "alphaToCoverageEnabled" |
| ], |
| "WGPUOrigin3D": [ |
| "x", |
| "y", |
| "z" |
| ], |
| "WGPUPipelineLayoutDescriptor": [ |
| "nextInChain", |
| "label", |
| "bindGroupLayoutCount", |
| "bindGroupLayouts" |
| ], |
| "WGPUPrimitiveDepthClampingState": [ |
| "chain", |
| "clampDepth" |
| ], |
| "WGPUPrimitiveState": [ |
| "nextInChain", |
| "topology", |
| "stripIndexFormat", |
| "frontFace", |
| "cullMode" |
| ], |
| "WGPUProgrammableStageDescriptor": [ |
| "nextInChain", |
| "module", |
| "entryPoint" |
| ], |
| "WGPUQuerySetDescriptor": [ |
| "nextInChain", |
| "label", |
| "type", |
| "count", |
| "pipelineStatistics", |
| "pipelineStatisticsCount" |
| ], |
| "WGPURenderBundleDescriptor": [ |
| "nextInChain", |
| "label" |
| ], |
| "WGPURenderBundleEncoderDescriptor": [ |
| "nextInChain", |
| "label", |
| "colorFormatsCount", |
| "colorFormats", |
| "depthStencilFormat", |
| "sampleCount" |
| ], |
| "WGPURenderPassDepthStencilAttachment": [ |
| "view", |
| "depthLoadOp", |
| "depthStoreOp", |
| "clearDepth", |
| "depthReadOnly", |
| "stencilLoadOp", |
| "stencilStoreOp", |
| "clearStencil", |
| "stencilReadOnly" |
| ], |
| "WGPUSamplerBindingLayout": [ |
| "nextInChain", |
| "type" |
| ], |
| "WGPUSamplerDescriptor": [ |
| "nextInChain", |
| "label", |
| "addressModeU", |
| "addressModeV", |
| "addressModeW", |
| "magFilter", |
| "minFilter", |
| "mipmapFilter", |
| "lodMinClamp", |
| "lodMaxClamp", |
| "compare", |
| "maxAnisotropy" |
| ], |
| "WGPUShaderModuleDescriptor": [ |
| "nextInChain", |
| "label" |
| ], |
| "WGPUShaderModuleSPIRVDescriptor": [ |
| "chain", |
| "codeSize", |
| "code" |
| ], |
| "WGPUShaderModuleWGSLDescriptor": [ |
| "chain", |
| "source" |
| ], |
| "WGPUStencilFaceState": [ |
| "compare", |
| "failOp", |
| "depthFailOp", |
| "passOp" |
| ], |
| "WGPUStorageTextureBindingLayout": [ |
| "nextInChain", |
| "access", |
| "format", |
| "viewDimension" |
| ], |
| "WGPUSurfaceDescriptor": [ |
| "nextInChain", |
| "label" |
| ], |
| "WGPUSurfaceDescriptorFromCanvasHTMLSelector": [ |
| "chain", |
| "selector" |
| ], |
| "WGPUSwapChainDescriptor": [ |
| "nextInChain", |
| "label", |
| "usage", |
| "format", |
| "width", |
| "height", |
| "presentMode" |
| ], |
| "WGPUTextureBindingLayout": [ |
| "nextInChain", |
| "sampleType", |
| "viewDimension", |
| "multisampled" |
| ], |
| "WGPUTextureDataLayout": [ |
| "nextInChain", |
| "offset", |
| "bytesPerRow", |
| "rowsPerImage" |
| ], |
| "WGPUTextureViewDescriptor": [ |
| "nextInChain", |
| "label", |
| "format", |
| "dimension", |
| "baseMipLevel", |
| "mipLevelCount", |
| "baseArrayLayer", |
| "arrayLayerCount", |
| "aspect" |
| ], |
| "WGPUVertexAttribute": [ |
| "format", |
| "offset", |
| "shaderLocation" |
| ], |
| "WGPUBindGroupDescriptor": [ |
| "nextInChain", |
| "label", |
| "layout", |
| "entryCount", |
| "entries" |
| ], |
| "WGPUBindGroupLayoutEntry": [ |
| "nextInChain", |
| "binding", |
| "visibility", |
| "buffer", |
| "sampler", |
| "texture", |
| "storageTexture" |
| ], |
| "WGPUBlendState": [ |
| "color", |
| "alpha" |
| ], |
| "WGPUComputePipelineDescriptor": [ |
| "nextInChain", |
| "label", |
| "layout", |
| "computeStage" |
| ], |
| "WGPUDepthStencilState": [ |
| "nextInChain", |
| "format", |
| "depthWriteEnabled", |
| "depthCompare", |
| "stencilFront", |
| "stencilBack", |
| "stencilReadMask", |
| "stencilWriteMask", |
| "depthBias", |
| "depthBiasSlopeScale", |
| "depthBiasClamp" |
| ], |
| "WGPUImageCopyBuffer": [ |
| "nextInChain", |
| "layout", |
| "buffer" |
| ], |
| "WGPUImageCopyTexture": [ |
| "nextInChain", |
| "texture", |
| "mipLevel", |
| "origin", |
| "aspect" |
| ], |
| "WGPURenderPassColorAttachment": [ |
| "view", |
| "resolveTarget", |
| "loadOp", |
| "storeOp", |
| "clearColor" |
| ], |
| "WGPUTextureDescriptor": [ |
| "nextInChain", |
| "label", |
| "usage", |
| "dimension", |
| "size", |
| "format", |
| "mipLevelCount", |
| "sampleCount" |
| ], |
| "WGPUVertexBufferLayout": [ |
| "arrayStride", |
| "stepMode", |
| "attributeCount", |
| "attributes" |
| ], |
| "WGPUBindGroupLayoutDescriptor": [ |
| "nextInChain", |
| "label", |
| "entryCount", |
| "entries" |
| ], |
| "WGPUColorTargetState": [ |
| "nextInChain", |
| "format", |
| "blend", |
| "writeMask" |
| ], |
| "WGPURenderPassDescriptor": [ |
| "nextInChain", |
| "label", |
| "colorAttachmentCount", |
| "colorAttachments", |
| "depthStencilAttachment", |
| "occlusionQuerySet" |
| ], |
| "WGPUVertexState": [ |
| "nextInChain", |
| "module", |
| "entryPoint", |
| "bufferCount", |
| "buffers" |
| ], |
| "WGPUFragmentState": [ |
| "nextInChain", |
| "module", |
| "entryPoint", |
| "targetCount", |
| "targets" |
| ], |
| "WGPURenderPipelineDescriptor2": [ |
| "nextInChain", |
| "label", |
| "layout", |
| "vertex", |
| "primitive", |
| "depthStencil", |
| "multisample", |
| "fragment" |
| ] |
| } |
| } |
| ] |