1
2
3
/* automatically generated by rust-bindgen */

pub const _INTTYPES_H : u32 = 1 ; pub const _FEATURES_H : u32 = 1 ; pub const _DEFAULT_SOURCE : u32 = 1 ; pub const __USE_ISOC11 : u32 = 1 ; pub const __USE_ISOC99 : u32 = 1 ; pub const __USE_ISOC95 : u32 = 1 ; pub const __USE_POSIX_IMPLICITLY : u32 = 1 ; pub const _POSIX_SOURCE : u32 = 1 ; pub const _POSIX_C_SOURCE : u32 = 200809 ; pub const __USE_POSIX : u32 = 1 ; pub const __USE_POSIX2 : u32 = 1 ; pub const __USE_POSIX199309 : u32 = 1 ; pub const __USE_POSIX199506 : u32 = 1 ; pub const __USE_XOPEN2K : u32 = 1 ; pub const __USE_XOPEN2K8 : u32 = 1 ; pub const _ATFILE_SOURCE : u32 = 1 ; pub const __USE_MISC : u32 = 1 ; pub const __USE_ATFILE : u32 = 1 ; pub const __USE_FORTIFY_LEVEL : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_GETS : u32 = 0 ; pub const _STDC_PREDEF_H : u32 = 1 ; pub const __STDC_IEC_559__ : u32 = 1 ; pub const __STDC_IEC_559_COMPLEX__ : u32 = 1 ; pub const __STDC_ISO_10646__ : u32 = 201706 ; pub const __STDC_NO_THREADS__ : u32 = 1 ; pub const __GNU_LIBRARY__ : u32 = 6 ; pub const __GLIBC__ : u32 = 2 ; pub const __GLIBC_MINOR__ : u32 = 27 ; pub const _SYS_CDEFS_H : u32 = 1 ; pub const __glibc_c99_flexarr_available : u32 = 1 ; pub const __WORDSIZE : u32 = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : u32 = 1 ; pub const __SYSCALL_WORDSIZE : u32 = 64 ; pub const __HAVE_GENERIC_SELECTION : u32 = 1 ; pub const _STDINT_H : u32 = 1 ; pub const __GLIBC_USE_LIB_EXT2 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_TYPES_EXT : u32 = 0 ; pub const _BITS_TYPES_H : u32 = 1 ; pub const _BITS_TYPESIZES_H : u32 = 1 ; pub const __OFF_T_MATCHES_OFF64_T : u32 = 1 ; pub const __INO_T_MATCHES_INO64_T : u32 = 1 ; pub const __RLIM_T_MATCHES_RLIM64_T : u32 = 1 ; pub const __FD_SETSIZE : u32 = 1024 ; pub const _BITS_WCHAR_H : u32 = 1 ; pub const _BITS_STDINT_INTN_H : u32 = 1 ; pub const _BITS_STDINT_UINTN_H : u32 = 1 ; pub const INT8_MIN : i32 = -128 ; pub const INT16_MIN : i32 = -32768 ; pub const INT32_MIN : i32 = -2147483648 ; pub const INT8_MAX : u32 = 127 ; pub const INT16_MAX : u32 = 32767 ; pub const INT32_MAX : u32 = 2147483647 ; pub const UINT8_MAX : u32 = 255 ; pub const UINT16_MAX : u32 = 65535 ; pub const UINT32_MAX : u32 = 4294967295 ; pub const INT_LEAST8_MIN : i32 = -128 ; pub const INT_LEAST16_MIN : i32 = -32768 ; pub const INT_LEAST32_MIN : i32 = -2147483648 ; pub const INT_LEAST8_MAX : u32 = 127 ; pub const INT_LEAST16_MAX : u32 = 32767 ; pub const INT_LEAST32_MAX : u32 = 2147483647 ; pub const UINT_LEAST8_MAX : u32 = 255 ; pub const UINT_LEAST16_MAX : u32 = 65535 ; pub const UINT_LEAST32_MAX : u32 = 4294967295 ; pub const INT_FAST8_MIN : i32 = -128 ; pub const INT_FAST16_MIN : i64 = -9223372036854775808 ; pub const INT_FAST32_MIN : i64 = -9223372036854775808 ; pub const INT_FAST8_MAX : u32 = 127 ; pub const INT_FAST16_MAX : u64 = 9223372036854775807 ; pub const INT_FAST32_MAX : u64 = 9223372036854775807 ; pub const UINT_FAST8_MAX : u32 = 255 ; pub const UINT_FAST16_MAX : i32 = -1 ; pub const UINT_FAST32_MAX : i32 = -1 ; pub const INTPTR_MIN : i64 = -9223372036854775808 ; pub const INTPTR_MAX : u64 = 9223372036854775807 ; pub const UINTPTR_MAX : i32 = -1 ; pub const PTRDIFF_MIN : i64 = -9223372036854775808 ; pub const PTRDIFF_MAX : u64 = 9223372036854775807 ; pub const SIG_ATOMIC_MIN : i32 = -2147483648 ; pub const SIG_ATOMIC_MAX : u32 = 2147483647 ; pub const SIZE_MAX : i32 = -1 ; pub const WINT_MIN : u32 = 0 ; pub const WINT_MAX : u32 = 4294967295 ; pub const ____gwchar_t_defined : u32 = 1 ; pub const __PRI64_PREFIX : & 'static [ u8 ; 2usize ] = b"l\0" ; pub const __PRIPTR_PREFIX : & 'static [ u8 ; 2usize ] = b"l\0" ; pub const PRId8 : & 'static [ u8 ; 2usize ] = b"d\0" ; pub const PRId16 : & 'static [ u8 ; 2usize ] = b"d\0" ; pub const PRId32 : & 'static [ u8 ; 2usize ] = b"d\0" ; pub const PRId64 : & 'static [ u8 ; 3usize ] = b"ld\0" ; pub const PRIdLEAST8 : & 'static [ u8 ; 2usize ] = b"d\0" ; pub const PRIdLEAST16 : & 'static [ u8 ; 2usize ] = b"d\0" ; pub const PRIdLEAST32 : & 'static [ u8 ; 2usize ] = b"d\0" ; pub const PRIdLEAST64 : & 'static [ u8 ; 3usize ] = b"ld\0" ; pub const PRIdFAST8 : & 'static [ u8 ; 2usize ] = b"d\0" ; pub const PRIdFAST16 : & 'static [ u8 ; 3usize ] = b"ld\0" ; pub const PRIdFAST32 : & 'static [ u8 ; 3usize ] = b"ld\0" ; pub const PRIdFAST64 : & 'static [ u8 ; 3usize ] = b"ld\0" ; pub const PRIi8 : & 'static [ u8 ; 2usize ] = b"i\0" ; pub const PRIi16 : & 'static [ u8 ; 2usize ] = b"i\0" ; pub const PRIi32 : & 'static [ u8 ; 2usize ] = b"i\0" ; pub const PRIi64 : & 'static [ u8 ; 3usize ] = b"li\0" ; pub const PRIiLEAST8 : & 'static [ u8 ; 2usize ] = b"i\0" ; pub const PRIiLEAST16 : & 'static [ u8 ; 2usize ] = b"i\0" ; pub const PRIiLEAST32 : & 'static [ u8 ; 2usize ] = b"i\0" ; pub const PRIiLEAST64 : & 'static [ u8 ; 3usize ] = b"li\0" ; pub const PRIiFAST8 : & 'static [ u8 ; 2usize ] = b"i\0" ; pub const PRIiFAST16 : & 'static [ u8 ; 3usize ] = b"li\0" ; pub const PRIiFAST32 : & 'static [ u8 ; 3usize ] = b"li\0" ; pub const PRIiFAST64 : & 'static [ u8 ; 3usize ] = b"li\0" ; pub const PRIo8 : & 'static [ u8 ; 2usize ] = b"o\0" ; pub const PRIo16 : & 'static [ u8 ; 2usize ] = b"o\0" ; pub const PRIo32 : & 'static [ u8 ; 2usize ] = b"o\0" ; pub const PRIo64 : & 'static [ u8 ; 3usize ] = b"lo\0" ; pub const PRIoLEAST8 : & 'static [ u8 ; 2usize ] = b"o\0" ; pub const PRIoLEAST16 : & 'static [ u8 ; 2usize ] = b"o\0" ; pub const PRIoLEAST32 : & 'static [ u8 ; 2usize ] = b"o\0" ; pub const PRIoLEAST64 : & 'static [ u8 ; 3usize ] = b"lo\0" ; pub const PRIoFAST8 : & 'static [ u8 ; 2usize ] = b"o\0" ; pub const PRIoFAST16 : & 'static [ u8 ; 3usize ] = b"lo\0" ; pub const PRIoFAST32 : & 'static [ u8 ; 3usize ] = b"lo\0" ; pub const PRIoFAST64 : & 'static [ u8 ; 3usize ] = b"lo\0" ; pub const PRIu8 : & 'static [ u8 ; 2usize ] = b"u\0" ; pub const PRIu16 : & 'static [ u8 ; 2usize ] = b"u\0" ; pub const PRIu32 : & 'static [ u8 ; 2usize ] = b"u\0" ; pub const PRIu64 : & 'static [ u8 ; 3usize ] = b"lu\0" ; pub const PRIuLEAST8 : & 'static [ u8 ; 2usize ] = b"u\0" ; pub const PRIuLEAST16 : & 'static [ u8 ; 2usize ] = b"u\0" ; pub const PRIuLEAST32 : & 'static [ u8 ; 2usize ] = b"u\0" ; pub const PRIuLEAST64 : & 'static [ u8 ; 3usize ] = b"lu\0" ; pub const PRIuFAST8 : & 'static [ u8 ; 2usize ] = b"u\0" ; pub const PRIuFAST16 : & 'static [ u8 ; 3usize ] = b"lu\0" ; pub const PRIuFAST32 : & 'static [ u8 ; 3usize ] = b"lu\0" ; pub const PRIuFAST64 : & 'static [ u8 ; 3usize ] = b"lu\0" ; pub const PRIx8 : & 'static [ u8 ; 2usize ] = b"x\0" ; pub const PRIx16 : & 'static [ u8 ; 2usize ] = b"x\0" ; pub const PRIx32 : & 'static [ u8 ; 2usize ] = b"x\0" ; pub const PRIx64 : & 'static [ u8 ; 3usize ] = b"lx\0" ; pub const PRIxLEAST8 : & 'static [ u8 ; 2usize ] = b"x\0" ; pub const PRIxLEAST16 : & 'static [ u8 ; 2usize ] = b"x\0" ; pub const PRIxLEAST32 : & 'static [ u8 ; 2usize ] = b"x\0" ; pub const PRIxLEAST64 : & 'static [ u8 ; 3usize ] = b"lx\0" ; pub const PRIxFAST8 : & 'static [ u8 ; 2usize ] = b"x\0" ; pub const PRIxFAST16 : & 'static [ u8 ; 3usize ] = b"lx\0" ; pub const PRIxFAST32 : & 'static [ u8 ; 3usize ] = b"lx\0" ; pub const PRIxFAST64 : & 'static [ u8 ; 3usize ] = b"lx\0" ; pub const PRIX8 : & 'static [ u8 ; 2usize ] = b"X\0" ; pub const PRIX16 : & 'static [ u8 ; 2usize ] = b"X\0" ; pub const PRIX32 : & 'static [ u8 ; 2usize ] = b"X\0" ; pub const PRIX64 : & 'static [ u8 ; 3usize ] = b"lX\0" ; pub const PRIXLEAST8 : & 'static [ u8 ; 2usize ] = b"X\0" ; pub const PRIXLEAST16 : & 'static [ u8 ; 2usize ] = b"X\0" ; pub const PRIXLEAST32 : & 'static [ u8 ; 2usize ] = b"X\0" ; pub const PRIXLEAST64 : & 'static [ u8 ; 3usize ] = b"lX\0" ; pub const PRIXFAST8 : & 'static [ u8 ; 2usize ] = b"X\0" ; pub const PRIXFAST16 : & 'static [ u8 ; 3usize ] = b"lX\0" ; pub const PRIXFAST32 : & 'static [ u8 ; 3usize ] = b"lX\0" ; pub const PRIXFAST64 : & 'static [ u8 ; 3usize ] = b"lX\0" ; pub const PRIdMAX : & 'static [ u8 ; 3usize ] = b"ld\0" ; pub const PRIiMAX : & 'static [ u8 ; 3usize ] = b"li\0" ; pub const PRIoMAX : & 'static [ u8 ; 3usize ] = b"lo\0" ; pub const PRIuMAX : & 'static [ u8 ; 3usize ] = b"lu\0" ; pub const PRIxMAX : & 'static [ u8 ; 3usize ] = b"lx\0" ; pub const PRIXMAX : & 'static [ u8 ; 3usize ] = b"lX\0" ; pub const PRIdPTR : & 'static [ u8 ; 3usize ] = b"ld\0" ; pub const PRIiPTR : & 'static [ u8 ; 3usize ] = b"li\0" ; pub const PRIoPTR : & 'static [ u8 ; 3usize ] = b"lo\0" ; pub const PRIuPTR : & 'static [ u8 ; 3usize ] = b"lu\0" ; pub const PRIxPTR : & 'static [ u8 ; 3usize ] = b"lx\0" ; pub const PRIXPTR : & 'static [ u8 ; 3usize ] = b"lX\0" ; pub const SCNd8 : & 'static [ u8 ; 4usize ] = b"hhd\0" ; pub const SCNd16 : & 'static [ u8 ; 3usize ] = b"hd\0" ; pub const SCNd32 : & 'static [ u8 ; 2usize ] = b"d\0" ; pub const SCNd64 : & 'static [ u8 ; 3usize ] = b"ld\0" ; pub const SCNdLEAST8 : & 'static [ u8 ; 4usize ] = b"hhd\0" ; pub const SCNdLEAST16 : & 'static [ u8 ; 3usize ] = b"hd\0" ; pub const SCNdLEAST32 : & 'static [ u8 ; 2usize ] = b"d\0" ; pub const SCNdLEAST64 : & 'static [ u8 ; 3usize ] = b"ld\0" ; pub const SCNdFAST8 : & 'static [ u8 ; 4usize ] = b"hhd\0" ; pub const SCNdFAST16 : & 'static [ u8 ; 3usize ] = b"ld\0" ; pub const SCNdFAST32 : & 'static [ u8 ; 3usize ] = b"ld\0" ; pub const SCNdFAST64 : & 'static [ u8 ; 3usize ] = b"ld\0" ; pub const SCNi8 : & 'static [ u8 ; 4usize ] = b"hhi\0" ; pub const SCNi16 : & 'static [ u8 ; 3usize ] = b"hi\0" ; pub const SCNi32 : & 'static [ u8 ; 2usize ] = b"i\0" ; pub const SCNi64 : & 'static [ u8 ; 3usize ] = b"li\0" ; pub const SCNiLEAST8 : & 'static [ u8 ; 4usize ] = b"hhi\0" ; pub const SCNiLEAST16 : & 'static [ u8 ; 3usize ] = b"hi\0" ; pub const SCNiLEAST32 : & 'static [ u8 ; 2usize ] = b"i\0" ; pub const SCNiLEAST64 : & 'static [ u8 ; 3usize ] = b"li\0" ; pub const SCNiFAST8 : & 'static [ u8 ; 4usize ] = b"hhi\0" ; pub const SCNiFAST16 : & 'static [ u8 ; 3usize ] = b"li\0" ; pub const SCNiFAST32 : & 'static [ u8 ; 3usize ] = b"li\0" ; pub const SCNiFAST64 : & 'static [ u8 ; 3usize ] = b"li\0" ; pub const SCNu8 : & 'static [ u8 ; 4usize ] = b"hhu\0" ; pub const SCNu16 : & 'static [ u8 ; 3usize ] = b"hu\0" ; pub const SCNu32 : & 'static [ u8 ; 2usize ] = b"u\0" ; pub const SCNu64 : & 'static [ u8 ; 3usize ] = b"lu\0" ; pub const SCNuLEAST8 : & 'static [ u8 ; 4usize ] = b"hhu\0" ; pub const SCNuLEAST16 : & 'static [ u8 ; 3usize ] = b"hu\0" ; pub const SCNuLEAST32 : & 'static [ u8 ; 2usize ] = b"u\0" ; pub const SCNuLEAST64 : & 'static [ u8 ; 3usize ] = b"lu\0" ; pub const SCNuFAST8 : & 'static [ u8 ; 4usize ] = b"hhu\0" ; pub const SCNuFAST16 : & 'static [ u8 ; 3usize ] = b"lu\0" ; pub const SCNuFAST32 : & 'static [ u8 ; 3usize ] = b"lu\0" ; pub const SCNuFAST64 : & 'static [ u8 ; 3usize ] = b"lu\0" ; pub const SCNo8 : & 'static [ u8 ; 4usize ] = b"hho\0" ; pub const SCNo16 : & 'static [ u8 ; 3usize ] = b"ho\0" ; pub const SCNo32 : & 'static [ u8 ; 2usize ] = b"o\0" ; pub const SCNo64 : & 'static [ u8 ; 3usize ] = b"lo\0" ; pub const SCNoLEAST8 : & 'static [ u8 ; 4usize ] = b"hho\0" ; pub const SCNoLEAST16 : & 'static [ u8 ; 3usize ] = b"ho\0" ; pub const SCNoLEAST32 : & 'static [ u8 ; 2usize ] = b"o\0" ; pub const SCNoLEAST64 : & 'static [ u8 ; 3usize ] = b"lo\0" ; pub const SCNoFAST8 : & 'static [ u8 ; 4usize ] = b"hho\0" ; pub const SCNoFAST16 : & 'static [ u8 ; 3usize ] = b"lo\0" ; pub const SCNoFAST32 : & 'static [ u8 ; 3usize ] = b"lo\0" ; pub const SCNoFAST64 : & 'static [ u8 ; 3usize ] = b"lo\0" ; pub const SCNx8 : & 'static [ u8 ; 4usize ] = b"hhx\0" ; pub const SCNx16 : & 'static [ u8 ; 3usize ] = b"hx\0" ; pub const SCNx32 : & 'static [ u8 ; 2usize ] = b"x\0" ; pub const SCNx64 : & 'static [ u8 ; 3usize ] = b"lx\0" ; pub const SCNxLEAST8 : & 'static [ u8 ; 4usize ] = b"hhx\0" ; pub const SCNxLEAST16 : & 'static [ u8 ; 3usize ] = b"hx\0" ; pub const SCNxLEAST32 : & 'static [ u8 ; 2usize ] = b"x\0" ; pub const SCNxLEAST64 : & 'static [ u8 ; 3usize ] = b"lx\0" ; pub const SCNxFAST8 : & 'static [ u8 ; 4usize ] = b"hhx\0" ; pub const SCNxFAST16 : & 'static [ u8 ; 3usize ] = b"lx\0" ; pub const SCNxFAST32 : & 'static [ u8 ; 3usize ] = b"lx\0" ; pub const SCNxFAST64 : & 'static [ u8 ; 3usize ] = b"lx\0" ; pub const SCNdMAX : & 'static [ u8 ; 3usize ] = b"ld\0" ; pub const SCNiMAX : & 'static [ u8 ; 3usize ] = b"li\0" ; pub const SCNoMAX : & 'static [ u8 ; 3usize ] = b"lo\0" ; pub const SCNuMAX : & 'static [ u8 ; 3usize ] = b"lu\0" ; pub const SCNxMAX : & 'static [ u8 ; 3usize ] = b"lx\0" ; pub const SCNdPTR : & 'static [ u8 ; 3usize ] = b"ld\0" ; pub const SCNiPTR : & 'static [ u8 ; 3usize ] = b"li\0" ; pub const SCNoPTR : & 'static [ u8 ; 3usize ] = b"lo\0" ; pub const SCNuPTR : & 'static [ u8 ; 3usize ] = b"lu\0" ; pub const SCNxPTR : & 'static [ u8 ; 3usize ] = b"lx\0" ; pub const WEBP_ENCODER_ABI_VERSION : u32 = 526 ; pub const WEBP_MAX_DIMENSION : u32 = 16383 ; pub const WEBP_DECODER_ABI_VERSION : u32 = 520 ; pub type wchar_t = :: std :: os :: raw :: c_int ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct max_align_t { pub __clang_max_align_nonce1 : :: std :: os :: raw :: c_longlong , pub __bindgen_padding_0 : u64 , pub __clang_max_align_nonce2 : f64 , } # [ test ] fn bindgen_test_layout_max_align_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < max_align_t > ( ) , 32usize , concat ! ( "Size of: " , stringify ! ( max_align_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < max_align_t > ( ) ) ) . __clang_max_align_nonce1 as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( max_align_t ) , "::" , stringify ! ( __clang_max_align_nonce1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < max_align_t > ( ) ) ) . __clang_max_align_nonce2 as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( max_align_t ) , "::" , stringify ! ( __clang_max_align_nonce2 ) ) ) ; } pub type __u_char = :: std :: os :: raw :: c_uchar ; pub type __u_short = :: std :: os :: raw :: c_ushort ; pub type __u_int = :: std :: os :: raw :: c_uint ; pub type __u_long = :: std :: os :: raw :: c_ulong ; pub type __int8_t = :: std :: os :: raw :: c_schar ; pub type __uint8_t = :: std :: os :: raw :: c_uchar ; pub type __int16_t = :: std :: os :: raw :: c_short ; pub type __uint16_t = :: std :: os :: raw :: c_ushort ; pub type __int32_t = :: std :: os :: raw :: c_int ; pub type __uint32_t = :: std :: os :: raw :: c_uint ; pub type __int64_t = :: std :: os :: raw :: c_long ; pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __quad_t = :: std :: os :: raw :: c_long ; pub type __u_quad_t = :: std :: os :: raw :: c_ulong ; pub type __intmax_t = :: std :: os :: raw :: c_long ; pub type __uintmax_t = :: std :: os :: raw :: c_ulong ; pub type __dev_t = :: std :: os :: raw :: c_ulong ; pub type __uid_t = :: std :: os :: raw :: c_uint ; pub type __gid_t = :: std :: os :: raw :: c_uint ; pub type __ino_t = :: std :: os :: raw :: c_ulong ; pub type __ino64_t = :: std :: os :: raw :: c_ulong ; pub type __mode_t = :: std :: os :: raw :: c_uint ; pub type __nlink_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __pid_t = :: std :: os :: raw :: c_int ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __fsid_t { pub __val : [ :: std :: os :: raw :: c_int ; 2usize ] , } # [ test ] fn bindgen_test_layout___fsid_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __fsid_t > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __fsid_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __fsid_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( __fsid_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __fsid_t > ( ) ) ) . __val as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __fsid_t ) , "::" , stringify ! ( __val ) ) ) ; } pub type __clock_t = :: std :: os :: raw :: c_long ; pub type __rlim_t = :: std :: os :: raw :: c_ulong ; pub type __rlim64_t = :: std :: os :: raw :: c_ulong ; pub type __id_t = :: std :: os :: raw :: c_uint ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __useconds_t = :: std :: os :: raw :: c_uint ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type __daddr_t = :: std :: os :: raw :: c_int ; pub type __key_t = :: std :: os :: raw :: c_int ; pub type __clockid_t = :: std :: os :: raw :: c_int ; pub type __timer_t = * mut :: std :: os :: raw :: c_void ; pub type __blksize_t = :: std :: os :: raw :: c_long ; pub type __blkcnt_t = :: std :: os :: raw :: c_long ; pub type __blkcnt64_t = :: std :: os :: raw :: c_long ; pub type __fsblkcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsblkcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsword_t = :: std :: os :: raw :: c_long ; pub type __ssize_t = :: std :: os :: raw :: c_long ; pub type __syscall_slong_t = :: std :: os :: raw :: c_long ; pub type __syscall_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __loff_t = __off64_t ; pub type __caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __intptr_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type __sig_atomic_t = :: std :: os :: raw :: c_int ; pub type int_least8_t = :: std :: os :: raw :: c_schar ; pub type int_least16_t = :: std :: os :: raw :: c_short ; pub type int_least32_t = :: std :: os :: raw :: c_int ; pub type int_least64_t = :: std :: os :: raw :: c_long ; pub type uint_least8_t = :: std :: os :: raw :: c_uchar ; pub type uint_least16_t = :: std :: os :: raw :: c_ushort ; pub type uint_least32_t = :: std :: os :: raw :: c_uint ; pub type uint_least64_t = :: std :: os :: raw :: c_ulong ; pub type int_fast8_t = :: std :: os :: raw :: c_schar ; pub type int_fast16_t = :: std :: os :: raw :: c_long ; pub type int_fast32_t = :: std :: os :: raw :: c_long ; pub type int_fast64_t = :: std :: os :: raw :: c_long ; pub type uint_fast8_t = :: std :: os :: raw :: c_uchar ; pub type uint_fast16_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast32_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast64_t = :: std :: os :: raw :: c_ulong ; pub type intmax_t = __intmax_t ; pub type uintmax_t = __uintmax_t ; pub type __gwchar_t = :: std :: os :: raw :: c_int ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct imaxdiv_t { pub quot : :: std :: os :: raw :: c_long , pub rem : :: std :: os :: raw :: c_long , } # [ test ] fn bindgen_test_layout_imaxdiv_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < imaxdiv_t > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( imaxdiv_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < imaxdiv_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( imaxdiv_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < imaxdiv_t > ( ) ) ) . quot as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( imaxdiv_t ) , "::" , stringify ! ( quot ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < imaxdiv_t > ( ) ) ) . rem as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( imaxdiv_t ) , "::" , stringify ! ( rem ) ) ) ; } extern "C" { pub fn imaxabs ( __n : intmax_t ) -> intmax_t ; } extern "C" { pub fn imaxdiv ( __numer : intmax_t , __denom : intmax_t ) -> imaxdiv_t ; } extern "C" { pub fn strtoimax ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int ) -> intmax_t ; } extern "C" { pub fn strtoumax ( __nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int ) -> uintmax_t ; } extern "C" { pub fn wcstoimax ( __nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int ) -> intmax_t ; } extern "C" { pub fn wcstoumax ( __nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int ) -> uintmax_t ; } extern "C" { pub fn WebPGetEncoderVersion ( ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPEncodeRGB ( rgb : * const u8 , width : :: std :: os :: raw :: c_int , height : :: std :: os :: raw :: c_int , stride : :: std :: os :: raw :: c_int , quality_factor : f32 , output : * mut * mut u8 ) -> usize ; } extern "C" { pub fn WebPEncodeBGR ( bgr : * const u8 , width : :: std :: os :: raw :: c_int , height : :: std :: os :: raw :: c_int , stride : :: std :: os :: raw :: c_int , quality_factor : f32 , output : * mut * mut u8 ) -> usize ; } extern "C" { pub fn WebPEncodeRGBA ( rgba : * const u8 , width : :: std :: os :: raw :: c_int , height : :: std :: os :: raw :: c_int , stride : :: std :: os :: raw :: c_int , quality_factor : f32 , output : * mut * mut u8 ) -> usize ; } extern "C" { pub fn WebPEncodeBGRA ( bgra : * const u8 , width : :: std :: os :: raw :: c_int , height : :: std :: os :: raw :: c_int , stride : :: std :: os :: raw :: c_int , quality_factor : f32 , output : * mut * mut u8 ) -> usize ; } extern "C" { pub fn WebPEncodeLosslessRGB ( rgb : * const u8 , width : :: std :: os :: raw :: c_int , height : :: std :: os :: raw :: c_int , stride : :: std :: os :: raw :: c_int , output : * mut * mut u8 ) -> usize ; } extern "C" { pub fn WebPEncodeLosslessBGR ( bgr : * const u8 , width : :: std :: os :: raw :: c_int , height : :: std :: os :: raw :: c_int , stride : :: std :: os :: raw :: c_int , output : * mut * mut u8 ) -> usize ; } extern "C" { pub fn WebPEncodeLosslessRGBA ( rgba : * const u8 , width : :: std :: os :: raw :: c_int , height : :: std :: os :: raw :: c_int , stride : :: std :: os :: raw :: c_int , output : * mut * mut u8 ) -> usize ; } extern "C" { pub fn WebPEncodeLosslessBGRA ( bgra : * const u8 , width : :: std :: os :: raw :: c_int , height : :: std :: os :: raw :: c_int , stride : :: std :: os :: raw :: c_int , output : * mut * mut u8 ) -> usize ; } extern "C" { pub fn WebPFree ( ptr : * mut :: std :: os :: raw :: c_void ) ; } pub const WebPImageHint_WEBP_HINT_DEFAULT : WebPImageHint = 0 ; pub const WebPImageHint_WEBP_HINT_PICTURE : WebPImageHint = 1 ; pub const WebPImageHint_WEBP_HINT_PHOTO : WebPImageHint = 2 ; pub const WebPImageHint_WEBP_HINT_GRAPH : WebPImageHint = 3 ; pub const WebPImageHint_WEBP_HINT_LAST : WebPImageHint = 4 ; pub type WebPImageHint = u32 ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct WebPConfig { pub lossless : :: std :: os :: raw :: c_int , pub quality : f32 , pub method : :: std :: os :: raw :: c_int , pub image_hint : WebPImageHint , pub target_size : :: std :: os :: raw :: c_int , pub target_PSNR : f32 , pub segments : :: std :: os :: raw :: c_int , pub sns_strength : :: std :: os :: raw :: c_int , pub filter_strength : :: std :: os :: raw :: c_int , pub filter_sharpness : :: std :: os :: raw :: c_int , pub filter_type : :: std :: os :: raw :: c_int , pub autofilter : :: std :: os :: raw :: c_int , pub alpha_compression : :: std :: os :: raw :: c_int , pub alpha_filtering : :: std :: os :: raw :: c_int , pub alpha_quality : :: std :: os :: raw :: c_int , pub pass : :: std :: os :: raw :: c_int , pub show_compressed : :: std :: os :: raw :: c_int , pub preprocessing : :: std :: os :: raw :: c_int , pub partitions : :: std :: os :: raw :: c_int , pub partition_limit : :: std :: os :: raw :: c_int , pub emulate_jpeg_size : :: std :: os :: raw :: c_int , pub thread_level : :: std :: os :: raw :: c_int , pub low_memory : :: std :: os :: raw :: c_int , pub near_lossless : :: std :: os :: raw :: c_int , pub exact : :: std :: os :: raw :: c_int , pub use_delta_palette : :: std :: os :: raw :: c_int , pub use_sharp_yuv : :: std :: os :: raw :: c_int , pub pad : [ u32 ; 2usize ] , } # [ test ] fn bindgen_test_layout_WebPConfig ( ) { assert_eq ! ( :: std :: mem :: size_of :: < WebPConfig > ( ) , 116usize , concat ! ( "Size of: " , stringify ! ( WebPConfig ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < WebPConfig > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( WebPConfig ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . lossless as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( lossless ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . quality as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( quality ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . method as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( method ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . image_hint as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( image_hint ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . target_size as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( target_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . target_PSNR as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( target_PSNR ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . segments as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( segments ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . sns_strength as * const _ as usize } , 28usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( sns_strength ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . filter_strength as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( filter_strength ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . filter_sharpness as * const _ as usize } , 36usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( filter_sharpness ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . filter_type as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( filter_type ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . autofilter as * const _ as usize } , 44usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( autofilter ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . alpha_compression as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( alpha_compression ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . alpha_filtering as * const _ as usize } , 52usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( alpha_filtering ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . alpha_quality as * const _ as usize } , 56usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( alpha_quality ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . pass as * const _ as usize } , 60usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( pass ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . show_compressed as * const _ as usize } , 64usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( show_compressed ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . preprocessing as * const _ as usize } , 68usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( preprocessing ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . partitions as * const _ as usize } , 72usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( partitions ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . partition_limit as * const _ as usize } , 76usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( partition_limit ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . emulate_jpeg_size as * const _ as usize } , 80usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( emulate_jpeg_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . thread_level as * const _ as usize } , 84usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( thread_level ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . low_memory as * const _ as usize } , 88usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( low_memory ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . near_lossless as * const _ as usize } , 92usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( near_lossless ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . exact as * const _ as usize } , 96usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( exact ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . use_delta_palette as * const _ as usize } , 100usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( use_delta_palette ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . use_sharp_yuv as * const _ as usize } , 104usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( use_sharp_yuv ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPConfig > ( ) ) ) . pad as * const _ as usize } , 108usize , concat ! ( "Offset of field: " , stringify ! ( WebPConfig ) , "::" , stringify ! ( pad ) ) ) ; } pub const WebPPreset_WEBP_PRESET_DEFAULT : WebPPreset = 0 ; pub const WebPPreset_WEBP_PRESET_PICTURE : WebPPreset = 1 ; pub const WebPPreset_WEBP_PRESET_PHOTO : WebPPreset = 2 ; pub const WebPPreset_WEBP_PRESET_DRAWING : WebPPreset = 3 ; pub const WebPPreset_WEBP_PRESET_ICON : WebPPreset = 4 ; pub const WebPPreset_WEBP_PRESET_TEXT : WebPPreset = 5 ; pub type WebPPreset = u32 ; extern "C" { pub fn WebPConfigInitInternal ( arg1 : * mut WebPConfig , arg2 : WebPPreset , arg3 : f32 , arg4 : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPConfigLosslessPreset ( config : * mut WebPConfig , level : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPValidateConfig ( config : * const WebPConfig ) -> :: std :: os :: raw :: c_int ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct WebPAuxStats { pub coded_size : :: std :: os :: raw :: c_int , pub PSNR : [ f32 ; 5usize ] , pub block_count : [ :: std :: os :: raw :: c_int ; 3usize ] , pub header_bytes : [ :: std :: os :: raw :: c_int ; 2usize ] , pub residual_bytes : [ [ :: std :: os :: raw :: c_int ; 4usize ] ; 3usize ] , pub segment_size : [ :: std :: os :: raw :: c_int ; 4usize ] , pub segment_quant : [ :: std :: os :: raw :: c_int ; 4usize ] , pub segment_level : [ :: std :: os :: raw :: c_int ; 4usize ] , pub alpha_data_size : :: std :: os :: raw :: c_int , pub layer_data_size : :: std :: os :: raw :: c_int , pub lossless_features : u32 , pub histogram_bits : :: std :: os :: raw :: c_int , pub transform_bits : :: std :: os :: raw :: c_int , pub cache_bits : :: std :: os :: raw :: c_int , pub palette_size : :: std :: os :: raw :: c_int , pub lossless_size : :: std :: os :: raw :: c_int , pub lossless_hdr_size : :: std :: os :: raw :: c_int , pub lossless_data_size : :: std :: os :: raw :: c_int , pub pad : [ u32 ; 2usize ] , } # [ test ] fn bindgen_test_layout_WebPAuxStats ( ) { assert_eq ! ( :: std :: mem :: size_of :: < WebPAuxStats > ( ) , 188usize , concat ! ( "Size of: " , stringify ! ( WebPAuxStats ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < WebPAuxStats > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( WebPAuxStats ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . coded_size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( coded_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . PSNR as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( PSNR ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . block_count as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( block_count ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . header_bytes as * const _ as usize } , 36usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( header_bytes ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . residual_bytes as * const _ as usize } , 44usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( residual_bytes ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . segment_size as * const _ as usize } , 92usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( segment_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . segment_quant as * const _ as usize } , 108usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( segment_quant ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . segment_level as * const _ as usize } , 124usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( segment_level ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . alpha_data_size as * const _ as usize } , 140usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( alpha_data_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . layer_data_size as * const _ as usize } , 144usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( layer_data_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . lossless_features as * const _ as usize } , 148usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( lossless_features ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . histogram_bits as * const _ as usize } , 152usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( histogram_bits ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . transform_bits as * const _ as usize } , 156usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( transform_bits ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . cache_bits as * const _ as usize } , 160usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( cache_bits ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . palette_size as * const _ as usize } , 164usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( palette_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . lossless_size as * const _ as usize } , 168usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( lossless_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . lossless_hdr_size as * const _ as usize } , 172usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( lossless_hdr_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . lossless_data_size as * const _ as usize } , 176usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( lossless_data_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPAuxStats > ( ) ) ) . pad as * const _ as usize } , 180usize , concat ! ( "Offset of field: " , stringify ! ( WebPAuxStats ) , "::" , stringify ! ( pad ) ) ) ; } pub type WebPWriterFunction = :: std :: option :: Option < unsafe extern "C" fn ( data : * const u8 , data_size : usize , picture : * const WebPPicture ) -> :: std :: os :: raw :: c_int > ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct WebPMemoryWriter { pub mem : * mut u8 , pub size : usize , pub max_size : usize , pub pad : [ u32 ; 1usize ] , } # [ test ] fn bindgen_test_layout_WebPMemoryWriter ( ) { assert_eq ! ( :: std :: mem :: size_of :: < WebPMemoryWriter > ( ) , 32usize , concat ! ( "Size of: " , stringify ! ( WebPMemoryWriter ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < WebPMemoryWriter > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( WebPMemoryWriter ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPMemoryWriter > ( ) ) ) . mem as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( WebPMemoryWriter ) , "::" , stringify ! ( mem ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPMemoryWriter > ( ) ) ) . size as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( WebPMemoryWriter ) , "::" , stringify ! ( size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPMemoryWriter > ( ) ) ) . max_size as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( WebPMemoryWriter ) , "::" , stringify ! ( max_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPMemoryWriter > ( ) ) ) . pad as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( WebPMemoryWriter ) , "::" , stringify ! ( pad ) ) ) ; } extern "C" { pub fn WebPMemoryWriterInit ( writer : * mut WebPMemoryWriter ) ; } extern "C" { pub fn WebPMemoryWriterClear ( writer : * mut WebPMemoryWriter ) ; } extern "C" { pub fn WebPMemoryWrite ( data : * const u8 , data_size : usize , picture : * const WebPPicture ) -> :: std :: os :: raw :: c_int ; } pub type WebPProgressHook = :: std :: option :: Option < unsafe extern "C" fn ( percent : :: std :: os :: raw :: c_int , picture : * const WebPPicture ) -> :: std :: os :: raw :: c_int > ; pub const WebPEncCSP_WEBP_YUV420 : WebPEncCSP = 0 ; pub const WebPEncCSP_WEBP_YUV420A : WebPEncCSP = 4 ; pub const WebPEncCSP_WEBP_CSP_UV_MASK : WebPEncCSP = 3 ; pub const WebPEncCSP_WEBP_CSP_ALPHA_BIT : WebPEncCSP = 4 ; pub type WebPEncCSP = u32 ; pub const WebPEncodingError_VP8_ENC_OK : WebPEncodingError = 0 ; pub const WebPEncodingError_VP8_ENC_ERROR_OUT_OF_MEMORY : WebPEncodingError = 1 ; pub const WebPEncodingError_VP8_ENC_ERROR_BITSTREAM_OUT_OF_MEMORY : WebPEncodingError = 2 ; pub const WebPEncodingError_VP8_ENC_ERROR_NULL_PARAMETER : WebPEncodingError = 3 ; pub const WebPEncodingError_VP8_ENC_ERROR_INVALID_CONFIGURATION : WebPEncodingError = 4 ; pub const WebPEncodingError_VP8_ENC_ERROR_BAD_DIMENSION : WebPEncodingError = 5 ; pub const WebPEncodingError_VP8_ENC_ERROR_PARTITION0_OVERFLOW : WebPEncodingError = 6 ; pub const WebPEncodingError_VP8_ENC_ERROR_PARTITION_OVERFLOW : WebPEncodingError = 7 ; pub const WebPEncodingError_VP8_ENC_ERROR_BAD_WRITE : WebPEncodingError = 8 ; pub const WebPEncodingError_VP8_ENC_ERROR_FILE_TOO_BIG : WebPEncodingError = 9 ; pub const WebPEncodingError_VP8_ENC_ERROR_USER_ABORT : WebPEncodingError = 10 ; pub const WebPEncodingError_VP8_ENC_ERROR_LAST : WebPEncodingError = 11 ; pub type WebPEncodingError = u32 ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct WebPPicture { # [ doc = "" ] pub use_argb : :: std :: os :: raw :: c_int , pub colorspace : WebPEncCSP , pub width : :: std :: os :: raw :: c_int , pub height : :: std :: os :: raw :: c_int , pub y : * mut u8 , pub u : * mut u8 , pub v : * mut u8 , pub y_stride : :: std :: os :: raw :: c_int , pub uv_stride : :: std :: os :: raw :: c_int , pub a : * mut u8 , pub a_stride : :: std :: os :: raw :: c_int , pub pad1 : [ u32 ; 2usize ] , pub argb : * mut u32 , pub argb_stride : :: std :: os :: raw :: c_int , pub pad2 : [ u32 ; 3usize ] , # [ doc = "" ] pub writer : WebPWriterFunction , pub custom_ptr : * mut :: std :: os :: raw :: c_void , pub extra_info_type : :: std :: os :: raw :: c_int , pub extra_info : * mut u8 , # [ doc = "" ] pub stats : * mut WebPAuxStats , pub error_code : WebPEncodingError , pub progress_hook : WebPProgressHook , pub user_data : * mut :: std :: os :: raw :: c_void , pub pad3 : [ u32 ; 3usize ] , pub pad4 : * mut u8 , pub pad5 : * mut u8 , pub pad6 : [ u32 ; 8usize ] , # [ doc = "" ] pub memory_ : * mut :: std :: os :: raw :: c_void , pub memory_argb_ : * mut :: std :: os :: raw :: c_void , pub pad7 : [ * mut :: std :: os :: raw :: c_void ; 2usize ] , } # [ test ] fn bindgen_test_layout_WebPPicture ( ) { assert_eq ! ( :: std :: mem :: size_of :: < WebPPicture > ( ) , 256usize , concat ! ( "Size of: " , stringify ! ( WebPPicture ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < WebPPicture > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( WebPPicture ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . use_argb as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( use_argb ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . colorspace as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( colorspace ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . width as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( width ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . height as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( height ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . y as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( y ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . u as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( u ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . v as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( v ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . y_stride as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( y_stride ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . uv_stride as * const _ as usize } , 44usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( uv_stride ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . a as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( a ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . a_stride as * const _ as usize } , 56usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( a_stride ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . pad1 as * const _ as usize } , 60usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( pad1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . argb as * const _ as usize } , 72usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( argb ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . argb_stride as * const _ as usize } , 80usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( argb_stride ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . pad2 as * const _ as usize } , 84usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( pad2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . writer as * const _ as usize } , 96usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( writer ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . custom_ptr as * const _ as usize } , 104usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( custom_ptr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . extra_info_type as * const _ as usize } , 112usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( extra_info_type ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . extra_info as * const _ as usize } , 120usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( extra_info ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . stats as * const _ as usize } , 128usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( stats ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . error_code as * const _ as usize } , 136usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( error_code ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . progress_hook as * const _ as usize } , 144usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( progress_hook ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . user_data as * const _ as usize } , 152usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( user_data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . pad3 as * const _ as usize } , 160usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( pad3 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . pad4 as * const _ as usize } , 176usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( pad4 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . pad5 as * const _ as usize } , 184usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( pad5 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . pad6 as * const _ as usize } , 192usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( pad6 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . memory_ as * const _ as usize } , 224usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( memory_ ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . memory_argb_ as * const _ as usize } , 232usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( memory_argb_ ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPPicture > ( ) ) ) . pad7 as * const _ as usize } , 240usize , concat ! ( "Offset of field: " , stringify ! ( WebPPicture ) , "::" , stringify ! ( pad7 ) ) ) ; } extern "C" { pub fn WebPPictureInitInternal ( arg1 : * mut WebPPicture , arg2 : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureAlloc ( picture : * mut WebPPicture ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureFree ( picture : * mut WebPPicture ) ; } extern "C" { pub fn WebPPictureCopy ( src : * const WebPPicture , dst : * mut WebPPicture ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPlaneDistortion ( src : * const u8 , src_stride : usize , ref_ : * const u8 , ref_stride : usize , width : :: std :: os :: raw :: c_int , height : :: std :: os :: raw :: c_int , x_step : usize , type_ : :: std :: os :: raw :: c_int , distortion : * mut f32 , result : * mut f32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureDistortion ( src : * const WebPPicture , ref_ : * const WebPPicture , metric_type : :: std :: os :: raw :: c_int , result : * mut f32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureCrop ( picture : * mut WebPPicture , left : :: std :: os :: raw :: c_int , top : :: std :: os :: raw :: c_int , width : :: std :: os :: raw :: c_int , height : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureView ( src : * const WebPPicture , left : :: std :: os :: raw :: c_int , top : :: std :: os :: raw :: c_int , width : :: std :: os :: raw :: c_int , height : :: std :: os :: raw :: c_int , dst : * mut WebPPicture ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureIsView ( picture : * const WebPPicture ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureRescale ( pic : * mut WebPPicture , width : :: std :: os :: raw :: c_int , height : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureImportRGB ( picture : * mut WebPPicture , rgb : * const u8 , rgb_stride : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureImportRGBA ( picture : * mut WebPPicture , rgba : * const u8 , rgba_stride : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureImportRGBX ( picture : * mut WebPPicture , rgbx : * const u8 , rgbx_stride : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureImportBGR ( picture : * mut WebPPicture , bgr : * const u8 , bgr_stride : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureImportBGRA ( picture : * mut WebPPicture , bgra : * const u8 , bgra_stride : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureImportBGRX ( picture : * mut WebPPicture , bgrx : * const u8 , bgrx_stride : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureARGBToYUVA ( picture : * mut WebPPicture , arg1 : WebPEncCSP ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureARGBToYUVADithered ( picture : * mut WebPPicture , colorspace : WebPEncCSP , dithering : f32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureSharpARGBToYUVA ( picture : * mut WebPPicture ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureSmartARGBToYUVA ( picture : * mut WebPPicture ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPPictureYUVAToARGB ( picture : * mut WebPPicture ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPCleanupTransparentArea ( picture : * mut WebPPicture ) ; } extern "C" { pub fn WebPPictureHasTransparency ( picture : * const WebPPicture ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPBlendAlpha ( pic : * mut WebPPicture , background_rgb : u32 ) ; } extern "C" { pub fn WebPEncode ( config : * const WebPConfig , picture : * mut WebPPicture ) -> :: std :: os :: raw :: c_int ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct WebPIDecoder { _unused : [ u8 ; 0 ] , } extern "C" { pub fn WebPGetDecoderVersion ( ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPGetInfo ( data : * const u8 , data_size : usize , width : * mut :: std :: os :: raw :: c_int , height : * mut :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPDecodeRGBA ( data : * const u8 , data_size : usize , width : * mut :: std :: os :: raw :: c_int , height : * mut :: std :: os :: raw :: c_int ) -> * mut u8 ; } extern "C" { pub fn WebPDecodeARGB ( data : * const u8 , data_size : usize , width : * mut :: std :: os :: raw :: c_int , height : * mut :: std :: os :: raw :: c_int ) -> * mut u8 ; } extern "C" { pub fn WebPDecodeBGRA ( data : * const u8 , data_size : usize , width : * mut :: std :: os :: raw :: c_int , height : * mut :: std :: os :: raw :: c_int ) -> * mut u8 ; } extern "C" { pub fn WebPDecodeRGB ( data : * const u8 , data_size : usize , width : * mut :: std :: os :: raw :: c_int , height : * mut :: std :: os :: raw :: c_int ) -> * mut u8 ; } extern "C" { pub fn WebPDecodeBGR ( data : * const u8 , data_size : usize , width : * mut :: std :: os :: raw :: c_int , height : * mut :: std :: os :: raw :: c_int ) -> * mut u8 ; } extern "C" { pub fn WebPDecodeYUV ( data : * const u8 , data_size : usize , width : * mut :: std :: os :: raw :: c_int , height : * mut :: std :: os :: raw :: c_int , u : * mut * mut u8 , v : * mut * mut u8 , stride : * mut :: std :: os :: raw :: c_int , uv_stride : * mut :: std :: os :: raw :: c_int ) -> * mut u8 ; } extern "C" { pub fn WebPDecodeRGBAInto ( data : * const u8 , data_size : usize , output_buffer : * mut u8 , output_buffer_size : usize , output_stride : :: std :: os :: raw :: c_int ) -> * mut u8 ; } extern "C" { pub fn WebPDecodeARGBInto ( data : * const u8 , data_size : usize , output_buffer : * mut u8 , output_buffer_size : usize , output_stride : :: std :: os :: raw :: c_int ) -> * mut u8 ; } extern "C" { pub fn WebPDecodeBGRAInto ( data : * const u8 , data_size : usize , output_buffer : * mut u8 , output_buffer_size : usize , output_stride : :: std :: os :: raw :: c_int ) -> * mut u8 ; } extern "C" { pub fn WebPDecodeRGBInto ( data : * const u8 , data_size : usize , output_buffer : * mut u8 , output_buffer_size : usize , output_stride : :: std :: os :: raw :: c_int ) -> * mut u8 ; } extern "C" { pub fn WebPDecodeBGRInto ( data : * const u8 , data_size : usize , output_buffer : * mut u8 , output_buffer_size : usize , output_stride : :: std :: os :: raw :: c_int ) -> * mut u8 ; } extern "C" { pub fn WebPDecodeYUVInto ( data : * const u8 , data_size : usize , luma : * mut u8 , luma_size : usize , luma_stride : :: std :: os :: raw :: c_int , u : * mut u8 , u_size : usize , u_stride : :: std :: os :: raw :: c_int , v : * mut u8 , v_size : usize , v_stride : :: std :: os :: raw :: c_int ) -> * mut u8 ; } pub const WEBP_CSP_MODE_MODE_RGB : WEBP_CSP_MODE = 0 ; pub const WEBP_CSP_MODE_MODE_RGBA : WEBP_CSP_MODE = 1 ; pub const WEBP_CSP_MODE_MODE_BGR : WEBP_CSP_MODE = 2 ; pub const WEBP_CSP_MODE_MODE_BGRA : WEBP_CSP_MODE = 3 ; pub const WEBP_CSP_MODE_MODE_ARGB : WEBP_CSP_MODE = 4 ; pub const WEBP_CSP_MODE_MODE_RGBA_4444 : WEBP_CSP_MODE = 5 ; pub const WEBP_CSP_MODE_MODE_RGB_565 : WEBP_CSP_MODE = 6 ; pub const WEBP_CSP_MODE_MODE_rgbA : WEBP_CSP_MODE = 7 ; pub const WEBP_CSP_MODE_MODE_bgrA : WEBP_CSP_MODE = 8 ; pub const WEBP_CSP_MODE_MODE_Argb : WEBP_CSP_MODE = 9 ; pub const WEBP_CSP_MODE_MODE_rgbA_4444 : WEBP_CSP_MODE = 10 ; pub const WEBP_CSP_MODE_MODE_YUV : WEBP_CSP_MODE = 11 ; pub const WEBP_CSP_MODE_MODE_YUVA : WEBP_CSP_MODE = 12 ; pub const WEBP_CSP_MODE_MODE_LAST : WEBP_CSP_MODE = 13 ; pub type WEBP_CSP_MODE = u32 ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct WebPRGBABuffer { pub rgba : * mut u8 , pub stride : :: std :: os :: raw :: c_int , pub size : usize , } # [ test ] fn bindgen_test_layout_WebPRGBABuffer ( ) { assert_eq ! ( :: std :: mem :: size_of :: < WebPRGBABuffer > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( WebPRGBABuffer ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < WebPRGBABuffer > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( WebPRGBABuffer ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPRGBABuffer > ( ) ) ) . rgba as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( WebPRGBABuffer ) , "::" , stringify ! ( rgba ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPRGBABuffer > ( ) ) ) . stride as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( WebPRGBABuffer ) , "::" , stringify ! ( stride ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPRGBABuffer > ( ) ) ) . size as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( WebPRGBABuffer ) , "::" , stringify ! ( size ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct WebPYUVABuffer { pub y : * mut u8 , pub u : * mut u8 , pub v : * mut u8 , pub a : * mut u8 , pub y_stride : :: std :: os :: raw :: c_int , pub u_stride : :: std :: os :: raw :: c_int , pub v_stride : :: std :: os :: raw :: c_int , pub a_stride : :: std :: os :: raw :: c_int , pub y_size : usize , pub u_size : usize , pub v_size : usize , pub a_size : usize , } # [ test ] fn bindgen_test_layout_WebPYUVABuffer ( ) { assert_eq ! ( :: std :: mem :: size_of :: < WebPYUVABuffer > ( ) , 80usize , concat ! ( "Size of: " , stringify ! ( WebPYUVABuffer ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < WebPYUVABuffer > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( WebPYUVABuffer ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPYUVABuffer > ( ) ) ) . y as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( WebPYUVABuffer ) , "::" , stringify ! ( y ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPYUVABuffer > ( ) ) ) . u as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( WebPYUVABuffer ) , "::" , stringify ! ( u ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPYUVABuffer > ( ) ) ) . v as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( WebPYUVABuffer ) , "::" , stringify ! ( v ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPYUVABuffer > ( ) ) ) . a as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( WebPYUVABuffer ) , "::" , stringify ! ( a ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPYUVABuffer > ( ) ) ) . y_stride as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( WebPYUVABuffer ) , "::" , stringify ! ( y_stride ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPYUVABuffer > ( ) ) ) . u_stride as * const _ as usize } , 36usize , concat ! ( "Offset of field: " , stringify ! ( WebPYUVABuffer ) , "::" , stringify ! ( u_stride ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPYUVABuffer > ( ) ) ) . v_stride as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( WebPYUVABuffer ) , "::" , stringify ! ( v_stride ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPYUVABuffer > ( ) ) ) . a_stride as * const _ as usize } , 44usize , concat ! ( "Offset of field: " , stringify ! ( WebPYUVABuffer ) , "::" , stringify ! ( a_stride ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPYUVABuffer > ( ) ) ) . y_size as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( WebPYUVABuffer ) , "::" , stringify ! ( y_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPYUVABuffer > ( ) ) ) . u_size as * const _ as usize } , 56usize , concat ! ( "Offset of field: " , stringify ! ( WebPYUVABuffer ) , "::" , stringify ! ( u_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPYUVABuffer > ( ) ) ) . v_size as * const _ as usize } , 64usize , concat ! ( "Offset of field: " , stringify ! ( WebPYUVABuffer ) , "::" , stringify ! ( v_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPYUVABuffer > ( ) ) ) . a_size as * const _ as usize } , 72usize , concat ! ( "Offset of field: " , stringify ! ( WebPYUVABuffer ) , "::" , stringify ! ( a_size ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub struct WebPDecBuffer { pub colorspace : WEBP_CSP_MODE , pub width : :: std :: os :: raw :: c_int , pub height : :: std :: os :: raw :: c_int , pub is_external_memory : :: std :: os :: raw :: c_int , pub u : WebPDecBuffer__bindgen_ty_1 , pub pad : [ u32 ; 4usize ] , pub private_memory : * mut u8 , } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union WebPDecBuffer__bindgen_ty_1 { pub RGBA : WebPRGBABuffer , pub YUVA : WebPYUVABuffer , _bindgen_union_align : [ u64 ; 10usize ] , } # [ test ] fn bindgen_test_layout_WebPDecBuffer__bindgen_ty_1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < WebPDecBuffer__bindgen_ty_1 > ( ) , 80usize , concat ! ( "Size of: " , stringify ! ( WebPDecBuffer__bindgen_ty_1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < WebPDecBuffer__bindgen_ty_1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( WebPDecBuffer__bindgen_ty_1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecBuffer__bindgen_ty_1 > ( ) ) ) . RGBA as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecBuffer__bindgen_ty_1 ) , "::" , stringify ! ( RGBA ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecBuffer__bindgen_ty_1 > ( ) ) ) . YUVA as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecBuffer__bindgen_ty_1 ) , "::" , stringify ! ( YUVA ) ) ) ; } # [ test ] fn bindgen_test_layout_WebPDecBuffer ( ) { assert_eq ! ( :: std :: mem :: size_of :: < WebPDecBuffer > ( ) , 120usize , concat ! ( "Size of: " , stringify ! ( WebPDecBuffer ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < WebPDecBuffer > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( WebPDecBuffer ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecBuffer > ( ) ) ) . colorspace as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecBuffer ) , "::" , stringify ! ( colorspace ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecBuffer > ( ) ) ) . width as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecBuffer ) , "::" , stringify ! ( width ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecBuffer > ( ) ) ) . height as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecBuffer ) , "::" , stringify ! ( height ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecBuffer > ( ) ) ) . is_external_memory as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecBuffer ) , "::" , stringify ! ( is_external_memory ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecBuffer > ( ) ) ) . u as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecBuffer ) , "::" , stringify ! ( u ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecBuffer > ( ) ) ) . pad as * const _ as usize } , 96usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecBuffer ) , "::" , stringify ! ( pad ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecBuffer > ( ) ) ) . private_memory as * const _ as usize } , 112usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecBuffer ) , "::" , stringify ! ( private_memory ) ) ) ; } extern "C" { pub fn WebPInitDecBufferInternal ( arg1 : * mut WebPDecBuffer , arg2 : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPFreeDecBuffer ( buffer : * mut WebPDecBuffer ) ; } pub const VP8StatusCode_VP8_STATUS_OK : VP8StatusCode = 0 ; pub const VP8StatusCode_VP8_STATUS_OUT_OF_MEMORY : VP8StatusCode = 1 ; pub const VP8StatusCode_VP8_STATUS_INVALID_PARAM : VP8StatusCode = 2 ; pub const VP8StatusCode_VP8_STATUS_BITSTREAM_ERROR : VP8StatusCode = 3 ; pub const VP8StatusCode_VP8_STATUS_UNSUPPORTED_FEATURE : VP8StatusCode = 4 ; pub const VP8StatusCode_VP8_STATUS_SUSPENDED : VP8StatusCode = 5 ; pub const VP8StatusCode_VP8_STATUS_USER_ABORT : VP8StatusCode = 6 ; pub const VP8StatusCode_VP8_STATUS_NOT_ENOUGH_DATA : VP8StatusCode = 7 ; pub type VP8StatusCode = u32 ; extern "C" { pub fn WebPINewDecoder ( output_buffer : * mut WebPDecBuffer ) -> * mut WebPIDecoder ; } extern "C" { pub fn WebPINewRGB ( csp : WEBP_CSP_MODE , output_buffer : * mut u8 , output_buffer_size : usize , output_stride : :: std :: os :: raw :: c_int ) -> * mut WebPIDecoder ; } extern "C" { pub fn WebPINewYUVA ( luma : * mut u8 , luma_size : usize , luma_stride : :: std :: os :: raw :: c_int , u : * mut u8 , u_size : usize , u_stride : :: std :: os :: raw :: c_int , v : * mut u8 , v_size : usize , v_stride : :: std :: os :: raw :: c_int , a : * mut u8 , a_size : usize , a_stride : :: std :: os :: raw :: c_int ) -> * mut WebPIDecoder ; } extern "C" { pub fn WebPINewYUV ( luma : * mut u8 , luma_size : usize , luma_stride : :: std :: os :: raw :: c_int , u : * mut u8 , u_size : usize , u_stride : :: std :: os :: raw :: c_int , v : * mut u8 , v_size : usize , v_stride : :: std :: os :: raw :: c_int ) -> * mut WebPIDecoder ; } extern "C" { pub fn WebPIDelete ( idec : * mut WebPIDecoder ) ; } extern "C" { pub fn WebPIAppend ( idec : * mut WebPIDecoder , data : * const u8 , data_size : usize ) -> VP8StatusCode ; } extern "C" { pub fn WebPIUpdate ( idec : * mut WebPIDecoder , data : * const u8 , data_size : usize ) -> VP8StatusCode ; } extern "C" { pub fn WebPIDecGetRGB ( idec : * const WebPIDecoder , last_y : * mut :: std :: os :: raw :: c_int , width : * mut :: std :: os :: raw :: c_int , height : * mut :: std :: os :: raw :: c_int , stride : * mut :: std :: os :: raw :: c_int ) -> * mut u8 ; } extern "C" { pub fn WebPIDecGetYUVA ( idec : * const WebPIDecoder , last_y : * mut :: std :: os :: raw :: c_int , u : * mut * mut u8 , v : * mut * mut u8 , a : * mut * mut u8 , width : * mut :: std :: os :: raw :: c_int , height : * mut :: std :: os :: raw :: c_int , stride : * mut :: std :: os :: raw :: c_int , uv_stride : * mut :: std :: os :: raw :: c_int , a_stride : * mut :: std :: os :: raw :: c_int ) -> * mut u8 ; } extern "C" { pub fn WebPIDecodedArea ( idec : * const WebPIDecoder , left : * mut :: std :: os :: raw :: c_int , top : * mut :: std :: os :: raw :: c_int , width : * mut :: std :: os :: raw :: c_int , height : * mut :: std :: os :: raw :: c_int ) -> * const WebPDecBuffer ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct WebPBitstreamFeatures { pub width : :: std :: os :: raw :: c_int , pub height : :: std :: os :: raw :: c_int , pub has_alpha : :: std :: os :: raw :: c_int , pub has_animation : :: std :: os :: raw :: c_int , pub format : :: std :: os :: raw :: c_int , pub pad : [ u32 ; 5usize ] , } # [ test ] fn bindgen_test_layout_WebPBitstreamFeatures ( ) { assert_eq ! ( :: std :: mem :: size_of :: < WebPBitstreamFeatures > ( ) , 40usize , concat ! ( "Size of: " , stringify ! ( WebPBitstreamFeatures ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < WebPBitstreamFeatures > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( WebPBitstreamFeatures ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPBitstreamFeatures > ( ) ) ) . width as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( WebPBitstreamFeatures ) , "::" , stringify ! ( width ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPBitstreamFeatures > ( ) ) ) . height as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( WebPBitstreamFeatures ) , "::" , stringify ! ( height ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPBitstreamFeatures > ( ) ) ) . has_alpha as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( WebPBitstreamFeatures ) , "::" , stringify ! ( has_alpha ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPBitstreamFeatures > ( ) ) ) . has_animation as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( WebPBitstreamFeatures ) , "::" , stringify ! ( has_animation ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPBitstreamFeatures > ( ) ) ) . format as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( WebPBitstreamFeatures ) , "::" , stringify ! ( format ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPBitstreamFeatures > ( ) ) ) . pad as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( WebPBitstreamFeatures ) , "::" , stringify ! ( pad ) ) ) ; } extern "C" { pub fn WebPGetFeaturesInternal ( arg1 : * const u8 , arg2 : usize , arg3 : * mut WebPBitstreamFeatures , arg4 : :: std :: os :: raw :: c_int ) -> VP8StatusCode ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct WebPDecoderOptions { pub bypass_filtering : :: std :: os :: raw :: c_int , pub no_fancy_upsampling : :: std :: os :: raw :: c_int , pub use_cropping : :: std :: os :: raw :: c_int , pub crop_left : :: std :: os :: raw :: c_int , pub crop_top : :: std :: os :: raw :: c_int , pub crop_width : :: std :: os :: raw :: c_int , pub crop_height : :: std :: os :: raw :: c_int , pub use_scaling : :: std :: os :: raw :: c_int , pub scaled_width : :: std :: os :: raw :: c_int , pub scaled_height : :: std :: os :: raw :: c_int , pub use_threads : :: std :: os :: raw :: c_int , pub dithering_strength : :: std :: os :: raw :: c_int , pub flip : :: std :: os :: raw :: c_int , pub alpha_dithering_strength : :: std :: os :: raw :: c_int , pub pad : [ u32 ; 5usize ] , } # [ test ] fn bindgen_test_layout_WebPDecoderOptions ( ) { assert_eq ! ( :: std :: mem :: size_of :: < WebPDecoderOptions > ( ) , 76usize , concat ! ( "Size of: " , stringify ! ( WebPDecoderOptions ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < WebPDecoderOptions > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( WebPDecoderOptions ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderOptions > ( ) ) ) . bypass_filtering as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderOptions ) , "::" , stringify ! ( bypass_filtering ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderOptions > ( ) ) ) . no_fancy_upsampling as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderOptions ) , "::" , stringify ! ( no_fancy_upsampling ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderOptions > ( ) ) ) . use_cropping as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderOptions ) , "::" , stringify ! ( use_cropping ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderOptions > ( ) ) ) . crop_left as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderOptions ) , "::" , stringify ! ( crop_left ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderOptions > ( ) ) ) . crop_top as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderOptions ) , "::" , stringify ! ( crop_top ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderOptions > ( ) ) ) . crop_width as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderOptions ) , "::" , stringify ! ( crop_width ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderOptions > ( ) ) ) . crop_height as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderOptions ) , "::" , stringify ! ( crop_height ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderOptions > ( ) ) ) . use_scaling as * const _ as usize } , 28usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderOptions ) , "::" , stringify ! ( use_scaling ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderOptions > ( ) ) ) . scaled_width as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderOptions ) , "::" , stringify ! ( scaled_width ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderOptions > ( ) ) ) . scaled_height as * const _ as usize } , 36usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderOptions ) , "::" , stringify ! ( scaled_height ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderOptions > ( ) ) ) . use_threads as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderOptions ) , "::" , stringify ! ( use_threads ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderOptions > ( ) ) ) . dithering_strength as * const _ as usize } , 44usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderOptions ) , "::" , stringify ! ( dithering_strength ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderOptions > ( ) ) ) . flip as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderOptions ) , "::" , stringify ! ( flip ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderOptions > ( ) ) ) . alpha_dithering_strength as * const _ as usize } , 52usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderOptions ) , "::" , stringify ! ( alpha_dithering_strength ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderOptions > ( ) ) ) . pad as * const _ as usize } , 56usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderOptions ) , "::" , stringify ! ( pad ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub struct WebPDecoderConfig { pub input : WebPBitstreamFeatures , pub output : WebPDecBuffer , pub options : WebPDecoderOptions , } # [ test ] fn bindgen_test_layout_WebPDecoderConfig ( ) { assert_eq ! ( :: std :: mem :: size_of :: < WebPDecoderConfig > ( ) , 240usize , concat ! ( "Size of: " , stringify ! ( WebPDecoderConfig ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < WebPDecoderConfig > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( WebPDecoderConfig ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderConfig > ( ) ) ) . input as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderConfig ) , "::" , stringify ! ( input ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderConfig > ( ) ) ) . output as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderConfig ) , "::" , stringify ! ( output ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < WebPDecoderConfig > ( ) ) ) . options as * const _ as usize } , 160usize , concat ! ( "Offset of field: " , stringify ! ( WebPDecoderConfig ) , "::" , stringify ! ( options ) ) ) ; } extern "C" { pub fn WebPInitDecoderConfigInternal ( arg1 : * mut WebPDecoderConfig , arg2 : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn WebPIDecode ( data : * const u8 , data_size : usize , config : * mut WebPDecoderConfig ) -> * mut WebPIDecoder ; } extern "C" { pub fn WebPDecode ( data : * const u8 , data_size : usize , config : * mut WebPDecoderConfig ) -> VP8StatusCode ; }