oodle_sys/
bindings.rs

1/* automatically generated by rust-bindgen 0.69.2 */
2
3pub const OODLE2_PUBLIC_HEADER: u32 = 1;
4pub const OODLE2BASE_PUBLIC_HEADER: u32 = 1;
5pub const _STDINT_H: u32 = 1;
6pub const _FEATURES_H: u32 = 1;
7pub const _DEFAULT_SOURCE: u32 = 1;
8pub const __GLIBC_USE_ISOC2X: u32 = 0;
9pub const __USE_ISOC11: u32 = 1;
10pub const __USE_ISOC99: u32 = 1;
11pub const __USE_ISOC95: u32 = 1;
12pub const __USE_POSIX_IMPLICITLY: u32 = 1;
13pub const _POSIX_SOURCE: u32 = 1;
14pub const _POSIX_C_SOURCE: u32 = 200809;
15pub const __USE_POSIX: u32 = 1;
16pub const __USE_POSIX2: u32 = 1;
17pub const __USE_POSIX199309: u32 = 1;
18pub const __USE_POSIX199506: u32 = 1;
19pub const __USE_XOPEN2K: u32 = 1;
20pub const __USE_XOPEN2K8: u32 = 1;
21pub const _ATFILE_SOURCE: u32 = 1;
22pub const __WORDSIZE: u32 = 64;
23pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1;
24pub const __SYSCALL_WORDSIZE: u32 = 64;
25pub const __TIMESIZE: u32 = 64;
26pub const __USE_MISC: u32 = 1;
27pub const __USE_ATFILE: u32 = 1;
28pub const __USE_FORTIFY_LEVEL: u32 = 0;
29pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0;
30pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0;
31pub const _STDC_PREDEF_H: u32 = 1;
32pub const __STDC_IEC_559__: u32 = 1;
33pub const __STDC_IEC_60559_BFP__: u32 = 201404;
34pub const __STDC_IEC_559_COMPLEX__: u32 = 1;
35pub const __STDC_IEC_60559_COMPLEX__: u32 = 201404;
36pub const __STDC_ISO_10646__: u32 = 201706;
37pub const __GNU_LIBRARY__: u32 = 6;
38pub const __GLIBC__: u32 = 2;
39pub const __GLIBC_MINOR__: u32 = 36;
40pub const _SYS_CDEFS_H: u32 = 1;
41pub const __glibc_c99_flexarr_available: u32 = 1;
42pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0;
43pub const __HAVE_GENERIC_SELECTION: u32 = 1;
44pub const __GLIBC_USE_LIB_EXT2: u32 = 0;
45pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0;
46pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0;
47pub const __GLIBC_USE_IEC_60559_EXT: u32 = 0;
48pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0;
49pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0;
50pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0;
51pub const _BITS_TYPES_H: u32 = 1;
52pub const _BITS_TYPESIZES_H: u32 = 1;
53pub const __OFF_T_MATCHES_OFF64_T: u32 = 1;
54pub const __INO_T_MATCHES_INO64_T: u32 = 1;
55pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1;
56pub const __STATFS_MATCHES_STATFS64: u32 = 1;
57pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: u32 = 1;
58pub const __FD_SETSIZE: u32 = 1024;
59pub const _BITS_TIME64_H: u32 = 1;
60pub const _BITS_WCHAR_H: u32 = 1;
61pub const _BITS_STDINT_INTN_H: u32 = 1;
62pub const _BITS_STDINT_UINTN_H: u32 = 1;
63pub const INT8_MIN: i32 = -128;
64pub const INT16_MIN: i32 = -32768;
65pub const INT32_MIN: i32 = -2147483648;
66pub const INT8_MAX: u32 = 127;
67pub const INT16_MAX: u32 = 32767;
68pub const INT32_MAX: u32 = 2147483647;
69pub const UINT8_MAX: u32 = 255;
70pub const UINT16_MAX: u32 = 65535;
71pub const UINT32_MAX: u32 = 4294967295;
72pub const INT_LEAST8_MIN: i32 = -128;
73pub const INT_LEAST16_MIN: i32 = -32768;
74pub const INT_LEAST32_MIN: i32 = -2147483648;
75pub const INT_LEAST8_MAX: u32 = 127;
76pub const INT_LEAST16_MAX: u32 = 32767;
77pub const INT_LEAST32_MAX: u32 = 2147483647;
78pub const UINT_LEAST8_MAX: u32 = 255;
79pub const UINT_LEAST16_MAX: u32 = 65535;
80pub const UINT_LEAST32_MAX: u32 = 4294967295;
81pub const INT_FAST8_MIN: i32 = -128;
82pub const INT_FAST16_MIN: i64 = -9223372036854775808;
83pub const INT_FAST32_MIN: i64 = -9223372036854775808;
84pub const INT_FAST8_MAX: u32 = 127;
85pub const INT_FAST16_MAX: u64 = 9223372036854775807;
86pub const INT_FAST32_MAX: u64 = 9223372036854775807;
87pub const UINT_FAST8_MAX: u32 = 255;
88pub const UINT_FAST16_MAX: i32 = -1;
89pub const UINT_FAST32_MAX: i32 = -1;
90pub const INTPTR_MIN: i64 = -9223372036854775808;
91pub const INTPTR_MAX: u64 = 9223372036854775807;
92pub const UINTPTR_MAX: i32 = -1;
93pub const PTRDIFF_MIN: i64 = -9223372036854775808;
94pub const PTRDIFF_MAX: u64 = 9223372036854775807;
95pub const SIG_ATOMIC_MIN: i32 = -2147483648;
96pub const SIG_ATOMIC_MAX: u32 = 2147483647;
97pub const SIZE_MAX: i32 = -1;
98pub const WINT_MIN: u32 = 0;
99pub const WINT_MAX: u32 = 4294967295;
100pub const OOCOPYRIGHT: &[u8; 46] = b"Copyright (C) 1994-2023, Epic Games Tools LLC\0";
101pub const OODLE2_PUBLIC_CORE_DEFINES: u32 = 1;
102pub const NULL: u32 = 0;
103pub const OODLE_JOB_MAX_DEPENDENCIES: u32 = 4;
104pub const OODLE_JOB_NULL_HANDLE: u32 = 0;
105pub const OODLE2_VERSION_MAJOR: u32 = 9;
106pub const OODLE2_VERSION_MINOR: u32 = 10;
107pub const OodleVersion: &[u8; 7] = b"2.9.10\0";
108pub const OODLELZ_LOCALDICTIONARYSIZE_MAX: u32 = 1073741824;
109pub const OODLELZ_SPACESPEEDTRADEOFFBYTES_DEFAULT: u32 = 256;
110pub const OODLELZ_BLOCK_LEN: u32 = 262144;
111pub const OODLELZ_BLOCK_MAXIMUM_EXPANSION: u32 = 2;
112pub const OODLELZ_BLOCK_MAX_COMPLEN: u32 = 262146;
113pub const OODLELZ_QUANTUM_LEN: u32 = 16384;
114pub const OODLELZ_QUANTUM_MAXIMUM_EXPANSION: u32 = 5;
115pub const OODLELZ_QUANTUM_MAX_COMPLEN: u32 = 16389;
116pub const OODLELZ_SEEKCHUNKLEN_MIN: u32 = 262144;
117pub const OODLELZ_SEEKCHUNKLEN_MAX: u32 = 536870912;
118pub const OODLELZ_FAILED: u32 = 0;
119pub const OODLELZ_SEEKPOINTCOUNT_DEFAULT: u32 = 16;
120pub const OODLELZ_SCRATCH_MEM_NO_BOUND: i32 = -1;
121pub const OODLECORE_PLUGIN_JOB_MAX_DEPENDENCIES: u32 = 4;
122pub type __u_char = ::std::os::raw::c_uchar;
123pub type __u_short = ::std::os::raw::c_ushort;
124pub type __u_int = ::std::os::raw::c_uint;
125pub type __u_long = ::std::os::raw::c_ulong;
126pub type __int8_t = ::std::os::raw::c_schar;
127pub type __uint8_t = ::std::os::raw::c_uchar;
128pub type __int16_t = ::std::os::raw::c_short;
129pub type __uint16_t = ::std::os::raw::c_ushort;
130pub type __int32_t = ::std::os::raw::c_int;
131pub type __uint32_t = ::std::os::raw::c_uint;
132pub type __int64_t = ::std::os::raw::c_long;
133pub type __uint64_t = ::std::os::raw::c_ulong;
134pub type __int_least8_t = __int8_t;
135pub type __uint_least8_t = __uint8_t;
136pub type __int_least16_t = __int16_t;
137pub type __uint_least16_t = __uint16_t;
138pub type __int_least32_t = __int32_t;
139pub type __uint_least32_t = __uint32_t;
140pub type __int_least64_t = __int64_t;
141pub type __uint_least64_t = __uint64_t;
142pub type __quad_t = ::std::os::raw::c_long;
143pub type __u_quad_t = ::std::os::raw::c_ulong;
144pub type __intmax_t = ::std::os::raw::c_long;
145pub type __uintmax_t = ::std::os::raw::c_ulong;
146pub type __dev_t = ::std::os::raw::c_ulong;
147pub type __uid_t = ::std::os::raw::c_uint;
148pub type __gid_t = ::std::os::raw::c_uint;
149pub type __ino_t = ::std::os::raw::c_ulong;
150pub type __ino64_t = ::std::os::raw::c_ulong;
151pub type __mode_t = ::std::os::raw::c_uint;
152pub type __nlink_t = ::std::os::raw::c_ulong;
153pub type __off_t = ::std::os::raw::c_long;
154pub type __off64_t = ::std::os::raw::c_long;
155pub type __pid_t = ::std::os::raw::c_int;
156#[repr(C)]
157#[derive(Debug, Copy, Clone)]
158pub struct __fsid_t {
159    pub __val: [::std::os::raw::c_int; 2usize],
160}
161#[test]
162fn bindgen_test_layout___fsid_t() {
163    const UNINIT: ::std::mem::MaybeUninit<__fsid_t> = ::std::mem::MaybeUninit::uninit();
164    let ptr = UNINIT.as_ptr();
165    assert_eq!(
166        ::std::mem::size_of::<__fsid_t>(),
167        8usize,
168        concat!("Size of: ", stringify!(__fsid_t))
169    );
170    assert_eq!(
171        ::std::mem::align_of::<__fsid_t>(),
172        4usize,
173        concat!("Alignment of ", stringify!(__fsid_t))
174    );
175    assert_eq!(
176        unsafe { ::std::ptr::addr_of!((*ptr).__val) as usize - ptr as usize },
177        0usize,
178        concat!(
179            "Offset of field: ",
180            stringify!(__fsid_t),
181            "::",
182            stringify!(__val)
183        )
184    );
185}
186pub type __clock_t = ::std::os::raw::c_long;
187pub type __rlim_t = ::std::os::raw::c_ulong;
188pub type __rlim64_t = ::std::os::raw::c_ulong;
189pub type __id_t = ::std::os::raw::c_uint;
190pub type __time_t = ::std::os::raw::c_long;
191pub type __useconds_t = ::std::os::raw::c_uint;
192pub type __suseconds_t = ::std::os::raw::c_long;
193pub type __suseconds64_t = ::std::os::raw::c_long;
194pub type __daddr_t = ::std::os::raw::c_int;
195pub type __key_t = ::std::os::raw::c_int;
196pub type __clockid_t = ::std::os::raw::c_int;
197pub type __timer_t = *mut ::std::os::raw::c_void;
198pub type __blksize_t = ::std::os::raw::c_long;
199pub type __blkcnt_t = ::std::os::raw::c_long;
200pub type __blkcnt64_t = ::std::os::raw::c_long;
201pub type __fsblkcnt_t = ::std::os::raw::c_ulong;
202pub type __fsblkcnt64_t = ::std::os::raw::c_ulong;
203pub type __fsfilcnt_t = ::std::os::raw::c_ulong;
204pub type __fsfilcnt64_t = ::std::os::raw::c_ulong;
205pub type __fsword_t = ::std::os::raw::c_long;
206pub type __ssize_t = ::std::os::raw::c_long;
207pub type __syscall_slong_t = ::std::os::raw::c_long;
208pub type __syscall_ulong_t = ::std::os::raw::c_ulong;
209pub type __loff_t = __off64_t;
210pub type __caddr_t = *mut ::std::os::raw::c_char;
211pub type __intptr_t = ::std::os::raw::c_long;
212pub type __socklen_t = ::std::os::raw::c_uint;
213pub type __sig_atomic_t = ::std::os::raw::c_int;
214pub type int_least8_t = __int_least8_t;
215pub type int_least16_t = __int_least16_t;
216pub type int_least32_t = __int_least32_t;
217pub type int_least64_t = __int_least64_t;
218pub type uint_least8_t = __uint_least8_t;
219pub type uint_least16_t = __uint_least16_t;
220pub type uint_least32_t = __uint_least32_t;
221pub type uint_least64_t = __uint_least64_t;
222pub type int_fast8_t = ::std::os::raw::c_schar;
223pub type int_fast16_t = ::std::os::raw::c_long;
224pub type int_fast32_t = ::std::os::raw::c_long;
225pub type int_fast64_t = ::std::os::raw::c_long;
226pub type uint_fast8_t = ::std::os::raw::c_uchar;
227pub type uint_fast16_t = ::std::os::raw::c_ulong;
228pub type uint_fast32_t = ::std::os::raw::c_ulong;
229pub type uint_fast64_t = ::std::os::raw::c_ulong;
230pub type intmax_t = __intmax_t;
231pub type uintmax_t = __uintmax_t;
232pub type OO_S8 = i8;
233pub type OO_U8 = u8;
234pub type OO_S16 = i16;
235pub type OO_U16 = u16;
236pub type OO_S32 = i32;
237pub type OO_U32 = u32;
238pub type OO_S64 = i64;
239pub type OO_U64 = u64;
240pub type OO_F32 = f32;
241pub type OO_F64 = f64;
242pub type OO_SINTa = isize;
243pub type OO_UINTa = usize;
244pub type OO_BOOL = i32;
245pub type t_OodleFPVoidVoid = ::std::option::Option<unsafe extern "C" fn()>;
246pub type t_OodleFPVoidVoidStar =
247    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
248pub const OodleLZ_Verbosity_OodleLZ_Verbosity_None: OodleLZ_Verbosity = 0;
249pub const OodleLZ_Verbosity_OodleLZ_Verbosity_Minimal: OodleLZ_Verbosity = 1;
250pub const OodleLZ_Verbosity_OodleLZ_Verbosity_Some: OodleLZ_Verbosity = 2;
251pub const OodleLZ_Verbosity_OodleLZ_Verbosity_Lots: OodleLZ_Verbosity = 3;
252pub const OodleLZ_Verbosity_OodleLZ_Verbosity_Force32: OodleLZ_Verbosity = 1073741824;
253pub type OodleLZ_Verbosity = ::std::os::raw::c_uint;
254pub type _dummy_array61 = [::std::os::raw::c_char; 1usize];
255pub const OodleLZ_Compressor_OodleLZ_Compressor_Invalid: OodleLZ_Compressor = -1;
256pub const OodleLZ_Compressor_OodleLZ_Compressor_None: OodleLZ_Compressor = 3;
257pub const OodleLZ_Compressor_OodleLZ_Compressor_Kraken: OodleLZ_Compressor = 8;
258pub const OodleLZ_Compressor_OodleLZ_Compressor_Leviathan: OodleLZ_Compressor = 13;
259pub const OodleLZ_Compressor_OodleLZ_Compressor_Mermaid: OodleLZ_Compressor = 9;
260pub const OodleLZ_Compressor_OodleLZ_Compressor_Selkie: OodleLZ_Compressor = 11;
261pub const OodleLZ_Compressor_OodleLZ_Compressor_Hydra: OodleLZ_Compressor = 12;
262pub const OodleLZ_Compressor_OodleLZ_Compressor_Count: OodleLZ_Compressor = 14;
263pub const OodleLZ_Compressor_OodleLZ_Compressor_Force32: OodleLZ_Compressor = 1073741824;
264pub type OodleLZ_Compressor = ::std::os::raw::c_int;
265pub type _dummy_array109 = [::std::os::raw::c_char; 1usize];
266pub const OodleLZ_PackedRawOverlap_OodleLZ_PackedRawOverlap_No: OodleLZ_PackedRawOverlap = 0;
267pub const OodleLZ_PackedRawOverlap_OodleLZ_PackedRawOverlap_Yes: OodleLZ_PackedRawOverlap = 1;
268pub const OodleLZ_PackedRawOverlap_OodleLZ_PackedRawOverlap_Force32: OodleLZ_PackedRawOverlap =
269    1073741824;
270pub type OodleLZ_PackedRawOverlap = ::std::os::raw::c_uint;
271pub const OodleLZ_CheckCRC_OodleLZ_CheckCRC_No: OodleLZ_CheckCRC = 0;
272pub const OodleLZ_CheckCRC_OodleLZ_CheckCRC_Yes: OodleLZ_CheckCRC = 1;
273pub const OodleLZ_CheckCRC_OodleLZ_CheckCRC_Force32: OodleLZ_CheckCRC = 1073741824;
274pub type OodleLZ_CheckCRC = ::std::os::raw::c_uint;
275pub const OodleLZ_Profile_OodleLZ_Profile_Main: OodleLZ_Profile = 0;
276pub const OodleLZ_Profile_OodleLZ_Profile_Reduced: OodleLZ_Profile = 1;
277pub const OodleLZ_Profile_OodleLZ_Profile_Force32: OodleLZ_Profile = 1073741824;
278pub type OodleLZ_Profile = ::std::os::raw::c_uint;
279pub type _dummy_array149 = [::std::os::raw::c_char; 1usize];
280pub const OodleDecompressCallbackRet_OodleDecompressCallbackRet_Continue:
281    OodleDecompressCallbackRet = 0;
282pub const OodleDecompressCallbackRet_OodleDecompressCallbackRet_Cancel: OodleDecompressCallbackRet =
283    1;
284pub const OodleDecompressCallbackRet_OodleDecompressCallbackRet_Invalid:
285    OodleDecompressCallbackRet = 2;
286pub const OodleDecompressCallbackRet_OodleDecompressCallbackRet_Force32:
287    OodleDecompressCallbackRet = 1073741824;
288pub type OodleDecompressCallbackRet = ::std::os::raw::c_uint;
289pub type OodleDecompressCallback = ::std::option::Option<
290    unsafe extern "C" fn(
291        userdata: *mut ::std::os::raw::c_void,
292        rawBuf: *const OO_U8,
293        rawLen: OO_SINTa,
294        compBuf: *const OO_U8,
295        compBufferSize: OO_SINTa,
296        rawDone: OO_SINTa,
297        compUsed: OO_SINTa,
298    ) -> OodleDecompressCallbackRet,
299>;
300pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_None: OodleLZ_CompressionLevel = 0;
301pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_SuperFast: OodleLZ_CompressionLevel = 1;
302pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_VeryFast: OodleLZ_CompressionLevel = 2;
303pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_Fast: OodleLZ_CompressionLevel = 3;
304pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_Normal: OodleLZ_CompressionLevel = 4;
305pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_Optimal1: OodleLZ_CompressionLevel = 5;
306pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_Optimal2: OodleLZ_CompressionLevel = 6;
307pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_Optimal3: OodleLZ_CompressionLevel = 7;
308pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_Optimal4: OodleLZ_CompressionLevel = 8;
309pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_Optimal5: OodleLZ_CompressionLevel = 9;
310pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_HyperFast1: OodleLZ_CompressionLevel =
311    -1;
312pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_HyperFast2: OodleLZ_CompressionLevel =
313    -2;
314pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_HyperFast3: OodleLZ_CompressionLevel =
315    -3;
316pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_HyperFast4: OodleLZ_CompressionLevel =
317    -4;
318pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_HyperFast: OodleLZ_CompressionLevel =
319    -1;
320pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_Optimal: OodleLZ_CompressionLevel = 6;
321pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_Max: OodleLZ_CompressionLevel = 9;
322pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_Min: OodleLZ_CompressionLevel = -4;
323pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_Force32: OodleLZ_CompressionLevel =
324    1073741824;
325pub const OodleLZ_CompressionLevel_OodleLZ_CompressionLevel_Invalid: OodleLZ_CompressionLevel =
326    1073741824;
327pub type OodleLZ_CompressionLevel = ::std::os::raw::c_int;
328pub type _dummy_array232 = [::std::os::raw::c_char; 1usize];
329pub const OodleLZ_Jobify_OodleLZ_Jobify_Default: OodleLZ_Jobify = 0;
330pub const OodleLZ_Jobify_OodleLZ_Jobify_Disable: OodleLZ_Jobify = 1;
331pub const OodleLZ_Jobify_OodleLZ_Jobify_Normal: OodleLZ_Jobify = 2;
332pub const OodleLZ_Jobify_OodleLZ_Jobify_Aggressive: OodleLZ_Jobify = 3;
333pub const OodleLZ_Jobify_OodleLZ_Jobify_Count: OodleLZ_Jobify = 4;
334pub const OodleLZ_Jobify_OodleLZ_Jobify_Force32: OodleLZ_Jobify = 1073741824;
335pub type OodleLZ_Jobify = ::std::os::raw::c_uint;
336#[repr(C, packed)]
337#[derive(Debug, Copy, Clone)]
338pub struct OodleLZ_CompressOptions {
339    pub unused_was_verbosity: OO_U32,
340    pub minMatchLen: OO_S32,
341    pub seekChunkReset: OO_BOOL,
342    pub seekChunkLen: OO_S32,
343    pub profile: OodleLZ_Profile,
344    pub dictionarySize: OO_S32,
345    pub spaceSpeedTradeoffBytes: OO_S32,
346    pub unused_was_maxHuffmansPerChunk: OO_S32,
347    pub sendQuantumCRCs: OO_BOOL,
348    pub maxLocalDictionarySize: OO_S32,
349    pub makeLongRangeMatcher: OO_BOOL,
350    pub matchTableSizeLog2: OO_S32,
351    pub jobify: OodleLZ_Jobify,
352    pub jobifyUserPtr: *mut ::std::os::raw::c_void,
353    pub farMatchMinLen: OO_S32,
354    pub farMatchOffsetLog2: OO_S32,
355    pub reserved: [OO_U32; 4usize],
356}
357#[test]
358fn bindgen_test_layout_OodleLZ_CompressOptions() {
359    const UNINIT: ::std::mem::MaybeUninit<OodleLZ_CompressOptions> =
360        ::std::mem::MaybeUninit::uninit();
361    let ptr = UNINIT.as_ptr();
362    assert_eq!(
363        ::std::mem::size_of::<OodleLZ_CompressOptions>(),
364        84usize,
365        concat!("Size of: ", stringify!(OodleLZ_CompressOptions))
366    );
367    assert_eq!(
368        ::std::mem::align_of::<OodleLZ_CompressOptions>(),
369        1usize,
370        concat!("Alignment of ", stringify!(OodleLZ_CompressOptions))
371    );
372    assert_eq!(
373        unsafe { ::std::ptr::addr_of!((*ptr).unused_was_verbosity) as usize - ptr as usize },
374        0usize,
375        concat!(
376            "Offset of field: ",
377            stringify!(OodleLZ_CompressOptions),
378            "::",
379            stringify!(unused_was_verbosity)
380        )
381    );
382    assert_eq!(
383        unsafe { ::std::ptr::addr_of!((*ptr).minMatchLen) as usize - ptr as usize },
384        4usize,
385        concat!(
386            "Offset of field: ",
387            stringify!(OodleLZ_CompressOptions),
388            "::",
389            stringify!(minMatchLen)
390        )
391    );
392    assert_eq!(
393        unsafe { ::std::ptr::addr_of!((*ptr).seekChunkReset) as usize - ptr as usize },
394        8usize,
395        concat!(
396            "Offset of field: ",
397            stringify!(OodleLZ_CompressOptions),
398            "::",
399            stringify!(seekChunkReset)
400        )
401    );
402    assert_eq!(
403        unsafe { ::std::ptr::addr_of!((*ptr).seekChunkLen) as usize - ptr as usize },
404        12usize,
405        concat!(
406            "Offset of field: ",
407            stringify!(OodleLZ_CompressOptions),
408            "::",
409            stringify!(seekChunkLen)
410        )
411    );
412    assert_eq!(
413        unsafe { ::std::ptr::addr_of!((*ptr).profile) as usize - ptr as usize },
414        16usize,
415        concat!(
416            "Offset of field: ",
417            stringify!(OodleLZ_CompressOptions),
418            "::",
419            stringify!(profile)
420        )
421    );
422    assert_eq!(
423        unsafe { ::std::ptr::addr_of!((*ptr).dictionarySize) as usize - ptr as usize },
424        20usize,
425        concat!(
426            "Offset of field: ",
427            stringify!(OodleLZ_CompressOptions),
428            "::",
429            stringify!(dictionarySize)
430        )
431    );
432    assert_eq!(
433        unsafe { ::std::ptr::addr_of!((*ptr).spaceSpeedTradeoffBytes) as usize - ptr as usize },
434        24usize,
435        concat!(
436            "Offset of field: ",
437            stringify!(OodleLZ_CompressOptions),
438            "::",
439            stringify!(spaceSpeedTradeoffBytes)
440        )
441    );
442    assert_eq!(
443        unsafe {
444            ::std::ptr::addr_of!((*ptr).unused_was_maxHuffmansPerChunk) as usize - ptr as usize
445        },
446        28usize,
447        concat!(
448            "Offset of field: ",
449            stringify!(OodleLZ_CompressOptions),
450            "::",
451            stringify!(unused_was_maxHuffmansPerChunk)
452        )
453    );
454    assert_eq!(
455        unsafe { ::std::ptr::addr_of!((*ptr).sendQuantumCRCs) as usize - ptr as usize },
456        32usize,
457        concat!(
458            "Offset of field: ",
459            stringify!(OodleLZ_CompressOptions),
460            "::",
461            stringify!(sendQuantumCRCs)
462        )
463    );
464    assert_eq!(
465        unsafe { ::std::ptr::addr_of!((*ptr).maxLocalDictionarySize) as usize - ptr as usize },
466        36usize,
467        concat!(
468            "Offset of field: ",
469            stringify!(OodleLZ_CompressOptions),
470            "::",
471            stringify!(maxLocalDictionarySize)
472        )
473    );
474    assert_eq!(
475        unsafe { ::std::ptr::addr_of!((*ptr).makeLongRangeMatcher) as usize - ptr as usize },
476        40usize,
477        concat!(
478            "Offset of field: ",
479            stringify!(OodleLZ_CompressOptions),
480            "::",
481            stringify!(makeLongRangeMatcher)
482        )
483    );
484    assert_eq!(
485        unsafe { ::std::ptr::addr_of!((*ptr).matchTableSizeLog2) as usize - ptr as usize },
486        44usize,
487        concat!(
488            "Offset of field: ",
489            stringify!(OodleLZ_CompressOptions),
490            "::",
491            stringify!(matchTableSizeLog2)
492        )
493    );
494    assert_eq!(
495        unsafe { ::std::ptr::addr_of!((*ptr).jobify) as usize - ptr as usize },
496        48usize,
497        concat!(
498            "Offset of field: ",
499            stringify!(OodleLZ_CompressOptions),
500            "::",
501            stringify!(jobify)
502        )
503    );
504    assert_eq!(
505        unsafe { ::std::ptr::addr_of!((*ptr).jobifyUserPtr) as usize - ptr as usize },
506        52usize,
507        concat!(
508            "Offset of field: ",
509            stringify!(OodleLZ_CompressOptions),
510            "::",
511            stringify!(jobifyUserPtr)
512        )
513    );
514    assert_eq!(
515        unsafe { ::std::ptr::addr_of!((*ptr).farMatchMinLen) as usize - ptr as usize },
516        60usize,
517        concat!(
518            "Offset of field: ",
519            stringify!(OodleLZ_CompressOptions),
520            "::",
521            stringify!(farMatchMinLen)
522        )
523    );
524    assert_eq!(
525        unsafe { ::std::ptr::addr_of!((*ptr).farMatchOffsetLog2) as usize - ptr as usize },
526        64usize,
527        concat!(
528            "Offset of field: ",
529            stringify!(OodleLZ_CompressOptions),
530            "::",
531            stringify!(farMatchOffsetLog2)
532        )
533    );
534    assert_eq!(
535        unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize },
536        68usize,
537        concat!(
538            "Offset of field: ",
539            stringify!(OodleLZ_CompressOptions),
540            "::",
541            stringify!(reserved)
542        )
543    );
544}
545pub const OodleLZ_Decode_ThreadPhase_OodleLZ_Decode_ThreadPhase1: OodleLZ_Decode_ThreadPhase = 1;
546pub const OodleLZ_Decode_ThreadPhase_OodleLZ_Decode_ThreadPhase2: OodleLZ_Decode_ThreadPhase = 2;
547pub const OodleLZ_Decode_ThreadPhase_OodleLZ_Decode_ThreadPhaseAll: OodleLZ_Decode_ThreadPhase = 3;
548pub const OodleLZ_Decode_ThreadPhase_OodleLZ_Decode_Unthreaded: OodleLZ_Decode_ThreadPhase = 3;
549pub type OodleLZ_Decode_ThreadPhase = ::std::os::raw::c_uint;
550pub const OodleLZ_FuzzSafe_OodleLZ_FuzzSafe_No: OodleLZ_FuzzSafe = 0;
551pub const OodleLZ_FuzzSafe_OodleLZ_FuzzSafe_Yes: OodleLZ_FuzzSafe = 1;
552pub type OodleLZ_FuzzSafe = ::std::os::raw::c_uint;
553#[repr(C, packed)]
554#[derive(Debug, Copy, Clone)]
555pub struct OodleLZ_DecodeSome_Out {
556    pub decodedCount: OO_S32,
557    pub compBufUsed: OO_S32,
558    pub curQuantumRawLen: OO_S32,
559    pub curQuantumCompLen: OO_S32,
560}
561#[test]
562fn bindgen_test_layout_OodleLZ_DecodeSome_Out() {
563    const UNINIT: ::std::mem::MaybeUninit<OodleLZ_DecodeSome_Out> =
564        ::std::mem::MaybeUninit::uninit();
565    let ptr = UNINIT.as_ptr();
566    assert_eq!(
567        ::std::mem::size_of::<OodleLZ_DecodeSome_Out>(),
568        16usize,
569        concat!("Size of: ", stringify!(OodleLZ_DecodeSome_Out))
570    );
571    assert_eq!(
572        ::std::mem::align_of::<OodleLZ_DecodeSome_Out>(),
573        1usize,
574        concat!("Alignment of ", stringify!(OodleLZ_DecodeSome_Out))
575    );
576    assert_eq!(
577        unsafe { ::std::ptr::addr_of!((*ptr).decodedCount) as usize - ptr as usize },
578        0usize,
579        concat!(
580            "Offset of field: ",
581            stringify!(OodleLZ_DecodeSome_Out),
582            "::",
583            stringify!(decodedCount)
584        )
585    );
586    assert_eq!(
587        unsafe { ::std::ptr::addr_of!((*ptr).compBufUsed) as usize - ptr as usize },
588        4usize,
589        concat!(
590            "Offset of field: ",
591            stringify!(OodleLZ_DecodeSome_Out),
592            "::",
593            stringify!(compBufUsed)
594        )
595    );
596    assert_eq!(
597        unsafe { ::std::ptr::addr_of!((*ptr).curQuantumRawLen) as usize - ptr as usize },
598        8usize,
599        concat!(
600            "Offset of field: ",
601            stringify!(OodleLZ_DecodeSome_Out),
602            "::",
603            stringify!(curQuantumRawLen)
604        )
605    );
606    assert_eq!(
607        unsafe { ::std::ptr::addr_of!((*ptr).curQuantumCompLen) as usize - ptr as usize },
608        12usize,
609        concat!(
610            "Offset of field: ",
611            stringify!(OodleLZ_DecodeSome_Out),
612            "::",
613            stringify!(curQuantumCompLen)
614        )
615    );
616}
617#[repr(C, packed)]
618#[derive(Debug, Copy, Clone)]
619pub struct OodleLZ_SeekTable {
620    pub compressor: OodleLZ_Compressor,
621    pub seekChunksIndependent: OO_BOOL,
622    pub totalRawLen: OO_S64,
623    pub totalCompLen: OO_S64,
624    pub numSeekChunks: OO_S32,
625    pub seekChunkLen: OO_S32,
626    pub seekChunkCompLens: *mut OO_U32,
627    pub rawCRCs: *mut OO_U32,
628}
629#[test]
630fn bindgen_test_layout_OodleLZ_SeekTable() {
631    const UNINIT: ::std::mem::MaybeUninit<OodleLZ_SeekTable> = ::std::mem::MaybeUninit::uninit();
632    let ptr = UNINIT.as_ptr();
633    assert_eq!(
634        ::std::mem::size_of::<OodleLZ_SeekTable>(),
635        48usize,
636        concat!("Size of: ", stringify!(OodleLZ_SeekTable))
637    );
638    assert_eq!(
639        ::std::mem::align_of::<OodleLZ_SeekTable>(),
640        1usize,
641        concat!("Alignment of ", stringify!(OodleLZ_SeekTable))
642    );
643    assert_eq!(
644        unsafe { ::std::ptr::addr_of!((*ptr).compressor) as usize - ptr as usize },
645        0usize,
646        concat!(
647            "Offset of field: ",
648            stringify!(OodleLZ_SeekTable),
649            "::",
650            stringify!(compressor)
651        )
652    );
653    assert_eq!(
654        unsafe { ::std::ptr::addr_of!((*ptr).seekChunksIndependent) as usize - ptr as usize },
655        4usize,
656        concat!(
657            "Offset of field: ",
658            stringify!(OodleLZ_SeekTable),
659            "::",
660            stringify!(seekChunksIndependent)
661        )
662    );
663    assert_eq!(
664        unsafe { ::std::ptr::addr_of!((*ptr).totalRawLen) as usize - ptr as usize },
665        8usize,
666        concat!(
667            "Offset of field: ",
668            stringify!(OodleLZ_SeekTable),
669            "::",
670            stringify!(totalRawLen)
671        )
672    );
673    assert_eq!(
674        unsafe { ::std::ptr::addr_of!((*ptr).totalCompLen) as usize - ptr as usize },
675        16usize,
676        concat!(
677            "Offset of field: ",
678            stringify!(OodleLZ_SeekTable),
679            "::",
680            stringify!(totalCompLen)
681        )
682    );
683    assert_eq!(
684        unsafe { ::std::ptr::addr_of!((*ptr).numSeekChunks) as usize - ptr as usize },
685        24usize,
686        concat!(
687            "Offset of field: ",
688            stringify!(OodleLZ_SeekTable),
689            "::",
690            stringify!(numSeekChunks)
691        )
692    );
693    assert_eq!(
694        unsafe { ::std::ptr::addr_of!((*ptr).seekChunkLen) as usize - ptr as usize },
695        28usize,
696        concat!(
697            "Offset of field: ",
698            stringify!(OodleLZ_SeekTable),
699            "::",
700            stringify!(seekChunkLen)
701        )
702    );
703    assert_eq!(
704        unsafe { ::std::ptr::addr_of!((*ptr).seekChunkCompLens) as usize - ptr as usize },
705        32usize,
706        concat!(
707            "Offset of field: ",
708            stringify!(OodleLZ_SeekTable),
709            "::",
710            stringify!(seekChunkCompLens)
711        )
712    );
713    assert_eq!(
714        unsafe { ::std::ptr::addr_of!((*ptr).rawCRCs) as usize - ptr as usize },
715        40usize,
716        concat!(
717            "Offset of field: ",
718            stringify!(OodleLZ_SeekTable),
719            "::",
720            stringify!(rawCRCs)
721        )
722    );
723}
724pub const OodleLZSeekTable_Flags_OodleLZSeekTable_Flags_None: OodleLZSeekTable_Flags = 0;
725pub const OodleLZSeekTable_Flags_OodleLZSeekTable_Flags_MakeRawCRCs: OodleLZSeekTable_Flags = 1;
726pub const OodleLZSeekTable_Flags_OodleLZSeekTable_Flags_Force32: OodleLZSeekTable_Flags =
727    1073741824;
728pub type OodleLZSeekTable_Flags = ::std::os::raw::c_uint;
729#[repr(C, packed)]
730#[derive(Debug, Copy, Clone)]
731pub struct OodleConfigValues {
732    pub m_OodleLZ_LW_LRM_step: OO_S32,
733    pub m_OodleLZ_LW_LRM_hashLength: OO_S32,
734    pub m_OodleLZ_LW_LRM_jumpbits: OO_S32,
735    pub m_OodleLZ_Decoder_Max_Stack_Size: OO_S32,
736    pub m_OodleLZ_Small_Buffer_LZ_Fallback_Size_Unused: OO_S32,
737    pub m_OodleLZ_BackwardsCompatible_MajorVersion: OO_S32,
738    pub m_oodle_header_version: OO_U32,
739}
740#[test]
741fn bindgen_test_layout_OodleConfigValues() {
742    const UNINIT: ::std::mem::MaybeUninit<OodleConfigValues> = ::std::mem::MaybeUninit::uninit();
743    let ptr = UNINIT.as_ptr();
744    assert_eq!(
745        ::std::mem::size_of::<OodleConfigValues>(),
746        28usize,
747        concat!("Size of: ", stringify!(OodleConfigValues))
748    );
749    assert_eq!(
750        ::std::mem::align_of::<OodleConfigValues>(),
751        1usize,
752        concat!("Alignment of ", stringify!(OodleConfigValues))
753    );
754    assert_eq!(
755        unsafe { ::std::ptr::addr_of!((*ptr).m_OodleLZ_LW_LRM_step) as usize - ptr as usize },
756        0usize,
757        concat!(
758            "Offset of field: ",
759            stringify!(OodleConfigValues),
760            "::",
761            stringify!(m_OodleLZ_LW_LRM_step)
762        )
763    );
764    assert_eq!(
765        unsafe { ::std::ptr::addr_of!((*ptr).m_OodleLZ_LW_LRM_hashLength) as usize - ptr as usize },
766        4usize,
767        concat!(
768            "Offset of field: ",
769            stringify!(OodleConfigValues),
770            "::",
771            stringify!(m_OodleLZ_LW_LRM_hashLength)
772        )
773    );
774    assert_eq!(
775        unsafe { ::std::ptr::addr_of!((*ptr).m_OodleLZ_LW_LRM_jumpbits) as usize - ptr as usize },
776        8usize,
777        concat!(
778            "Offset of field: ",
779            stringify!(OodleConfigValues),
780            "::",
781            stringify!(m_OodleLZ_LW_LRM_jumpbits)
782        )
783    );
784    assert_eq!(
785        unsafe {
786            ::std::ptr::addr_of!((*ptr).m_OodleLZ_Decoder_Max_Stack_Size) as usize - ptr as usize
787        },
788        12usize,
789        concat!(
790            "Offset of field: ",
791            stringify!(OodleConfigValues),
792            "::",
793            stringify!(m_OodleLZ_Decoder_Max_Stack_Size)
794        )
795    );
796    assert_eq!(
797        unsafe {
798            ::std::ptr::addr_of!((*ptr).m_OodleLZ_Small_Buffer_LZ_Fallback_Size_Unused) as usize
799                - ptr as usize
800        },
801        16usize,
802        concat!(
803            "Offset of field: ",
804            stringify!(OodleConfigValues),
805            "::",
806            stringify!(m_OodleLZ_Small_Buffer_LZ_Fallback_Size_Unused)
807        )
808    );
809    assert_eq!(
810        unsafe {
811            ::std::ptr::addr_of!((*ptr).m_OodleLZ_BackwardsCompatible_MajorVersion) as usize
812                - ptr as usize
813        },
814        20usize,
815        concat!(
816            "Offset of field: ",
817            stringify!(OodleConfigValues),
818            "::",
819            stringify!(m_OodleLZ_BackwardsCompatible_MajorVersion)
820        )
821    );
822    assert_eq!(
823        unsafe { ::std::ptr::addr_of!((*ptr).m_oodle_header_version) as usize - ptr as usize },
824        24usize,
825        concat!(
826            "Offset of field: ",
827            stringify!(OodleConfigValues),
828            "::",
829            stringify!(m_oodle_header_version)
830        )
831    );
832}
833extern "C" {
834    pub fn Oodle_GetConfigValues(ptr: *mut OodleConfigValues);
835}
836extern "C" {
837    pub fn Oodle_SetConfigValues(ptr: *const OodleConfigValues);
838}
839pub const Oodle_UsageWarnings_Oodle_UsageWarnings_Enabled: Oodle_UsageWarnings = 0;
840pub const Oodle_UsageWarnings_Oodle_UsageWarnings_Disabled: Oodle_UsageWarnings = 1;
841pub const Oodle_UsageWarnings_Oodle_UsageWarnings_Force32: Oodle_UsageWarnings = 1073741824;
842pub type Oodle_UsageWarnings = ::std::os::raw::c_uint;
843extern "C" {
844    pub fn Oodle_SetUsageWarnings(state: Oodle_UsageWarnings);
845}
846pub type t_fp_OodleCore_Plugin_MallocAligned = ::std::option::Option<
847    unsafe extern "C" fn(bytes: OO_SINTa, alignment: OO_S32) -> *mut ::std::os::raw::c_void,
848>;
849pub type t_fp_OodleCore_Plugin_Free =
850    ::std::option::Option<unsafe extern "C" fn(ptr: *mut ::std::os::raw::c_void)>;
851extern "C" {
852    pub fn OodleCore_Plugins_SetAllocators(
853        fp_OodleMallocAligned: t_fp_OodleCore_Plugin_MallocAligned,
854        fp_OodleFree: t_fp_OodleCore_Plugin_Free,
855    );
856}
857pub type t_fp_OodleCore_Plugin_RunJob = ::std::option::Option<
858    unsafe extern "C" fn(
859        fp_job: t_OodleFPVoidVoidStar,
860        job_data: *mut ::std::os::raw::c_void,
861        dependencies: *mut OO_U64,
862        num_dependencies: ::std::os::raw::c_int,
863        user_ptr: *mut ::std::os::raw::c_void,
864    ) -> OO_U64,
865>;
866pub type t_fp_OodleCore_Plugin_WaitJob = ::std::option::Option<
867    unsafe extern "C" fn(job_handle: OO_U64, user_ptr: *mut ::std::os::raw::c_void),
868>;
869extern "C" {
870    pub fn OodleCore_Plugins_SetJobSystem(
871        fp_RunJob: t_fp_OodleCore_Plugin_RunJob,
872        fp_WaitJob: t_fp_OodleCore_Plugin_WaitJob,
873    );
874}
875extern "C" {
876    pub fn OodleCore_Plugins_SetJobSystemAndCount(
877        fp_RunJob: t_fp_OodleCore_Plugin_RunJob,
878        fp_WaitJob: t_fp_OodleCore_Plugin_WaitJob,
879        target_parallelism: ::std::os::raw::c_int,
880    );
881}
882pub type t_fp_OodleCore_Plugin_Printf = ::std::option::Option<
883    unsafe extern "C" fn(
884        verboseLevel: ::std::os::raw::c_int,
885        file: *const ::std::os::raw::c_char,
886        line: ::std::os::raw::c_int,
887        fmt: *const ::std::os::raw::c_char,
888        ...
889    ),
890>;
891extern "C" {
892    pub fn OodleCore_Plugins_SetPrintf(
893        fp_rrRawPrintf: t_fp_OodleCore_Plugin_Printf,
894    ) -> t_fp_OodleCore_Plugin_Printf;
895}
896pub type t_fp_OodleCore_Plugin_DisplayAssertion = ::std::option::Option<
897    unsafe extern "C" fn(
898        file: *const ::std::os::raw::c_char,
899        line: ::std::os::raw::c_int,
900        function: *const ::std::os::raw::c_char,
901        message: *const ::std::os::raw::c_char,
902    ) -> OO_BOOL,
903>;
904extern "C" {
905    pub fn OodleCore_Plugins_SetAssertion(
906        fp_rrDisplayAssertion: t_fp_OodleCore_Plugin_DisplayAssertion,
907    ) -> t_fp_OodleCore_Plugin_DisplayAssertion;
908}
909extern "C" {
910    pub fn OodleCore_Plugin_MallocAligned_Default(
911        size: OO_SINTa,
912        alignment: OO_S32,
913    ) -> *mut ::std::os::raw::c_void;
914}
915extern "C" {
916    pub fn OodleCore_Plugin_Free_Default(ptr: *mut ::std::os::raw::c_void);
917}
918extern "C" {
919    pub fn OodleCore_Plugin_Printf_Default(
920        verboseLevel: ::std::os::raw::c_int,
921        file: *const ::std::os::raw::c_char,
922        line: ::std::os::raw::c_int,
923        fmt: *const ::std::os::raw::c_char,
924        ...
925    );
926}
927extern "C" {
928    pub fn OodleCore_Plugin_Printf_Verbose(
929        verboseLevel: ::std::os::raw::c_int,
930        file: *const ::std::os::raw::c_char,
931        line: ::std::os::raw::c_int,
932        fmt: *const ::std::os::raw::c_char,
933        ...
934    );
935}
936extern "C" {
937    pub fn OodleCore_Plugin_DisplayAssertion_Default(
938        file: *const ::std::os::raw::c_char,
939        line: ::std::os::raw::c_int,
940        function: *const ::std::os::raw::c_char,
941        message: *const ::std::os::raw::c_char,
942    ) -> OO_BOOL;
943}
944extern "C" {
945    pub fn OodleCore_Plugin_RunJob_Default(
946        fp_job: t_OodleFPVoidVoidStar,
947        job_data: *mut ::std::os::raw::c_void,
948        dependencies: *mut OO_U64,
949        num_dependencies: ::std::os::raw::c_int,
950        user_ptr: *mut ::std::os::raw::c_void,
951    ) -> OO_U64;
952}
953extern "C" {
954    pub fn OodleCore_Plugin_WaitJob_Default(
955        job_handle: OO_U64,
956        user_ptr: *mut ::std::os::raw::c_void,
957    );
958}
959extern "C" {
960    pub fn OodleLZ_Compress(
961        compressor: OodleLZ_Compressor,
962        rawBuf: *const ::std::os::raw::c_void,
963        rawLen: OO_SINTa,
964        compBuf: *mut ::std::os::raw::c_void,
965        level: OodleLZ_CompressionLevel,
966        pOptions: *const OodleLZ_CompressOptions,
967        dictionaryBase: *const ::std::os::raw::c_void,
968        lrm: *const ::std::os::raw::c_void,
969        scratchMem: *mut ::std::os::raw::c_void,
970        scratchSize: OO_SINTa,
971    ) -> OO_SINTa;
972}
973extern "C" {
974    pub fn OodleLZ_Decompress(
975        compBuf: *const ::std::os::raw::c_void,
976        compBufSize: OO_SINTa,
977        rawBuf: *mut ::std::os::raw::c_void,
978        rawLen: OO_SINTa,
979        fuzzSafe: OodleLZ_FuzzSafe,
980        checkCRC: OodleLZ_CheckCRC,
981        verbosity: OodleLZ_Verbosity,
982        decBufBase: *mut ::std::os::raw::c_void,
983        decBufSize: OO_SINTa,
984        fpCallback: OodleDecompressCallback,
985        callbackUserData: *mut ::std::os::raw::c_void,
986        decoderMemory: *mut ::std::os::raw::c_void,
987        decoderMemorySize: OO_SINTa,
988        threadPhase: OodleLZ_Decode_ThreadPhase,
989    ) -> OO_SINTa;
990}
991#[repr(C)]
992#[derive(Debug, Copy, Clone)]
993pub struct _OodleLZDecoder {
994    _unused: [u8; 0],
995}
996pub type OodleLZDecoder = _OodleLZDecoder;
997extern "C" {
998    pub fn OodleLZDecoder_Create(
999        compressor: OodleLZ_Compressor,
1000        rawLen: OO_S64,
1001        memory: *mut ::std::os::raw::c_void,
1002        memorySize: OO_SINTa,
1003    ) -> *mut OodleLZDecoder;
1004}
1005extern "C" {
1006    pub fn OodleLZDecoder_MemorySizeNeeded(
1007        compressor: OodleLZ_Compressor,
1008        rawLen: OO_SINTa,
1009    ) -> OO_S32;
1010}
1011extern "C" {
1012    pub fn OodleLZ_ThreadPhased_BlockDecoderMemorySizeNeeded() -> OO_S32;
1013}
1014extern "C" {
1015    pub fn OodleLZDecoder_Destroy(decoder: *mut OodleLZDecoder);
1016}
1017extern "C" {
1018    pub fn OodleLZDecoder_Reset(
1019        decoder: *mut OodleLZDecoder,
1020        decPos: OO_SINTa,
1021        decLen: OO_SINTa,
1022    ) -> OO_BOOL;
1023}
1024extern "C" {
1025    pub fn OodleLZDecoder_DecodeSome(
1026        decoder: *mut OodleLZDecoder,
1027        out: *mut OodleLZ_DecodeSome_Out,
1028        decBuf: *mut ::std::os::raw::c_void,
1029        decBufPos: OO_SINTa,
1030        decBufferSize: OO_SINTa,
1031        decBufAvail: OO_SINTa,
1032        compPtr: *const ::std::os::raw::c_void,
1033        compAvail: OO_SINTa,
1034        fuzzSafe: OodleLZ_FuzzSafe,
1035        checkCRC: OodleLZ_CheckCRC,
1036        verbosity: OodleLZ_Verbosity,
1037        threadPhase: OodleLZ_Decode_ThreadPhase,
1038    ) -> OO_BOOL;
1039}
1040extern "C" {
1041    pub fn OodleLZDecoder_MakeValidCircularWindowSize(
1042        compressor: OodleLZ_Compressor,
1043        minWindowSize: OO_S32,
1044    ) -> OO_S32;
1045}
1046extern "C" {
1047    pub fn OodleLZ_MakeSeekChunkLen(rawLen: OO_S64, desiredSeekPointCount: OO_S32) -> OO_S32;
1048}
1049extern "C" {
1050    pub fn OodleLZ_GetNumSeekChunks(rawLen: OO_S64, seekChunkLen: OO_S32) -> OO_S32;
1051}
1052extern "C" {
1053    pub fn OodleLZ_GetSeekTableMemorySizeNeeded(
1054        numSeekChunks: OO_S32,
1055        flags: OodleLZSeekTable_Flags,
1056    ) -> OO_SINTa;
1057}
1058extern "C" {
1059    pub fn OodleLZ_FillSeekTable(
1060        pTable: *mut OodleLZ_SeekTable,
1061        flags: OodleLZSeekTable_Flags,
1062        seekChunkLen: OO_S32,
1063        rawBuf: *const ::std::os::raw::c_void,
1064        rawLen: OO_SINTa,
1065        compBuf: *const ::std::os::raw::c_void,
1066        compLen: OO_SINTa,
1067    ) -> OO_BOOL;
1068}
1069extern "C" {
1070    pub fn OodleLZ_CreateSeekTable(
1071        flags: OodleLZSeekTable_Flags,
1072        seekChunkLen: OO_S32,
1073        rawBuf: *const ::std::os::raw::c_void,
1074        rawLen: OO_SINTa,
1075        compBuf: *const ::std::os::raw::c_void,
1076        compLen: OO_SINTa,
1077    ) -> *mut OodleLZ_SeekTable;
1078}
1079extern "C" {
1080    pub fn OodleLZ_FreeSeekTable(pTable: *mut OodleLZ_SeekTable);
1081}
1082extern "C" {
1083    pub fn OodleLZ_CheckSeekTableCRCs(
1084        rawBuf: *const ::std::os::raw::c_void,
1085        rawLen: OO_SINTa,
1086        seekTable: *const OodleLZ_SeekTable,
1087    ) -> OO_BOOL;
1088}
1089extern "C" {
1090    pub fn OodleLZ_FindSeekEntry(rawPos: OO_S64, seekTable: *const OodleLZ_SeekTable) -> OO_S32;
1091}
1092extern "C" {
1093    pub fn OodleLZ_GetSeekEntryPackedPos(
1094        seekI: OO_S32,
1095        seekTable: *const OodleLZ_SeekTable,
1096    ) -> OO_S64;
1097}
1098extern "C" {
1099    pub fn OodleLZ_CompressionLevel_GetName(
1100        compressSelect: OodleLZ_CompressionLevel,
1101    ) -> *const ::std::os::raw::c_char;
1102}
1103extern "C" {
1104    pub fn OodleLZ_Compressor_GetName(
1105        compressor: OodleLZ_Compressor,
1106    ) -> *const ::std::os::raw::c_char;
1107}
1108extern "C" {
1109    pub fn OodleLZ_Jobify_GetName(jobify: OodleLZ_Jobify) -> *const ::std::os::raw::c_char;
1110}
1111extern "C" {
1112    pub fn OodleLZ_CompressOptions_GetDefault(
1113        compressor: OodleLZ_Compressor,
1114        lzLevel: OodleLZ_CompressionLevel,
1115    ) -> *const OodleLZ_CompressOptions;
1116}
1117extern "C" {
1118    pub fn OodleLZ_CompressOptions_Validate(pOptions: *mut OodleLZ_CompressOptions);
1119}
1120pub const OodleLZ_CompressScratchMemBoundType_OodleLZ_CompressScratchMemBoundType_WorstCase:
1121    OodleLZ_CompressScratchMemBoundType = 0;
1122pub const OodleLZ_CompressScratchMemBoundType_OodleLZ_CompressScratchMemBoundType_Typical:
1123    OodleLZ_CompressScratchMemBoundType = 1;
1124pub const OodleLZ_CompressScratchMemBoundType_OodleLZ_CompressScratchMemBoundType_Force32:
1125    OodleLZ_CompressScratchMemBoundType = 1073741824;
1126pub type OodleLZ_CompressScratchMemBoundType = ::std::os::raw::c_uint;
1127extern "C" {
1128    pub fn OodleLZ_GetCompressScratchMemBound(
1129        compressor: OodleLZ_Compressor,
1130        level: OodleLZ_CompressionLevel,
1131        rawLen: OO_SINTa,
1132        pOptions: *const OodleLZ_CompressOptions,
1133    ) -> OO_SINTa;
1134}
1135extern "C" {
1136    pub fn OodleLZ_GetCompressScratchMemBoundEx(
1137        compressor: OodleLZ_Compressor,
1138        level: OodleLZ_CompressionLevel,
1139        boundType: OodleLZ_CompressScratchMemBoundType,
1140        rawLen: OO_SINTa,
1141        pOptions: *const OodleLZ_CompressOptions,
1142    ) -> OO_SINTa;
1143}
1144extern "C" {
1145    pub fn OodleLZ_GetCompressedBufferSizeNeeded(
1146        compressor: OodleLZ_Compressor,
1147        rawSize: OO_SINTa,
1148    ) -> OO_SINTa;
1149}
1150extern "C" {
1151    pub fn OodleLZ_GetDecodeBufferSize(
1152        compressor: OodleLZ_Compressor,
1153        rawSize: OO_SINTa,
1154        corruptionPossible: OO_BOOL,
1155    ) -> OO_SINTa;
1156}
1157extern "C" {
1158    pub fn OodleLZ_GetInPlaceDecodeBufferSize(
1159        compressor: OodleLZ_Compressor,
1160        compLen: OO_SINTa,
1161        rawLen: OO_SINTa,
1162    ) -> OO_SINTa;
1163}
1164extern "C" {
1165    pub fn OodleLZ_GetCompressedStepForRawStep(
1166        compPtr: *const ::std::os::raw::c_void,
1167        compAvail: OO_SINTa,
1168        startRawPos: OO_SINTa,
1169        rawSeekBytes: OO_SINTa,
1170        pEndRawPos: *mut OO_SINTa,
1171        pIndependent: *mut OO_BOOL,
1172    ) -> OO_SINTa;
1173}
1174extern "C" {
1175    pub fn OodleLZ_GetAllChunksCompressor(
1176        compBuf: *const ::std::os::raw::c_void,
1177        compBufSize: OO_SINTa,
1178        rawLen: OO_SINTa,
1179    ) -> OodleLZ_Compressor;
1180}
1181extern "C" {
1182    pub fn OodleLZ_GetFirstChunkCompressor(
1183        compChunkPtr: *const ::std::os::raw::c_void,
1184        compBufAvail: OO_SINTa,
1185        pIndependent: *mut OO_BOOL,
1186    ) -> OodleLZ_Compressor;
1187}
1188extern "C" {
1189    pub fn OodleLZ_GetChunkCompressor(
1190        compChunkPtr: *const ::std::os::raw::c_void,
1191        compBufAvail: OO_SINTa,
1192        pIndependent: *mut OO_BOOL,
1193    ) -> OodleLZ_Compressor;
1194}
1195extern "C" {
1196    pub fn Oodle_CheckVersion(
1197        oodle_header_version: OO_U32,
1198        pOodleLibVersion: *mut OO_U32,
1199    ) -> OO_BOOL;
1200}
1201extern "C" {
1202    pub fn Oodle_LogHeader();
1203}