#[repr(C)]
#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
pub struct __BindgenBitfieldUnit<Storage> {
storage: Storage,
}
impl<Storage> __BindgenBitfieldUnit<Storage> {
#[inline]
pub const fn new(storage: Storage) -> Self {
Self { storage }
}
}
impl<Storage> __BindgenBitfieldUnit<Storage>
where
Storage: AsRef<[u8]> + AsMut<[u8]>,
{
#[inline]
pub fn get_bit(&self, index: usize) -> bool {
debug_assert!(index / 8 < self.storage.as_ref().len());
let byte_index = index / 8;
let byte = self.storage.as_ref()[byte_index];
let bit_index = if cfg!(target_endian = "big") {
7 - (index % 8)
} else {
index % 8
};
let mask = 1 << bit_index;
byte & mask == mask
}
#[inline]
pub fn set_bit(&mut self, index: usize, val: bool) {
debug_assert!(index / 8 < self.storage.as_ref().len());
let byte_index = index / 8;
let byte = &mut self.storage.as_mut()[byte_index];
let bit_index = if cfg!(target_endian = "big") {
7 - (index % 8)
} else {
index % 8
};
let mask = 1 << bit_index;
if val {
*byte |= mask;
} else {
*byte &= !mask;
}
}
#[inline]
pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
debug_assert!(bit_width <= 64);
debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
let mut val = 0;
for i in 0..(bit_width as usize) {
if self.get_bit(i + bit_offset) {
let index = if cfg!(target_endian = "big") {
bit_width as usize - 1 - i
} else {
i
};
val |= 1 << index;
}
}
val
}
#[inline]
pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
debug_assert!(bit_width <= 64);
debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
for i in 0..(bit_width as usize) {
let mask = 1 << i;
let val_bit_is_set = val & mask == mask;
let index = if cfg!(target_endian = "big") {
bit_width as usize - 1 - i
} else {
i
};
self.set_bit(index + bit_offset, val_bit_is_set);
}
}
}
pub const qhDEFlibqhull: u32 = 1;
pub const _VCRT_COMPILER_PREPROCESSOR: u32 = 1;
pub const _SAL_VERSION: u32 = 20;
pub const __SAL_H_VERSION: u32 = 180000000;
pub const _USE_DECLSPECS_FOR_SAL: u32 = 0;
pub const _USE_ATTRIBUTES_FOR_SAL: u32 = 0;
pub const _CRT_PACKING: u32 = 8;
pub const _HAS_EXCEPTIONS: u32 = 1;
pub const _STL_LANG: u32 = 0;
pub const _HAS_CXX17: u32 = 0;
pub const _HAS_CXX20: u32 = 0;
pub const _HAS_CXX23: u32 = 0;
pub const _HAS_NODISCARD: u32 = 0;
pub const _ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE: u32 = 1;
pub const _CRT_BUILD_DESKTOP_APP: u32 = 1;
pub const _ARGMAX: u32 = 100;
pub const _CRT_INT_MAX: u32 = 2147483647;
pub const _CRT_FUNCTIONS_REQUIRED: u32 = 1;
pub const _CRT_HAS_CXX17: u32 = 0;
pub const _CRT_HAS_C11: u32 = 1;
pub const _CRT_INTERNAL_NONSTDC_NAMES: u32 = 1;
pub const __STDC_SECURE_LIB__: u32 = 200411;
pub const __GOT_SECURE_LIB__: u32 = 200411;
pub const __STDC_WANT_SECURE_LIB__: u32 = 1;
pub const _SECURECRT_FILL_BUFFER_PATTERN: u32 = 254;
pub const _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES: u32 = 0;
pub const _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT: u32 = 0;
pub const _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES: u32 = 1;
pub const _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY: u32 = 0;
pub const _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY: u32 = 0;
pub const FLT_EVAL_METHOD: u32 = 0;
pub const DBL_DECIMAL_DIG: u32 = 17;
pub const DBL_DIG: u32 = 15;
pub const DBL_HAS_SUBNORM: u32 = 1;
pub const DBL_MANT_DIG: u32 = 53;
pub const DBL_MAX_10_EXP: u32 = 308;
pub const DBL_MAX_EXP: u32 = 1024;
pub const DBL_MIN_10_EXP: i32 = -307;
pub const DBL_MIN_EXP: i32 = -1021;
pub const _DBL_RADIX: u32 = 2;
pub const FLT_DECIMAL_DIG: u32 = 9;
pub const FLT_DIG: u32 = 6;
pub const FLT_HAS_SUBNORM: u32 = 1;
pub const FLT_GUARD: u32 = 0;
pub const FLT_MANT_DIG: u32 = 24;
pub const FLT_MAX_10_EXP: u32 = 38;
pub const FLT_MAX_EXP: u32 = 128;
pub const FLT_MIN_10_EXP: i32 = -37;
pub const FLT_MIN_EXP: i32 = -125;
pub const FLT_NORMALIZE: u32 = 0;
pub const FLT_RADIX: u32 = 2;
pub const LDBL_DIG: u32 = 15;
pub const LDBL_HAS_SUBNORM: u32 = 1;
pub const LDBL_MANT_DIG: u32 = 53;
pub const LDBL_MAX_10_EXP: u32 = 308;
pub const LDBL_MAX_EXP: u32 = 1024;
pub const LDBL_MIN_10_EXP: i32 = -307;
pub const LDBL_MIN_EXP: i32 = -1021;
pub const _LDBL_RADIX: u32 = 2;
pub const DECIMAL_DIG: u32 = 17;
pub const _SW_INEXACT: u32 = 1;
pub const _SW_UNDERFLOW: u32 = 2;
pub const _SW_OVERFLOW: u32 = 4;
pub const _SW_ZERODIVIDE: u32 = 8;
pub const _SW_INVALID: u32 = 16;
pub const _SW_DENORMAL: u32 = 524288;
pub const _EM_AMBIGUIOUS: u32 = 2147483648;
pub const _EM_AMBIGUOUS: u32 = 2147483648;
pub const _MCW_EM: u32 = 524319;
pub const _EM_INEXACT: u32 = 1;
pub const _EM_UNDERFLOW: u32 = 2;
pub const _EM_OVERFLOW: u32 = 4;
pub const _EM_ZERODIVIDE: u32 = 8;
pub const _EM_INVALID: u32 = 16;
pub const _EM_DENORMAL: u32 = 524288;
pub const _MCW_RC: u32 = 768;
pub const _RC_NEAR: u32 = 0;
pub const _RC_DOWN: u32 = 256;
pub const _RC_UP: u32 = 512;
pub const _RC_CHOP: u32 = 768;
pub const _MCW_PC: u32 = 196608;
pub const _PC_64: u32 = 0;
pub const _PC_53: u32 = 65536;
pub const _PC_24: u32 = 131072;
pub const _MCW_IC: u32 = 262144;
pub const _IC_AFFINE: u32 = 262144;
pub const _IC_PROJECTIVE: u32 = 0;
pub const _MCW_DN: u32 = 50331648;
pub const _DN_SAVE: u32 = 0;
pub const _DN_FLUSH: u32 = 16777216;
pub const _DN_FLUSH_OPERANDS_SAVE_RESULTS: u32 = 33554432;
pub const _DN_SAVE_OPERANDS_FLUSH_RESULTS: u32 = 50331648;
pub const _SW_UNEMULATED: u32 = 64;
pub const _SW_SQRTNEG: u32 = 128;
pub const _SW_STACKOVERFLOW: u32 = 512;
pub const _SW_STACKUNDERFLOW: u32 = 1024;
pub const _FPE_INVALID: u32 = 129;
pub const _FPE_DENORMAL: u32 = 130;
pub const _FPE_ZERODIVIDE: u32 = 131;
pub const _FPE_OVERFLOW: u32 = 132;
pub const _FPE_UNDERFLOW: u32 = 133;
pub const _FPE_INEXACT: u32 = 134;
pub const _FPE_UNEMULATED: u32 = 135;
pub const _FPE_SQRTNEG: u32 = 136;
pub const _FPE_STACKOVERFLOW: u32 = 138;
pub const _FPE_STACKUNDERFLOW: u32 = 139;
pub const _FPE_EXPLICITGEN: u32 = 140;
pub const _FPE_MULTIPLE_TRAPS: u32 = 141;
pub const _FPE_MULTIPLE_FAULTS: u32 = 142;
pub const _FPCLASS_SNAN: u32 = 1;
pub const _FPCLASS_QNAN: u32 = 2;
pub const _FPCLASS_NINF: u32 = 4;
pub const _FPCLASS_NN: u32 = 8;
pub const _FPCLASS_ND: u32 = 16;
pub const _FPCLASS_NZ: u32 = 32;
pub const _FPCLASS_PZ: u32 = 64;
pub const _FPCLASS_PD: u32 = 128;
pub const _FPCLASS_PN: u32 = 256;
pub const _FPCLASS_PINF: u32 = 512;
pub const _CW_DEFAULT: u32 = 524319;
pub const DBL_RADIX: u32 = 2;
pub const LDBL_RADIX: u32 = 2;
pub const EM_AMBIGUIOUS: u32 = 2147483648;
pub const EM_AMBIGUOUS: u32 = 2147483648;
pub const MCW_EM: u32 = 524319;
pub const EM_INVALID: u32 = 16;
pub const EM_DENORMAL: u32 = 524288;
pub const EM_ZERODIVIDE: u32 = 8;
pub const EM_OVERFLOW: u32 = 4;
pub const EM_UNDERFLOW: u32 = 2;
pub const EM_INEXACT: u32 = 1;
pub const MCW_IC: u32 = 262144;
pub const IC_AFFINE: u32 = 262144;
pub const IC_PROJECTIVE: u32 = 0;
pub const MCW_RC: u32 = 768;
pub const RC_CHOP: u32 = 768;
pub const RC_UP: u32 = 512;
pub const RC_DOWN: u32 = 256;
pub const RC_NEAR: u32 = 0;
pub const MCW_PC: u32 = 196608;
pub const PC_24: u32 = 131072;
pub const PC_53: u32 = 65536;
pub const PC_64: u32 = 0;
pub const CW_DEFAULT: u32 = 524319;
pub const SW_INVALID: u32 = 16;
pub const SW_DENORMAL: u32 = 524288;
pub const SW_ZERODIVIDE: u32 = 8;
pub const SW_OVERFLOW: u32 = 4;
pub const SW_UNDERFLOW: u32 = 2;
pub const SW_INEXACT: u32 = 1;
pub const SW_UNEMULATED: u32 = 64;
pub const SW_SQRTNEG: u32 = 128;
pub const SW_STACKOVERFLOW: u32 = 512;
pub const SW_STACKUNDERFLOW: u32 = 1024;
pub const FPE_INVALID: u32 = 129;
pub const FPE_DENORMAL: u32 = 130;
pub const FPE_ZERODIVIDE: u32 = 131;
pub const FPE_OVERFLOW: u32 = 132;
pub const FPE_UNDERFLOW: u32 = 133;
pub const FPE_INEXACT: u32 = 134;
pub const FPE_UNEMULATED: u32 = 135;
pub const FPE_SQRTNEG: u32 = 136;
pub const FPE_STACKOVERFLOW: u32 = 138;
pub const FPE_STACKUNDERFLOW: u32 = 139;
pub const FPE_EXPLICITGEN: u32 = 140;
pub const CHAR_BIT: u32 = 8;
pub const SCHAR_MIN: i32 = -128;
pub const SCHAR_MAX: u32 = 127;
pub const UCHAR_MAX: u32 = 255;
pub const CHAR_MIN: i32 = -128;
pub const CHAR_MAX: u32 = 127;
pub const MB_LEN_MAX: u32 = 5;
pub const SHRT_MIN: i32 = -32768;
pub const SHRT_MAX: u32 = 32767;
pub const USHRT_MAX: u32 = 65535;
pub const INT_MIN: i32 = -2147483648;
pub const INT_MAX: u32 = 2147483647;
pub const UINT_MAX: u32 = 4294967295;
pub const LONG_MIN: i32 = -2147483648;
pub const LONG_MAX: u32 = 2147483647;
pub const ULONG_MAX: u32 = 4294967295;
pub const TIME_UTC: u32 = 1;
pub const qhDEFuser: u32 = 1;
pub const qh_FILENAMElen: u32 = 500;
pub const MSG_TRACE0: u32 = 0;
pub const MSG_TRACE1: u32 = 1000;
pub const MSG_TRACE2: u32 = 2000;
pub const MSG_TRACE3: u32 = 3000;
pub const MSG_TRACE4: u32 = 4000;
pub const MSG_TRACE5: u32 = 5000;
pub const MSG_ERROR: u32 = 6000;
pub const MSG_WARNING: u32 = 7000;
pub const MSG_STDERR: u32 = 8000;
pub const MSG_OUTPUT: u32 = 9000;
pub const MSG_QHULL_ERROR: u32 = 10000;
pub const MSG_FIX: u32 = 11000;
pub const MSG_MAXLEN: u32 = 3000;
pub const qh_OPTIONline: u32 = 80;
pub const REALfloat: u32 = 0;
pub const qh_REALdigits: u32 = 16;
pub const qh_REAL_1: &[u8; 8] = b"%6.16g \0";
pub const qh_REAL_2n: &[u8; 15] = b"%6.16g %6.16g\n\0";
pub const qh_REAL_3n: &[u8; 22] = b"%6.16g %6.16g %6.16g\n\0";
pub const DEFcountT: u32 = 1;
pub const COUNTmax: u32 = 2147483647;
pub const qh_POINTSmax: u32 = 2147483631;
pub const qh_CLOCKtype: u32 = 1;
pub const qh_RANDOMtype: u32 = 5;
pub const qh_ORIENTclock: u32 = 0;
pub const qh_JOGGLEdefault: f64 = 30000.0;
pub const qh_JOGGLEincrease: f64 = 10.0;
pub const qh_JOGGLEretry: u32 = 2;
pub const qh_JOGGLEagain: u32 = 1;
pub const qh_JOGGLEmaxincrease: f64 = 0.01;
pub const qh_JOGGLEmaxretry: u32 = 50;
pub const qh_HASHfactor: u32 = 2;
pub const qh_VERIFYdirect: u32 = 1000000;
pub const qh_INITIALsearch: u32 = 6;
pub const qh_INITIALmax: u32 = 8;
pub const qh_MEMbufsize: u32 = 65536;
pub const qh_MEMinitbuf: u32 = 131072;
pub const qh_INFINITE: f64 = -10.101;
pub const qh_DEFAULTbox: f64 = 0.5;
pub const qh_DEFAULTzbox: f64 = 1000000.0;
pub const qh_COMPUTEfurthest: u32 = 0;
pub const qh_KEEPstatistics: u32 = 1;
pub const qh_MAXoutside: u32 = 1;
pub const qh_QUICKhelp: u32 = 0;
pub const qh_BESTcentrum: u32 = 20;
pub const qh_BESTcentrum2: u32 = 2;
pub const qh_BESTnonconvex: u32 = 15;
pub const qh_COPLANARratio: u32 = 3;
pub const qh_DIMmergeVertex: u32 = 6;
pub const qh_DIMreduceBuild: u32 = 5;
pub const qh_MAXcheckpoint: u32 = 10;
pub const qh_MAXcoplanarcentrum: u32 = 10;
pub const qh_MAXnewcentrum: u32 = 5;
pub const qh_MAXnewmerges: u32 = 2;
pub const qh_RATIOconcavehorizon: f64 = 20.0;
pub const qh_RATIOconvexmerge: f64 = 10.0;
pub const qh_RATIOcoplanarapex: f64 = 3.0;
pub const qh_RATIOcoplanaroutside: f64 = 30.0;
pub const qh_RATIOnearinside: u32 = 5;
pub const qh_RATIOpinchedsubridge: f64 = 10.0;
pub const qh_RATIOtrypinched: f64 = 4.0;
pub const qh_RATIOtwisted: f64 = 20.0;
pub const qh_MAXnarrow: f64 = -0.99999999;
pub const qh_WARNnarrow: f64 = -0.999999999999999;
pub const qh_WIDEcoplanar: u32 = 6;
pub const qh_WIDEduplicate: u32 = 100;
pub const qh_WIDEdupridge: u32 = 50;
pub const qh_WIDEmaxoutside: u32 = 100;
pub const qh_WIDEmaxoutside2: u32 = 1000;
pub const qh_WIDEpinched: u32 = 100;
pub const qh_ZEROdelaunay: u32 = 2;
pub const qhDEFmem: u32 = 1;
pub const _CRT_INTERNAL_STDIO_SYMBOL_PREFIX: &[u8; 1] = b"\0";
pub const _CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION: u32 = 1;
pub const _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR: u32 = 2;
pub const _CRT_INTERNAL_PRINTF_LEGACY_WIDE_SPECIFIERS: u32 = 4;
pub const _CRT_INTERNAL_PRINTF_LEGACY_MSVCRT_COMPATIBILITY: u32 = 8;
pub const _CRT_INTERNAL_PRINTF_LEGACY_THREE_DIGIT_EXPONENTS: u32 = 16;
pub const _CRT_INTERNAL_PRINTF_STANDARD_ROUNDING: u32 = 32;
pub const _CRT_INTERNAL_SCANF_SECURECRT: u32 = 1;
pub const _CRT_INTERNAL_SCANF_LEGACY_WIDE_SPECIFIERS: u32 = 2;
pub const _CRT_INTERNAL_SCANF_LEGACY_MSVCRT_COMPATIBILITY: u32 = 4;
pub const BUFSIZ: u32 = 512;
pub const _NSTREAM_: u32 = 512;
pub const _IOB_ENTRIES: u32 = 3;
pub const EOF: i32 = -1;
pub const _IOFBF: u32 = 0;
pub const _IOLBF: u32 = 64;
pub const _IONBF: u32 = 4;
pub const L_tmpnam: u32 = 260;
pub const L_tmpnam_s: u32 = 260;
pub const SEEK_CUR: u32 = 1;
pub const SEEK_END: u32 = 2;
pub const SEEK_SET: u32 = 0;
pub const FILENAME_MAX: u32 = 260;
pub const FOPEN_MAX: u32 = 20;
pub const _SYS_OPEN: u32 = 20;
pub const TMP_MAX: u32 = 2147483647;
pub const TMP_MAX_S: u32 = 2147483647;
pub const _TMP_MAX_S: u32 = 2147483647;
pub const SYS_OPEN: u32 = 20;
pub const DEFsetT: u32 = 1;
pub const DEFqhT: u32 = 1;
pub const qhmem_ERRmem: u32 = 4;
pub const qhmem_ERRqhull: u32 = 5;
pub const qhDEFset: u32 = 1;
pub const _JBLEN: u32 = 16;
pub const False: u32 = 0;
pub const True: u32 = 1;
pub const qh_False: u32 = 0;
pub const qh_True: u32 = 1;
pub const qhDEFstat: u32 = 1;
pub const DEFqhstatT: u32 = 1;
pub const qh_ALL: u32 = 1;
pub const qh_NOupper: u32 = 1;
pub const qh_IScheckmax: u32 = 1;
pub const qh_ISnewfacets: u32 = 1;
pub const qh_RESETvisible: u32 = 1;
pub const qh_ERRnone: u32 = 0;
pub const qh_ERRinput: u32 = 1;
pub const qh_ERRsingular: u32 = 2;
pub const qh_ERRprec: u32 = 3;
pub const qh_ERRmem: u32 = 4;
pub const qh_ERRqhull: u32 = 5;
pub const qh_ERRother: u32 = 6;
pub const qh_ERRtopology: u32 = 7;
pub const qh_ERRwide: u32 = 8;
pub const qh_ERRdebug: u32 = 9;
pub const qh_MAXnummerge: u32 = 511;
pub const QHULL_NON_REENTRANT: u32 = 0;
pub const QHULL_QH_POINTER: u32 = 1;
pub const QHULL_REENTRANT: u32 = 2;
pub const QHULL_LIB_TYPE: u32 = 2;
pub const qhDEFio: u32 = 1;
pub const qh_MAXfirst: u32 = 200;
pub const qh_MINradius: f64 = 0.02;
pub const qh_GEOMepsilon: f64 = 0.002;
pub const qh_WHITESPACE: &[u8; 7] = b" \n\t\x0B\r\x0C\0";
pub const QH_TRY_ERROR: u32 = 10071;
pub type va_list = *mut ::core::ffi::c_char;
extern "C" {
pub fn __va_start(arg1: *mut *mut ::core::ffi::c_char, ...);
}
pub type __vcrt_bool = bool;
pub type wchar_t = ::core::ffi::c_ushort;
extern "C" {
pub fn __security_init_cookie();
}
extern "C" {
pub fn __security_check_cookie(_StackCookie: usize);
}
extern "C" {
pub fn __report_gsfailure(_StackCookie: usize) -> !;
}
extern "C" {
pub static mut __security_cookie: usize;
}
pub type __crt_bool = bool;
extern "C" {
pub fn _invalid_parameter_noinfo();
}
extern "C" {
pub fn _invalid_parameter_noinfo_noreturn() -> !;
}
extern "C" {
pub fn _invoke_watson(
_Expression: *const wchar_t,
_FunctionName: *const wchar_t,
_FileName: *const wchar_t,
_LineNo: ::core::ffi::c_uint,
_Reserved: usize,
) -> !;
}
pub type errno_t = ::core::ffi::c_int;
pub type wint_t = ::core::ffi::c_ushort;
pub type wctype_t = ::core::ffi::c_ushort;
pub type __time32_t = ::core::ffi::c_long;
pub type __time64_t = ::core::ffi::c_longlong;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __crt_locale_data_public {
pub _locale_pctype: *const ::core::ffi::c_ushort,
pub _locale_mb_cur_max: ::core::ffi::c_int,
pub _locale_lc_codepage: ::core::ffi::c_uint,
}
#[test]
fn bindgen_test_layout___crt_locale_data_public() {
const UNINIT: ::core::mem::MaybeUninit<__crt_locale_data_public> =
::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<__crt_locale_data_public>(),
16usize,
concat!("Size of: ", stringify!(__crt_locale_data_public))
);
assert_eq!(
::core::mem::align_of::<__crt_locale_data_public>(),
8usize,
concat!("Alignment of ", stringify!(__crt_locale_data_public))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr)._locale_pctype) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__crt_locale_data_public),
"::",
stringify!(_locale_pctype)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr)._locale_mb_cur_max) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(__crt_locale_data_public),
"::",
stringify!(_locale_mb_cur_max)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr)._locale_lc_codepage) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(__crt_locale_data_public),
"::",
stringify!(_locale_lc_codepage)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __crt_locale_pointers {
pub locinfo: *mut __crt_locale_data,
pub mbcinfo: *mut __crt_multibyte_data,
}
#[test]
fn bindgen_test_layout___crt_locale_pointers() {
const UNINIT: ::core::mem::MaybeUninit<__crt_locale_pointers> =
::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<__crt_locale_pointers>(),
16usize,
concat!("Size of: ", stringify!(__crt_locale_pointers))
);
assert_eq!(
::core::mem::align_of::<__crt_locale_pointers>(),
8usize,
concat!("Alignment of ", stringify!(__crt_locale_pointers))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).locinfo) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__crt_locale_pointers),
"::",
stringify!(locinfo)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).mbcinfo) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(__crt_locale_pointers),
"::",
stringify!(mbcinfo)
)
);
}
pub type _locale_t = *mut __crt_locale_pointers;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _Mbstatet {
pub _Wchar: ::core::ffi::c_ulong,
pub _Byte: ::core::ffi::c_ushort,
pub _State: ::core::ffi::c_ushort,
}
#[test]
fn bindgen_test_layout__Mbstatet() {
const UNINIT: ::core::mem::MaybeUninit<_Mbstatet> = ::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<_Mbstatet>(),
8usize,
concat!("Size of: ", stringify!(_Mbstatet))
);
assert_eq!(
::core::mem::align_of::<_Mbstatet>(),
4usize,
concat!("Alignment of ", stringify!(_Mbstatet))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr)._Wchar) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_Mbstatet),
"::",
stringify!(_Wchar)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr)._Byte) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_Mbstatet),
"::",
stringify!(_Byte)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr)._State) as usize - ptr as usize },
6usize,
concat!(
"Offset of field: ",
stringify!(_Mbstatet),
"::",
stringify!(_State)
)
);
}
pub type mbstate_t = _Mbstatet;
pub type time_t = __time64_t;
pub type rsize_t = usize;
extern "C" {
pub fn _clearfp() -> ::core::ffi::c_uint;
}
extern "C" {
pub fn _controlfp(
_NewValue: ::core::ffi::c_uint,
_Mask: ::core::ffi::c_uint,
) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn _set_controlfp(_NewValue: ::core::ffi::c_uint, _Mask: ::core::ffi::c_uint);
}
extern "C" {
pub fn _controlfp_s(
_CurrentState: *mut ::core::ffi::c_uint,
_NewValue: ::core::ffi::c_uint,
_Mask: ::core::ffi::c_uint,
) -> errno_t;
}
extern "C" {
pub fn _statusfp() -> ::core::ffi::c_uint;
}
extern "C" {
pub fn _fpreset();
}
extern "C" {
pub fn _control87(
_NewValue: ::core::ffi::c_uint,
_Mask: ::core::ffi::c_uint,
) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn __fpecode() -> *mut ::core::ffi::c_int;
}
extern "C" {
pub fn __fpe_flt_rounds() -> ::core::ffi::c_int;
}
extern "C" {
pub fn _copysign(_Number: f64, _Sign: f64) -> f64;
}
extern "C" {
pub fn _chgsign(_X: f64) -> f64;
}
extern "C" {
pub fn _scalb(_X: f64, _Y: ::core::ffi::c_long) -> f64;
}
extern "C" {
pub fn _logb(_X: f64) -> f64;
}
extern "C" {
pub fn _nextafter(_X: f64, _Y: f64) -> f64;
}
extern "C" {
pub fn _finite(_X: f64) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _isnan(_X: f64) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _fpclass(_X: f64) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _scalbf(_X: f32, _Y: ::core::ffi::c_long) -> f32;
}
extern "C" {
pub fn fpreset();
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct tm {
pub tm_sec: ::core::ffi::c_int,
pub tm_min: ::core::ffi::c_int,
pub tm_hour: ::core::ffi::c_int,
pub tm_mday: ::core::ffi::c_int,
pub tm_mon: ::core::ffi::c_int,
pub tm_year: ::core::ffi::c_int,
pub tm_wday: ::core::ffi::c_int,
pub tm_yday: ::core::ffi::c_int,
pub tm_isdst: ::core::ffi::c_int,
}
#[test]
fn bindgen_test_layout_tm() {
const UNINIT: ::core::mem::MaybeUninit<tm> = ::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<tm>(),
36usize,
concat!("Size of: ", stringify!(tm))
);
assert_eq!(
::core::mem::align_of::<tm>(),
4usize,
concat!("Alignment of ", stringify!(tm))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tm_sec) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(tm),
"::",
stringify!(tm_sec)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tm_min) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(tm),
"::",
stringify!(tm_min)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tm_hour) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(tm),
"::",
stringify!(tm_hour)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tm_mday) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(tm),
"::",
stringify!(tm_mday)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tm_mon) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(tm),
"::",
stringify!(tm_mon)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tm_year) as usize - ptr as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(tm),
"::",
stringify!(tm_year)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tm_wday) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(tm),
"::",
stringify!(tm_wday)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tm_yday) as usize - ptr as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(tm),
"::",
stringify!(tm_yday)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tm_isdst) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(tm),
"::",
stringify!(tm_isdst)
)
);
}
extern "C" {
pub fn _wasctime(_Tm: *const tm) -> *mut wchar_t;
}
extern "C" {
pub fn _wasctime_s(_Buffer: *mut wchar_t, _SizeInWords: usize, _Tm: *const tm) -> errno_t;
}
extern "C" {
pub fn wcsftime(
_Buffer: *mut wchar_t,
_SizeInWords: usize,
_Format: *const wchar_t,
_Tm: *const tm,
) -> usize;
}
extern "C" {
pub fn _wcsftime_l(
_Buffer: *mut wchar_t,
_SizeInWords: usize,
_Format: *const wchar_t,
_Tm: *const tm,
_Locale: _locale_t,
) -> usize;
}
extern "C" {
pub fn _wctime32(_Time: *const __time32_t) -> *mut wchar_t;
}
extern "C" {
pub fn _wctime32_s(
_Buffer: *mut wchar_t,
_SizeInWords: usize,
_Time: *const __time32_t,
) -> errno_t;
}
extern "C" {
pub fn _wctime64(_Time: *const __time64_t) -> *mut wchar_t;
}
extern "C" {
pub fn _wctime64_s(
_Buffer: *mut wchar_t,
_SizeInWords: usize,
_Time: *const __time64_t,
) -> errno_t;
}
extern "C" {
pub fn _wstrdate_s(_Buffer: *mut wchar_t, _SizeInWords: usize) -> errno_t;
}
extern "C" {
pub fn _wstrdate(_Buffer: *mut wchar_t) -> *mut wchar_t;
}
extern "C" {
pub fn _wstrtime_s(_Buffer: *mut wchar_t, _SizeInWords: usize) -> errno_t;
}
extern "C" {
pub fn _wstrtime(_Buffer: *mut wchar_t) -> *mut wchar_t;
}
pub type clock_t = ::core::ffi::c_long;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _timespec32 {
pub tv_sec: __time32_t,
pub tv_nsec: ::core::ffi::c_long,
}
#[test]
fn bindgen_test_layout__timespec32() {
const UNINIT: ::core::mem::MaybeUninit<_timespec32> = ::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<_timespec32>(),
8usize,
concat!("Size of: ", stringify!(_timespec32))
);
assert_eq!(
::core::mem::align_of::<_timespec32>(),
4usize,
concat!("Alignment of ", stringify!(_timespec32))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tv_sec) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_timespec32),
"::",
stringify!(tv_sec)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tv_nsec) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_timespec32),
"::",
stringify!(tv_nsec)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _timespec64 {
pub tv_sec: __time64_t,
pub tv_nsec: ::core::ffi::c_long,
}
#[test]
fn bindgen_test_layout__timespec64() {
const UNINIT: ::core::mem::MaybeUninit<_timespec64> = ::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<_timespec64>(),
16usize,
concat!("Size of: ", stringify!(_timespec64))
);
assert_eq!(
::core::mem::align_of::<_timespec64>(),
8usize,
concat!("Alignment of ", stringify!(_timespec64))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tv_sec) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_timespec64),
"::",
stringify!(tv_sec)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tv_nsec) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_timespec64),
"::",
stringify!(tv_nsec)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct timespec {
pub tv_sec: time_t,
pub tv_nsec: ::core::ffi::c_long,
}
#[test]
fn bindgen_test_layout_timespec() {
const UNINIT: ::core::mem::MaybeUninit<timespec> = ::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<timespec>(),
16usize,
concat!("Size of: ", stringify!(timespec))
);
assert_eq!(
::core::mem::align_of::<timespec>(),
8usize,
concat!("Alignment of ", stringify!(timespec))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tv_sec) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(timespec),
"::",
stringify!(tv_sec)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tv_nsec) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(timespec),
"::",
stringify!(tv_nsec)
)
);
}
extern "C" {
pub fn __daylight() -> *mut ::core::ffi::c_int;
}
extern "C" {
pub fn __dstbias() -> *mut ::core::ffi::c_long;
}
extern "C" {
pub fn __timezone() -> *mut ::core::ffi::c_long;
}
extern "C" {
pub fn __tzname() -> *mut *mut ::core::ffi::c_char;
}
extern "C" {
pub fn _get_daylight(_Daylight: *mut ::core::ffi::c_int) -> errno_t;
}
extern "C" {
pub fn _get_dstbias(_DaylightSavingsBias: *mut ::core::ffi::c_long) -> errno_t;
}
extern "C" {
pub fn _get_timezone(_TimeZone: *mut ::core::ffi::c_long) -> errno_t;
}
extern "C" {
pub fn _get_tzname(
_ReturnValue: *mut usize,
_Buffer: *mut ::core::ffi::c_char,
_SizeInBytes: usize,
_Index: ::core::ffi::c_int,
) -> errno_t;
}
extern "C" {
pub fn asctime(_Tm: *const tm) -> *mut ::core::ffi::c_char;
}
extern "C" {
pub fn asctime_s(
_Buffer: *mut ::core::ffi::c_char,
_SizeInBytes: usize,
_Tm: *const tm,
) -> errno_t;
}
extern "C" {
pub fn clock() -> clock_t;
}
extern "C" {
pub fn _ctime32(_Time: *const __time32_t) -> *mut ::core::ffi::c_char;
}
extern "C" {
pub fn _ctime32_s(
_Buffer: *mut ::core::ffi::c_char,
_SizeInBytes: usize,
_Time: *const __time32_t,
) -> errno_t;
}
extern "C" {
pub fn _ctime64(_Time: *const __time64_t) -> *mut ::core::ffi::c_char;
}
extern "C" {
pub fn _ctime64_s(
_Buffer: *mut ::core::ffi::c_char,
_SizeInBytes: usize,
_Time: *const __time64_t,
) -> errno_t;
}
extern "C" {
pub fn _difftime32(_Time1: __time32_t, _Time2: __time32_t) -> f64;
}
extern "C" {
pub fn _difftime64(_Time1: __time64_t, _Time2: __time64_t) -> f64;
}
extern "C" {
pub fn _gmtime32(_Time: *const __time32_t) -> *mut tm;
}
extern "C" {
pub fn _gmtime32_s(_Tm: *mut tm, _Time: *const __time32_t) -> errno_t;
}
extern "C" {
pub fn _gmtime64(_Time: *const __time64_t) -> *mut tm;
}
extern "C" {
pub fn _gmtime64_s(_Tm: *mut tm, _Time: *const __time64_t) -> errno_t;
}
extern "C" {
pub fn _localtime32(_Time: *const __time32_t) -> *mut tm;
}
extern "C" {
pub fn _localtime32_s(_Tm: *mut tm, _Time: *const __time32_t) -> errno_t;
}
extern "C" {
pub fn _localtime64(_Time: *const __time64_t) -> *mut tm;
}
extern "C" {
pub fn _localtime64_s(_Tm: *mut tm, _Time: *const __time64_t) -> errno_t;
}
extern "C" {
pub fn _mkgmtime32(_Tm: *mut tm) -> __time32_t;
}
extern "C" {
pub fn _mkgmtime64(_Tm: *mut tm) -> __time64_t;
}
extern "C" {
pub fn _mktime32(_Tm: *mut tm) -> __time32_t;
}
extern "C" {
pub fn _mktime64(_Tm: *mut tm) -> __time64_t;
}
extern "C" {
pub fn strftime(
_Buffer: *mut ::core::ffi::c_char,
_SizeInBytes: usize,
_Format: *const ::core::ffi::c_char,
_Tm: *const tm,
) -> usize;
}
extern "C" {
pub fn _strftime_l(
_Buffer: *mut ::core::ffi::c_char,
_MaxSize: usize,
_Format: *const ::core::ffi::c_char,
_Tm: *const tm,
_Locale: _locale_t,
) -> usize;
}
extern "C" {
pub fn _strdate_s(_Buffer: *mut ::core::ffi::c_char, _SizeInBytes: usize) -> errno_t;
}
extern "C" {
pub fn _strdate(_Buffer: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char;
}
extern "C" {
pub fn _strtime_s(_Buffer: *mut ::core::ffi::c_char, _SizeInBytes: usize) -> errno_t;
}
extern "C" {
pub fn _strtime(_Buffer: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char;
}
extern "C" {
pub fn _time32(_Time: *mut __time32_t) -> __time32_t;
}
extern "C" {
pub fn _time64(_Time: *mut __time64_t) -> __time64_t;
}
extern "C" {
pub fn _timespec32_get(_Ts: *mut _timespec32, _Base: ::core::ffi::c_int) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _timespec64_get(_Ts: *mut _timespec64, _Base: ::core::ffi::c_int) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _tzset();
}
extern "C" {
pub fn _getsystime(_Tm: *mut tm) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn _setsystime(_Tm: *mut tm, _Milliseconds: ::core::ffi::c_uint) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn tzset();
}
pub type countT = ::core::ffi::c_int;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _iobuf {
pub _Placeholder: *mut ::core::ffi::c_void,
}
#[test]
fn bindgen_test_layout__iobuf() {
const UNINIT: ::core::mem::MaybeUninit<_iobuf> = ::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<_iobuf>(),
8usize,
concat!("Size of: ", stringify!(_iobuf))
);
assert_eq!(
::core::mem::align_of::<_iobuf>(),
8usize,
concat!("Alignment of ", stringify!(_iobuf))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr)._Placeholder) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_iobuf),
"::",
stringify!(_Placeholder)
)
);
}
pub type FILE = _iobuf;
extern "C" {
pub fn __acrt_iob_func(_Ix: ::core::ffi::c_uint) -> *mut FILE;
}
extern "C" {
pub fn fgetwc(_Stream: *mut FILE) -> wint_t;
}
extern "C" {
pub fn _fgetwchar() -> wint_t;
}
extern "C" {
pub fn fputwc(_Character: wchar_t, _Stream: *mut FILE) -> wint_t;
}
extern "C" {
pub fn _fputwchar(_Character: wchar_t) -> wint_t;
}
extern "C" {
pub fn getwc(_Stream: *mut FILE) -> wint_t;
}
extern "C" {
pub fn getwchar() -> wint_t;
}
extern "C" {
pub fn fgetws(
_Buffer: *mut wchar_t,
_BufferCount: ::core::ffi::c_int,
_Stream: *mut FILE,
) -> *mut wchar_t;
}
extern "C" {
pub fn fputws(_Buffer: *const wchar_t, _Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _getws_s(_Buffer: *mut wchar_t, _BufferCount: usize) -> *mut wchar_t;
}
extern "C" {
pub fn putwc(_Character: wchar_t, _Stream: *mut FILE) -> wint_t;
}
extern "C" {
pub fn putwchar(_Character: wchar_t) -> wint_t;
}
extern "C" {
pub fn _putws(_Buffer: *const wchar_t) -> ::core::ffi::c_int;
}
extern "C" {
pub fn ungetwc(_Character: wint_t, _Stream: *mut FILE) -> wint_t;
}
extern "C" {
pub fn _wfdopen(_FileHandle: ::core::ffi::c_int, _Mode: *const wchar_t) -> *mut FILE;
}
extern "C" {
pub fn _wfopen(_FileName: *const wchar_t, _Mode: *const wchar_t) -> *mut FILE;
}
extern "C" {
pub fn _wfopen_s(
_Stream: *mut *mut FILE,
_FileName: *const wchar_t,
_Mode: *const wchar_t,
) -> errno_t;
}
extern "C" {
pub fn _wfreopen(
_FileName: *const wchar_t,
_Mode: *const wchar_t,
_OldStream: *mut FILE,
) -> *mut FILE;
}
extern "C" {
pub fn _wfreopen_s(
_Stream: *mut *mut FILE,
_FileName: *const wchar_t,
_Mode: *const wchar_t,
_OldStream: *mut FILE,
) -> errno_t;
}
extern "C" {
pub fn _wfsopen(
_FileName: *const wchar_t,
_Mode: *const wchar_t,
_ShFlag: ::core::ffi::c_int,
) -> *mut FILE;
}
extern "C" {
pub fn _wperror(_ErrorMessage: *const wchar_t);
}
extern "C" {
pub fn _wpopen(_Command: *const wchar_t, _Mode: *const wchar_t) -> *mut FILE;
}
extern "C" {
pub fn _wremove(_FileName: *const wchar_t) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _wtempnam(_Directory: *const wchar_t, _FilePrefix: *const wchar_t) -> *mut wchar_t;
}
extern "C" {
pub fn _wtmpnam_s(_Buffer: *mut wchar_t, _BufferCount: usize) -> errno_t;
}
extern "C" {
pub fn _wtmpnam(_Buffer: *mut wchar_t) -> *mut wchar_t;
}
extern "C" {
pub fn _fgetwc_nolock(_Stream: *mut FILE) -> wint_t;
}
extern "C" {
pub fn _fputwc_nolock(_Character: wchar_t, _Stream: *mut FILE) -> wint_t;
}
extern "C" {
pub fn _getwc_nolock(_Stream: *mut FILE) -> wint_t;
}
extern "C" {
pub fn _putwc_nolock(_Character: wchar_t, _Stream: *mut FILE) -> wint_t;
}
extern "C" {
pub fn _ungetwc_nolock(_Character: wint_t, _Stream: *mut FILE) -> wint_t;
}
extern "C" {
pub fn __stdio_common_vfwprintf(
_Options: ::core::ffi::c_ulonglong,
_Stream: *mut FILE,
_Format: *const wchar_t,
_Locale: _locale_t,
_ArgList: va_list,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn __stdio_common_vfwprintf_s(
_Options: ::core::ffi::c_ulonglong,
_Stream: *mut FILE,
_Format: *const wchar_t,
_Locale: _locale_t,
_ArgList: va_list,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn __stdio_common_vfwprintf_p(
_Options: ::core::ffi::c_ulonglong,
_Stream: *mut FILE,
_Format: *const wchar_t,
_Locale: _locale_t,
_ArgList: va_list,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn __stdio_common_vfwscanf(
_Options: ::core::ffi::c_ulonglong,
_Stream: *mut FILE,
_Format: *const wchar_t,
_Locale: _locale_t,
_ArgList: va_list,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn __stdio_common_vswprintf(
_Options: ::core::ffi::c_ulonglong,
_Buffer: *mut wchar_t,
_BufferCount: usize,
_Format: *const wchar_t,
_Locale: _locale_t,
_ArgList: va_list,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn __stdio_common_vswprintf_s(
_Options: ::core::ffi::c_ulonglong,
_Buffer: *mut wchar_t,
_BufferCount: usize,
_Format: *const wchar_t,
_Locale: _locale_t,
_ArgList: va_list,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn __stdio_common_vsnwprintf_s(
_Options: ::core::ffi::c_ulonglong,
_Buffer: *mut wchar_t,
_BufferCount: usize,
_MaxCount: usize,
_Format: *const wchar_t,
_Locale: _locale_t,
_ArgList: va_list,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn __stdio_common_vswprintf_p(
_Options: ::core::ffi::c_ulonglong,
_Buffer: *mut wchar_t,
_BufferCount: usize,
_Format: *const wchar_t,
_Locale: _locale_t,
_ArgList: va_list,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn __stdio_common_vswscanf(
_Options: ::core::ffi::c_ulonglong,
_Buffer: *const wchar_t,
_BufferCount: usize,
_Format: *const wchar_t,
_Locale: _locale_t,
_ArgList: va_list,
) -> ::core::ffi::c_int;
}
pub type fpos_t = ::core::ffi::c_longlong;
extern "C" {
pub fn _get_stream_buffer_pointers(
_Stream: *mut FILE,
_Base: *mut *mut *mut ::core::ffi::c_char,
_Pointer: *mut *mut *mut ::core::ffi::c_char,
_Count: *mut *mut ::core::ffi::c_int,
) -> errno_t;
}
extern "C" {
pub fn clearerr_s(_Stream: *mut FILE) -> errno_t;
}
extern "C" {
pub fn fopen_s(
_Stream: *mut *mut FILE,
_FileName: *const ::core::ffi::c_char,
_Mode: *const ::core::ffi::c_char,
) -> errno_t;
}
extern "C" {
pub fn fread_s(
_Buffer: *mut ::core::ffi::c_void,
_BufferSize: usize,
_ElementSize: usize,
_ElementCount: usize,
_Stream: *mut FILE,
) -> usize;
}
extern "C" {
pub fn freopen_s(
_Stream: *mut *mut FILE,
_FileName: *const ::core::ffi::c_char,
_Mode: *const ::core::ffi::c_char,
_OldStream: *mut FILE,
) -> errno_t;
}
extern "C" {
pub fn gets_s(_Buffer: *mut ::core::ffi::c_char, _Size: rsize_t) -> *mut ::core::ffi::c_char;
}
extern "C" {
pub fn tmpfile_s(_Stream: *mut *mut FILE) -> errno_t;
}
extern "C" {
pub fn tmpnam_s(_Buffer: *mut ::core::ffi::c_char, _Size: rsize_t) -> errno_t;
}
extern "C" {
pub fn clearerr(_Stream: *mut FILE);
}
extern "C" {
pub fn fclose(_Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _fcloseall() -> ::core::ffi::c_int;
}
extern "C" {
pub fn _fdopen(_FileHandle: ::core::ffi::c_int, _Mode: *const ::core::ffi::c_char)
-> *mut FILE;
}
extern "C" {
pub fn feof(_Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn ferror(_Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn fflush(_Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn fgetc(_Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _fgetchar() -> ::core::ffi::c_int;
}
extern "C" {
pub fn fgetpos(_Stream: *mut FILE, _Position: *mut fpos_t) -> ::core::ffi::c_int;
}
extern "C" {
pub fn fgets(
_Buffer: *mut ::core::ffi::c_char,
_MaxCount: ::core::ffi::c_int,
_Stream: *mut FILE,
) -> *mut ::core::ffi::c_char;
}
extern "C" {
pub fn _fileno(_Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _flushall() -> ::core::ffi::c_int;
}
extern "C" {
pub fn fopen(
_FileName: *const ::core::ffi::c_char,
_Mode: *const ::core::ffi::c_char,
) -> *mut FILE;
}
extern "C" {
pub fn fputc(_Character: ::core::ffi::c_int, _Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _fputchar(_Character: ::core::ffi::c_int) -> ::core::ffi::c_int;
}
extern "C" {
pub fn fputs(_Buffer: *const ::core::ffi::c_char, _Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn fread(
_Buffer: *mut ::core::ffi::c_void,
_ElementSize: ::core::ffi::c_ulonglong,
_ElementCount: ::core::ffi::c_ulonglong,
_Stream: *mut FILE,
) -> ::core::ffi::c_ulonglong;
}
extern "C" {
pub fn freopen(
_FileName: *const ::core::ffi::c_char,
_Mode: *const ::core::ffi::c_char,
_Stream: *mut FILE,
) -> *mut FILE;
}
extern "C" {
pub fn _fsopen(
_FileName: *const ::core::ffi::c_char,
_Mode: *const ::core::ffi::c_char,
_ShFlag: ::core::ffi::c_int,
) -> *mut FILE;
}
extern "C" {
pub fn fsetpos(_Stream: *mut FILE, _Position: *const fpos_t) -> ::core::ffi::c_int;
}
extern "C" {
pub fn fseek(
_Stream: *mut FILE,
_Offset: ::core::ffi::c_long,
_Origin: ::core::ffi::c_int,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _fseeki64(
_Stream: *mut FILE,
_Offset: ::core::ffi::c_longlong,
_Origin: ::core::ffi::c_int,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn ftell(_Stream: *mut FILE) -> ::core::ffi::c_long;
}
extern "C" {
pub fn _ftelli64(_Stream: *mut FILE) -> ::core::ffi::c_longlong;
}
extern "C" {
pub fn fwrite(
_Buffer: *const ::core::ffi::c_void,
_ElementSize: ::core::ffi::c_ulonglong,
_ElementCount: ::core::ffi::c_ulonglong,
_Stream: *mut FILE,
) -> ::core::ffi::c_ulonglong;
}
extern "C" {
pub fn getc(_Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn getchar() -> ::core::ffi::c_int;
}
extern "C" {
pub fn _getmaxstdio() -> ::core::ffi::c_int;
}
extern "C" {
pub fn _getw(_Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn perror(_ErrorMessage: *const ::core::ffi::c_char);
}
extern "C" {
pub fn _pclose(_Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _popen(
_Command: *const ::core::ffi::c_char,
_Mode: *const ::core::ffi::c_char,
) -> *mut FILE;
}
extern "C" {
pub fn putc(_Character: ::core::ffi::c_int, _Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn putchar(_Character: ::core::ffi::c_int) -> ::core::ffi::c_int;
}
extern "C" {
pub fn puts(_Buffer: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _putw(_Word: ::core::ffi::c_int, _Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn remove(_FileName: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
}
extern "C" {
pub fn rename(
_OldFileName: *const ::core::ffi::c_char,
_NewFileName: *const ::core::ffi::c_char,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _unlink(_FileName: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
}
extern "C" {
pub fn unlink(_FileName: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
}
extern "C" {
pub fn rewind(_Stream: *mut FILE);
}
extern "C" {
pub fn _rmtmp() -> ::core::ffi::c_int;
}
extern "C" {
pub fn setbuf(_Stream: *mut FILE, _Buffer: *mut ::core::ffi::c_char);
}
extern "C" {
pub fn _setmaxstdio(_Maximum: ::core::ffi::c_int) -> ::core::ffi::c_int;
}
extern "C" {
pub fn setvbuf(
_Stream: *mut FILE,
_Buffer: *mut ::core::ffi::c_char,
_Mode: ::core::ffi::c_int,
_Size: usize,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _tempnam(
_DirectoryName: *const ::core::ffi::c_char,
_FilePrefix: *const ::core::ffi::c_char,
) -> *mut ::core::ffi::c_char;
}
extern "C" {
pub fn tmpfile() -> *mut FILE;
}
extern "C" {
pub fn tmpnam(_Buffer: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char;
}
extern "C" {
pub fn ungetc(_Character: ::core::ffi::c_int, _Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _lock_file(_Stream: *mut FILE);
}
extern "C" {
pub fn _unlock_file(_Stream: *mut FILE);
}
extern "C" {
pub fn _fclose_nolock(_Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _fflush_nolock(_Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _fgetc_nolock(_Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _fputc_nolock(_Character: ::core::ffi::c_int, _Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _fread_nolock(
_Buffer: *mut ::core::ffi::c_void,
_ElementSize: usize,
_ElementCount: usize,
_Stream: *mut FILE,
) -> usize;
}
extern "C" {
pub fn _fread_nolock_s(
_Buffer: *mut ::core::ffi::c_void,
_BufferSize: usize,
_ElementSize: usize,
_ElementCount: usize,
_Stream: *mut FILE,
) -> usize;
}
extern "C" {
pub fn _fseek_nolock(
_Stream: *mut FILE,
_Offset: ::core::ffi::c_long,
_Origin: ::core::ffi::c_int,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _fseeki64_nolock(
_Stream: *mut FILE,
_Offset: ::core::ffi::c_longlong,
_Origin: ::core::ffi::c_int,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _ftell_nolock(_Stream: *mut FILE) -> ::core::ffi::c_long;
}
extern "C" {
pub fn _ftelli64_nolock(_Stream: *mut FILE) -> ::core::ffi::c_longlong;
}
extern "C" {
pub fn _fwrite_nolock(
_Buffer: *const ::core::ffi::c_void,
_ElementSize: usize,
_ElementCount: usize,
_Stream: *mut FILE,
) -> usize;
}
extern "C" {
pub fn _getc_nolock(_Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _putc_nolock(_Character: ::core::ffi::c_int, _Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _ungetc_nolock(_Character: ::core::ffi::c_int, _Stream: *mut FILE)
-> ::core::ffi::c_int;
}
extern "C" {
pub fn __p__commode() -> *mut ::core::ffi::c_int;
}
extern "C" {
pub fn __stdio_common_vfprintf(
_Options: ::core::ffi::c_ulonglong,
_Stream: *mut FILE,
_Format: *const ::core::ffi::c_char,
_Locale: _locale_t,
_ArgList: va_list,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn __stdio_common_vfprintf_s(
_Options: ::core::ffi::c_ulonglong,
_Stream: *mut FILE,
_Format: *const ::core::ffi::c_char,
_Locale: _locale_t,
_ArgList: va_list,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn __stdio_common_vfprintf_p(
_Options: ::core::ffi::c_ulonglong,
_Stream: *mut FILE,
_Format: *const ::core::ffi::c_char,
_Locale: _locale_t,
_ArgList: va_list,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _set_printf_count_output(_Value: ::core::ffi::c_int) -> ::core::ffi::c_int;
}
extern "C" {
pub fn _get_printf_count_output() -> ::core::ffi::c_int;
}
extern "C" {
pub fn __stdio_common_vfscanf(
_Options: ::core::ffi::c_ulonglong,
_Stream: *mut FILE,
_Format: *const ::core::ffi::c_char,
_Locale: _locale_t,
_Arglist: va_list,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn __stdio_common_vsprintf(
_Options: ::core::ffi::c_ulonglong,
_Buffer: *mut ::core::ffi::c_char,
_BufferCount: usize,
_Format: *const ::core::ffi::c_char,
_Locale: _locale_t,
_ArgList: va_list,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn __stdio_common_vsprintf_s(
_Options: ::core::ffi::c_ulonglong,
_Buffer: *mut ::core::ffi::c_char,
_BufferCount: usize,
_Format: *const ::core::ffi::c_char,
_Locale: _locale_t,
_ArgList: va_list,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn __stdio_common_vsnprintf_s(
_Options: ::core::ffi::c_ulonglong,
_Buffer: *mut ::core::ffi::c_char,
_BufferCount: usize,
_MaxCount: usize,
_Format: *const ::core::ffi::c_char,
_Locale: _locale_t,
_ArgList: va_list,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn __stdio_common_vsprintf_p(
_Options: ::core::ffi::c_ulonglong,
_Buffer: *mut ::core::ffi::c_char,
_BufferCount: usize,
_Format: *const ::core::ffi::c_char,
_Locale: _locale_t,
_ArgList: va_list,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn __stdio_common_vsscanf(
_Options: ::core::ffi::c_ulonglong,
_Buffer: *const ::core::ffi::c_char,
_BufferCount: usize,
_Format: *const ::core::ffi::c_char,
_Locale: _locale_t,
_ArgList: va_list,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn tempnam(
_Directory: *const ::core::ffi::c_char,
_FilePrefix: *const ::core::ffi::c_char,
) -> *mut ::core::ffi::c_char;
}
extern "C" {
pub fn fcloseall() -> ::core::ffi::c_int;
}
extern "C" {
pub fn fdopen(
_FileHandle: ::core::ffi::c_int,
_Format: *const ::core::ffi::c_char,
) -> *mut FILE;
}
extern "C" {
pub fn fgetchar() -> ::core::ffi::c_int;
}
extern "C" {
pub fn fileno(_Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn flushall() -> ::core::ffi::c_int;
}
extern "C" {
pub fn fputchar(_Ch: ::core::ffi::c_int) -> ::core::ffi::c_int;
}
extern "C" {
pub fn getw(_Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn putw(_Ch: ::core::ffi::c_int, _Stream: *mut FILE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn rmtmp() -> ::core::ffi::c_int;
}
pub type ptr_intT = ::core::ffi::c_longlong;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct qhmemT {
pub BUFsize: ::core::ffi::c_int,
pub BUFinit: ::core::ffi::c_int,
pub TABLEsize: ::core::ffi::c_int,
pub NUMsizes: ::core::ffi::c_int,
pub LASTsize: ::core::ffi::c_int,
pub ALIGNmask: ::core::ffi::c_int,
pub freelists: *mut *mut ::core::ffi::c_void,
pub sizetable: *mut ::core::ffi::c_int,
pub indextable: *mut ::core::ffi::c_int,
pub curbuffer: *mut ::core::ffi::c_void,
pub freemem: *mut ::core::ffi::c_void,
pub freesize: ::core::ffi::c_int,
pub tempstack: *mut setT,
pub ferr: *mut FILE,
pub IStracing: ::core::ffi::c_int,
pub cntquick: ::core::ffi::c_int,
pub cntshort: ::core::ffi::c_int,
pub cntlong: ::core::ffi::c_int,
pub freeshort: ::core::ffi::c_int,
pub freelong: ::core::ffi::c_int,
pub totbuffer: ::core::ffi::c_int,
pub totdropped: ::core::ffi::c_int,
pub totfree: ::core::ffi::c_int,
pub totlong: ::core::ffi::c_int,
pub maxlong: ::core::ffi::c_int,
pub totshort: ::core::ffi::c_int,
pub totunused: ::core::ffi::c_int,
pub cntlarger: ::core::ffi::c_int,
pub totlarger: ::core::ffi::c_int,
}
#[test]
fn bindgen_test_layout_qhmemT() {
const UNINIT: ::core::mem::MaybeUninit<qhmemT> = ::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<qhmemT>(),
152usize,
concat!("Size of: ", stringify!(qhmemT))
);
assert_eq!(
::core::mem::align_of::<qhmemT>(),
8usize,
concat!("Alignment of ", stringify!(qhmemT))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).BUFsize) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(BUFsize)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).BUFinit) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(BUFinit)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).TABLEsize) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(TABLEsize)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).NUMsizes) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(NUMsizes)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).LASTsize) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(LASTsize)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ALIGNmask) as usize - ptr as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(ALIGNmask)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).freelists) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(freelists)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).sizetable) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(sizetable)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).indextable) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(indextable)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).curbuffer) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(curbuffer)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).freemem) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(freemem)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).freesize) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(freesize)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tempstack) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(tempstack)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ferr) as usize - ptr as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(ferr)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).IStracing) as usize - ptr as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(IStracing)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).cntquick) as usize - ptr as usize },
92usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(cntquick)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).cntshort) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(cntshort)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).cntlong) as usize - ptr as usize },
100usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(cntlong)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).freeshort) as usize - ptr as usize },
104usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(freeshort)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).freelong) as usize - ptr as usize },
108usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(freelong)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).totbuffer) as usize - ptr as usize },
112usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(totbuffer)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).totdropped) as usize - ptr as usize },
116usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(totdropped)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).totfree) as usize - ptr as usize },
120usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(totfree)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).totlong) as usize - ptr as usize },
124usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(totlong)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).maxlong) as usize - ptr as usize },
128usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(maxlong)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).totshort) as usize - ptr as usize },
132usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(totshort)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).totunused) as usize - ptr as usize },
136usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(totunused)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).cntlarger) as usize - ptr as usize },
140usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(cntlarger)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).totlarger) as usize - ptr as usize },
144usize,
concat!(
"Offset of field: ",
stringify!(qhmemT),
"::",
stringify!(totlarger)
)
);
}
extern "C" {
pub fn qh_memalloc(qh: *mut qhT, insize: ::core::ffi::c_int) -> *mut ::core::ffi::c_void;
}
extern "C" {
pub fn qh_memcheck(qh: *mut qhT);
}
extern "C" {
pub fn qh_memfree(qh: *mut qhT, object: *mut ::core::ffi::c_void, insize: ::core::ffi::c_int);
}
extern "C" {
pub fn qh_memfreeshort(
qh: *mut qhT,
curlong: *mut ::core::ffi::c_int,
totlong: *mut ::core::ffi::c_int,
);
}
extern "C" {
#[doc = " -mem_r.c prototypes (duplicated from mem_r.h)"]
pub fn qh_meminit(qh: *mut qhT, ferr: *mut FILE);
}
extern "C" {
pub fn qh_meminitbuffers(
qh: *mut qhT,
tracelevel: ::core::ffi::c_int,
alignment: ::core::ffi::c_int,
numsizes: ::core::ffi::c_int,
bufsize: ::core::ffi::c_int,
bufinit: ::core::ffi::c_int,
);
}
extern "C" {
pub fn qh_memsetup(qh: *mut qhT);
}
extern "C" {
pub fn qh_memsize(qh: *mut qhT, size: ::core::ffi::c_int);
}
extern "C" {
pub fn qh_memstatistics(qh: *mut qhT, fp: *mut FILE);
}
extern "C" {
pub fn qh_memtotal(
qh: *mut qhT,
totlong: *mut ::core::ffi::c_int,
curlong: *mut ::core::ffi::c_int,
totshort: *mut ::core::ffi::c_int,
curshort: *mut ::core::ffi::c_int,
maxlong: *mut ::core::ffi::c_int,
totbuffer: *mut ::core::ffi::c_int,
);
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union setelemT {
pub p: *mut ::core::ffi::c_void,
pub i: ::core::ffi::c_int,
}
#[test]
fn bindgen_test_layout_setelemT() {
const UNINIT: ::core::mem::MaybeUninit<setelemT> = ::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<setelemT>(),
8usize,
concat!("Size of: ", stringify!(setelemT))
);
assert_eq!(
::core::mem::align_of::<setelemT>(),
8usize,
concat!("Alignment of ", stringify!(setelemT))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).p) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(setelemT),
"::",
stringify!(p)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).i) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(setelemT),
"::",
stringify!(i)
)
);
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct setT {
pub maxsize: ::core::ffi::c_int,
pub e: [setelemT; 1usize],
}
#[test]
fn bindgen_test_layout_setT() {
const UNINIT: ::core::mem::MaybeUninit<setT> = ::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<setT>(),
16usize,
concat!("Size of: ", stringify!(setT))
);
assert_eq!(
::core::mem::align_of::<setT>(),
8usize,
concat!("Alignment of ", stringify!(setT))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).maxsize) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(setT),
"::",
stringify!(maxsize)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).e) as usize - ptr as usize },
8usize,
concat!("Offset of field: ", stringify!(setT), "::", stringify!(e))
);
}
extern "C" {
pub fn qh_setaddsorted(qh: *mut qhT, setp: *mut *mut setT, elem: *mut ::core::ffi::c_void);
}
extern "C" {
pub fn qh_setaddnth(
qh: *mut qhT,
setp: *mut *mut setT,
nth: ::core::ffi::c_int,
newelem: *mut ::core::ffi::c_void,
);
}
extern "C" {
pub fn qh_setappend(qh: *mut qhT, setp: *mut *mut setT, elem: *mut ::core::ffi::c_void);
}
extern "C" {
pub fn qh_setappend_set(qh: *mut qhT, setp: *mut *mut setT, setA: *mut setT);
}
extern "C" {
pub fn qh_setappend2ndlast(qh: *mut qhT, setp: *mut *mut setT, elem: *mut ::core::ffi::c_void);
}
extern "C" {
pub fn qh_setcheck(
qh: *mut qhT,
set: *mut setT,
tname: *const ::core::ffi::c_char,
id: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_setcompact(qh: *mut qhT, set: *mut setT);
}
extern "C" {
pub fn qh_setcopy(qh: *mut qhT, set: *mut setT, extra: ::core::ffi::c_int) -> *mut setT;
}
extern "C" {
pub fn qh_setdel(set: *mut setT, elem: *mut ::core::ffi::c_void) -> *mut ::core::ffi::c_void;
}
extern "C" {
pub fn qh_setdellast(set: *mut setT) -> *mut ::core::ffi::c_void;
}
extern "C" {
pub fn qh_setdelnth(
qh: *mut qhT,
set: *mut setT,
nth: ::core::ffi::c_int,
) -> *mut ::core::ffi::c_void;
}
extern "C" {
pub fn qh_setdelnthsorted(
qh: *mut qhT,
set: *mut setT,
nth: ::core::ffi::c_int,
) -> *mut ::core::ffi::c_void;
}
extern "C" {
pub fn qh_setdelsorted(
set: *mut setT,
newelem: *mut ::core::ffi::c_void,
) -> *mut ::core::ffi::c_void;
}
extern "C" {
pub fn qh_setduplicate(qh: *mut qhT, set: *mut setT, elemsize: ::core::ffi::c_int)
-> *mut setT;
}
extern "C" {
pub fn qh_setendpointer(set: *mut setT) -> *mut *mut ::core::ffi::c_void;
}
extern "C" {
pub fn qh_setequal(setA: *mut setT, setB: *mut setT) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_setequal_except(
setA: *mut setT,
skipelemA: *mut ::core::ffi::c_void,
setB: *mut setT,
skipelemB: *mut ::core::ffi::c_void,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_setequal_skip(
setA: *mut setT,
skipA: ::core::ffi::c_int,
setB: *mut setT,
skipB: ::core::ffi::c_int,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_setfree(qh: *mut qhT, set: *mut *mut setT);
}
extern "C" {
pub fn qh_setfree2(qh: *mut qhT, setp: *mut *mut setT, elemsize: ::core::ffi::c_int);
}
extern "C" {
pub fn qh_setfreelong(qh: *mut qhT, set: *mut *mut setT);
}
extern "C" {
pub fn qh_setin(set: *mut setT, setelem: *mut ::core::ffi::c_void) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_setindex(set: *mut setT, setelem: *mut ::core::ffi::c_void) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_setlarger(qh: *mut qhT, setp: *mut *mut setT);
}
extern "C" {
pub fn qh_setlarger_quick(
qh: *mut qhT,
setsize: ::core::ffi::c_int,
newsize: *mut ::core::ffi::c_int,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_setlast(set: *mut setT) -> *mut ::core::ffi::c_void;
}
extern "C" {
pub fn qh_setnew(qh: *mut qhT, size: ::core::ffi::c_int) -> *mut setT;
}
extern "C" {
pub fn qh_setnew_delnthsorted(
qh: *mut qhT,
set: *mut setT,
size: ::core::ffi::c_int,
nth: ::core::ffi::c_int,
prepend: ::core::ffi::c_int,
) -> *mut setT;
}
extern "C" {
pub fn qh_setprint(
qh: *mut qhT,
fp: *mut FILE,
string: *const ::core::ffi::c_char,
set: *mut setT,
);
}
extern "C" {
pub fn qh_setreplace(
qh: *mut qhT,
set: *mut setT,
oldelem: *mut ::core::ffi::c_void,
newelem: *mut ::core::ffi::c_void,
);
}
extern "C" {
pub fn qh_setsize(qh: *mut qhT, set: *mut setT) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_settemp(qh: *mut qhT, setsize: ::core::ffi::c_int) -> *mut setT;
}
extern "C" {
pub fn qh_settempfree(qh: *mut qhT, set: *mut *mut setT);
}
extern "C" {
pub fn qh_settempfree_all(qh: *mut qhT);
}
extern "C" {
pub fn qh_settemppop(qh: *mut qhT) -> *mut setT;
}
extern "C" {
pub fn qh_settemppush(qh: *mut qhT, set: *mut setT);
}
extern "C" {
pub fn qh_settruncate(qh: *mut qhT, set: *mut setT, size: ::core::ffi::c_int);
}
extern "C" {
pub fn qh_setunique(
qh: *mut qhT,
set: *mut *mut setT,
elem: *mut ::core::ffi::c_void,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_setzero(
qh: *mut qhT,
set: *mut setT,
idx: ::core::ffi::c_int,
size: ::core::ffi::c_int,
);
}
#[repr(C)]
#[repr(align(16))]
#[derive(Debug, Copy, Clone)]
pub struct _SETJMP_FLOAT128 {
pub Part: [::core::ffi::c_ulonglong; 2usize],
}
#[test]
fn bindgen_test_layout__SETJMP_FLOAT128() {
const UNINIT: ::core::mem::MaybeUninit<_SETJMP_FLOAT128> = ::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<_SETJMP_FLOAT128>(),
16usize,
concat!("Size of: ", stringify!(_SETJMP_FLOAT128))
);
assert_eq!(
::core::mem::align_of::<_SETJMP_FLOAT128>(),
16usize,
concat!("Alignment of ", stringify!(_SETJMP_FLOAT128))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Part) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_SETJMP_FLOAT128),
"::",
stringify!(Part)
)
);
}
pub type SETJMP_FLOAT128 = _SETJMP_FLOAT128;
pub type _JBTYPE = SETJMP_FLOAT128;
#[repr(C)]
#[repr(align(16))]
#[derive(Debug, Copy, Clone)]
pub struct _JUMP_BUFFER {
pub Frame: ::core::ffi::c_ulonglong,
pub Rbx: ::core::ffi::c_ulonglong,
pub Rsp: ::core::ffi::c_ulonglong,
pub Rbp: ::core::ffi::c_ulonglong,
pub Rsi: ::core::ffi::c_ulonglong,
pub Rdi: ::core::ffi::c_ulonglong,
pub R12: ::core::ffi::c_ulonglong,
pub R13: ::core::ffi::c_ulonglong,
pub R14: ::core::ffi::c_ulonglong,
pub R15: ::core::ffi::c_ulonglong,
pub Rip: ::core::ffi::c_ulonglong,
pub MxCsr: ::core::ffi::c_ulong,
pub FpCsr: ::core::ffi::c_ushort,
pub Spare: ::core::ffi::c_ushort,
pub Xmm6: SETJMP_FLOAT128,
pub Xmm7: SETJMP_FLOAT128,
pub Xmm8: SETJMP_FLOAT128,
pub Xmm9: SETJMP_FLOAT128,
pub Xmm10: SETJMP_FLOAT128,
pub Xmm11: SETJMP_FLOAT128,
pub Xmm12: SETJMP_FLOAT128,
pub Xmm13: SETJMP_FLOAT128,
pub Xmm14: SETJMP_FLOAT128,
pub Xmm15: SETJMP_FLOAT128,
}
#[test]
fn bindgen_test_layout__JUMP_BUFFER() {
const UNINIT: ::core::mem::MaybeUninit<_JUMP_BUFFER> = ::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<_JUMP_BUFFER>(),
256usize,
concat!("Size of: ", stringify!(_JUMP_BUFFER))
);
assert_eq!(
::core::mem::align_of::<_JUMP_BUFFER>(),
16usize,
concat!("Alignment of ", stringify!(_JUMP_BUFFER))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Frame) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Frame)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Rbx) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Rbx)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Rsp) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Rsp)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Rbp) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Rbp)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Rsi) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Rsi)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Rdi) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Rdi)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).R12) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(R12)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).R13) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(R13)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).R14) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(R14)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).R15) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(R15)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Rip) as usize - ptr as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Rip)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MxCsr) as usize - ptr as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(MxCsr)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).FpCsr) as usize - ptr as usize },
92usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(FpCsr)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Spare) as usize - ptr as usize },
94usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Spare)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Xmm6) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Xmm6)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Xmm7) as usize - ptr as usize },
112usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Xmm7)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Xmm8) as usize - ptr as usize },
128usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Xmm8)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Xmm9) as usize - ptr as usize },
144usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Xmm9)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Xmm10) as usize - ptr as usize },
160usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Xmm10)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Xmm11) as usize - ptr as usize },
176usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Xmm11)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Xmm12) as usize - ptr as usize },
192usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Xmm12)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Xmm13) as usize - ptr as usize },
208usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Xmm13)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Xmm14) as usize - ptr as usize },
224usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Xmm14)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).Xmm15) as usize - ptr as usize },
240usize,
concat!(
"Offset of field: ",
stringify!(_JUMP_BUFFER),
"::",
stringify!(Xmm15)
)
);
}
pub type jmp_buf = [_JBTYPE; 16usize];
extern "C" {
pub fn _setjmp(_Buf: *mut _JBTYPE) -> ::core::ffi::c_int;
}
extern "C" {
pub fn longjmp(_Buf: *mut _JBTYPE, _Value: ::core::ffi::c_int) -> !;
}
extern "C" {
pub static qh_version: [::core::ffi::c_char; 0usize];
}
extern "C" {
pub static qh_version2: [::core::ffi::c_char; 0usize];
}
pub const qh_pointT_qh_IDnone: qh_pointT = -3;
pub const qh_pointT_qh_IDinterior: qh_pointT = -2;
pub const qh_pointT_qh_IDunknown: qh_pointT = -1;
pub type qh_pointT = ::core::ffi::c_int;
pub const qh_statistics_Zacoplanar: qh_statistics = 0;
pub const qh_statistics_Wacoplanarmax: qh_statistics = 1;
pub const qh_statistics_Wacoplanartot: qh_statistics = 2;
pub const qh_statistics_Zangle: qh_statistics = 3;
pub const qh_statistics_Wangle: qh_statistics = 4;
pub const qh_statistics_Wanglemax: qh_statistics = 5;
pub const qh_statistics_Wanglemin: qh_statistics = 6;
pub const qh_statistics_Zangletests: qh_statistics = 7;
pub const qh_statistics_Wareatot: qh_statistics = 8;
pub const qh_statistics_Wareamax: qh_statistics = 9;
pub const qh_statistics_Wareamin: qh_statistics = 10;
pub const qh_statistics_Zavoidold: qh_statistics = 11;
pub const qh_statistics_Wavoidoldmax: qh_statistics = 12;
pub const qh_statistics_Wavoidoldtot: qh_statistics = 13;
pub const qh_statistics_Zback0: qh_statistics = 14;
pub const qh_statistics_Zbestcentrum: qh_statistics = 15;
pub const qh_statistics_Zbestdist: qh_statistics = 16;
pub const qh_statistics_Zbestlower: qh_statistics = 17;
pub const qh_statistics_Zbestlowerall: qh_statistics = 18;
pub const qh_statistics_Zbestloweralln: qh_statistics = 19;
pub const qh_statistics_Zbestlowerv: qh_statistics = 20;
pub const qh_statistics_Zcentrumtests: qh_statistics = 21;
pub const qh_statistics_Zcheckpart: qh_statistics = 22;
pub const qh_statistics_Zcomputefurthest: qh_statistics = 23;
pub const qh_statistics_Zconcave: qh_statistics = 24;
pub const qh_statistics_Wconcavemax: qh_statistics = 25;
pub const qh_statistics_Wconcavetot: qh_statistics = 26;
pub const qh_statistics_Zconcavecoplanar: qh_statistics = 27;
pub const qh_statistics_Wconcavecoplanarmax: qh_statistics = 28;
pub const qh_statistics_Wconcavecoplanartot: qh_statistics = 29;
pub const qh_statistics_Zconcavecoplanarridge: qh_statistics = 30;
pub const qh_statistics_Zconcaveridge: qh_statistics = 31;
pub const qh_statistics_Zconcaveridges: qh_statistics = 32;
pub const qh_statistics_Zcoplanar: qh_statistics = 33;
pub const qh_statistics_Wcoplanarmax: qh_statistics = 34;
pub const qh_statistics_Wcoplanartot: qh_statistics = 35;
pub const qh_statistics_Zcoplanarangle: qh_statistics = 36;
pub const qh_statistics_Zcoplanarcentrum: qh_statistics = 37;
pub const qh_statistics_Zcoplanarhorizon: qh_statistics = 38;
pub const qh_statistics_Zcoplanarinside: qh_statistics = 39;
pub const qh_statistics_Zcoplanarpart: qh_statistics = 40;
pub const qh_statistics_Zcoplanarridges: qh_statistics = 41;
pub const qh_statistics_Wcpu: qh_statistics = 42;
pub const qh_statistics_Zcyclefacetmax: qh_statistics = 43;
pub const qh_statistics_Zcyclefacettot: qh_statistics = 44;
pub const qh_statistics_Zcyclehorizon: qh_statistics = 45;
pub const qh_statistics_Zcyclevertex: qh_statistics = 46;
pub const qh_statistics_Zdegen: qh_statistics = 47;
pub const qh_statistics_Wdegenmax: qh_statistics = 48;
pub const qh_statistics_Wdegentot: qh_statistics = 49;
pub const qh_statistics_Zdegenvertex: qh_statistics = 50;
pub const qh_statistics_Zdelfacetdup: qh_statistics = 51;
pub const qh_statistics_Zdelridge: qh_statistics = 52;
pub const qh_statistics_Zdelvertextot: qh_statistics = 53;
pub const qh_statistics_Zdelvertexmax: qh_statistics = 54;
pub const qh_statistics_Zdetfacetarea: qh_statistics = 55;
pub const qh_statistics_Zdetsimplex: qh_statistics = 56;
pub const qh_statistics_Zdistcheck: qh_statistics = 57;
pub const qh_statistics_Zdistconvex: qh_statistics = 58;
pub const qh_statistics_Zdistgood: qh_statistics = 59;
pub const qh_statistics_Zdistio: qh_statistics = 60;
pub const qh_statistics_Zdistplane: qh_statistics = 61;
pub const qh_statistics_Zdiststat: qh_statistics = 62;
pub const qh_statistics_Zdistvertex: qh_statistics = 63;
pub const qh_statistics_Zdistzero: qh_statistics = 64;
pub const qh_statistics_Zdoc1: qh_statistics = 65;
pub const qh_statistics_Zdoc2: qh_statistics = 66;
pub const qh_statistics_Zdoc3: qh_statistics = 67;
pub const qh_statistics_Zdoc4: qh_statistics = 68;
pub const qh_statistics_Zdoc5: qh_statistics = 69;
pub const qh_statistics_Zdoc6: qh_statistics = 70;
pub const qh_statistics_Zdoc7: qh_statistics = 71;
pub const qh_statistics_Zdoc8: qh_statistics = 72;
pub const qh_statistics_Zdoc9: qh_statistics = 73;
pub const qh_statistics_Zdoc10: qh_statistics = 74;
pub const qh_statistics_Zdoc11: qh_statistics = 75;
pub const qh_statistics_Zdoc12: qh_statistics = 76;
pub const qh_statistics_Zdropdegen: qh_statistics = 77;
pub const qh_statistics_Zdropneighbor: qh_statistics = 78;
pub const qh_statistics_Zdupflip: qh_statistics = 79;
pub const qh_statistics_Zduplicate: qh_statistics = 80;
pub const qh_statistics_Wduplicatemax: qh_statistics = 81;
pub const qh_statistics_Wduplicatetot: qh_statistics = 82;
pub const qh_statistics_Zdupsame: qh_statistics = 83;
pub const qh_statistics_Zflipped: qh_statistics = 84;
pub const qh_statistics_Wflippedmax: qh_statistics = 85;
pub const qh_statistics_Wflippedtot: qh_statistics = 86;
pub const qh_statistics_Zflippedfacets: qh_statistics = 87;
pub const qh_statistics_Zflipridge: qh_statistics = 88;
pub const qh_statistics_Zflipridge2: qh_statistics = 89;
pub const qh_statistics_Zfindbest: qh_statistics = 90;
pub const qh_statistics_Zfindbestmax: qh_statistics = 91;
pub const qh_statistics_Zfindbesttot: qh_statistics = 92;
pub const qh_statistics_Zfindcoplanar: qh_statistics = 93;
pub const qh_statistics_Zfindfail: qh_statistics = 94;
pub const qh_statistics_Zfindhorizon: qh_statistics = 95;
pub const qh_statistics_Zfindhorizonmax: qh_statistics = 96;
pub const qh_statistics_Zfindhorizontot: qh_statistics = 97;
pub const qh_statistics_Zfindjump: qh_statistics = 98;
pub const qh_statistics_Zfindnew: qh_statistics = 99;
pub const qh_statistics_Zfindnewmax: qh_statistics = 100;
pub const qh_statistics_Zfindnewtot: qh_statistics = 101;
pub const qh_statistics_Zfindnewjump: qh_statistics = 102;
pub const qh_statistics_Zfindnewsharp: qh_statistics = 103;
pub const qh_statistics_Zgauss0: qh_statistics = 104;
pub const qh_statistics_Zgoodfacet: qh_statistics = 105;
pub const qh_statistics_Zhashlookup: qh_statistics = 106;
pub const qh_statistics_Zhashridge: qh_statistics = 107;
pub const qh_statistics_Zhashridgetest: qh_statistics = 108;
pub const qh_statistics_Zhashtests: qh_statistics = 109;
pub const qh_statistics_Zinsidevisible: qh_statistics = 110;
pub const qh_statistics_Zintersect: qh_statistics = 111;
pub const qh_statistics_Zintersectfail: qh_statistics = 112;
pub const qh_statistics_Zintersectmax: qh_statistics = 113;
pub const qh_statistics_Zintersectnum: qh_statistics = 114;
pub const qh_statistics_Zintersecttot: qh_statistics = 115;
pub const qh_statistics_Zmaxneighbors: qh_statistics = 116;
pub const qh_statistics_Wmaxout: qh_statistics = 117;
pub const qh_statistics_Wmaxoutside: qh_statistics = 118;
pub const qh_statistics_Zmaxridges: qh_statistics = 119;
pub const qh_statistics_Zmaxvertex: qh_statistics = 120;
pub const qh_statistics_Zmaxvertices: qh_statistics = 121;
pub const qh_statistics_Zmaxvneighbors: qh_statistics = 122;
pub const qh_statistics_Zmemfacets: qh_statistics = 123;
pub const qh_statistics_Zmempoints: qh_statistics = 124;
pub const qh_statistics_Zmemridges: qh_statistics = 125;
pub const qh_statistics_Zmemvertices: qh_statistics = 126;
pub const qh_statistics_Zmergeflipdup: qh_statistics = 127;
pub const qh_statistics_Zmergehorizon: qh_statistics = 128;
pub const qh_statistics_Zmergeinittot: qh_statistics = 129;
pub const qh_statistics_Zmergeinitmax: qh_statistics = 130;
pub const qh_statistics_Zmergeinittot2: qh_statistics = 131;
pub const qh_statistics_Zmergeintocoplanar: qh_statistics = 132;
pub const qh_statistics_Zmergeintohorizon: qh_statistics = 133;
pub const qh_statistics_Zmergenew: qh_statistics = 134;
pub const qh_statistics_Zmergesettot: qh_statistics = 135;
pub const qh_statistics_Zmergesetmax: qh_statistics = 136;
pub const qh_statistics_Zmergesettot2: qh_statistics = 137;
pub const qh_statistics_Zmergesimplex: qh_statistics = 138;
pub const qh_statistics_Zmergevertex: qh_statistics = 139;
pub const qh_statistics_Wmindenom: qh_statistics = 140;
pub const qh_statistics_Wminvertex: qh_statistics = 141;
pub const qh_statistics_Zminnorm: qh_statistics = 142;
pub const qh_statistics_Zmultiridge: qh_statistics = 143;
pub const qh_statistics_Znearlysingular: qh_statistics = 144;
pub const qh_statistics_Zredundant: qh_statistics = 145;
pub const qh_statistics_Wnewbalance: qh_statistics = 146;
pub const qh_statistics_Wnewbalance2: qh_statistics = 147;
pub const qh_statistics_Znewbesthorizon: qh_statistics = 148;
pub const qh_statistics_Znewfacettot: qh_statistics = 149;
pub const qh_statistics_Znewfacetmax: qh_statistics = 150;
pub const qh_statistics_Znewvertex: qh_statistics = 151;
pub const qh_statistics_Wnewvertex: qh_statistics = 152;
pub const qh_statistics_Wnewvertexmax: qh_statistics = 153;
pub const qh_statistics_Znewvertexridge: qh_statistics = 154;
pub const qh_statistics_Znoarea: qh_statistics = 155;
pub const qh_statistics_Znonsimplicial: qh_statistics = 156;
pub const qh_statistics_Znowsimplicial: qh_statistics = 157;
pub const qh_statistics_Znotgood: qh_statistics = 158;
pub const qh_statistics_Znotgoodnew: qh_statistics = 159;
pub const qh_statistics_Znotmax: qh_statistics = 160;
pub const qh_statistics_Znumfacets: qh_statistics = 161;
pub const qh_statistics_Znummergemax: qh_statistics = 162;
pub const qh_statistics_Znummergetot: qh_statistics = 163;
pub const qh_statistics_Znumneighbors: qh_statistics = 164;
pub const qh_statistics_Znumridges: qh_statistics = 165;
pub const qh_statistics_Znumvertices: qh_statistics = 166;
pub const qh_statistics_Znumvisibility: qh_statistics = 167;
pub const qh_statistics_Znumvneighbors: qh_statistics = 168;
pub const qh_statistics_Zonehorizon: qh_statistics = 169;
pub const qh_statistics_Zpartangle: qh_statistics = 170;
pub const qh_statistics_Zpartcoplanar: qh_statistics = 171;
pub const qh_statistics_Zpartcorner: qh_statistics = 172;
pub const qh_statistics_Zparthidden: qh_statistics = 173;
pub const qh_statistics_Zpartinside: qh_statistics = 174;
pub const qh_statistics_Zpartition: qh_statistics = 175;
pub const qh_statistics_Zpartitionall: qh_statistics = 176;
pub const qh_statistics_Zpartnear: qh_statistics = 177;
pub const qh_statistics_Zparttwisted: qh_statistics = 178;
pub const qh_statistics_Zpbalance: qh_statistics = 179;
pub const qh_statistics_Wpbalance: qh_statistics = 180;
pub const qh_statistics_Wpbalance2: qh_statistics = 181;
pub const qh_statistics_Zpinchduplicate: qh_statistics = 182;
pub const qh_statistics_Zpinchedapex: qh_statistics = 183;
pub const qh_statistics_Zpinchedvertex: qh_statistics = 184;
pub const qh_statistics_Zpostfacets: qh_statistics = 185;
pub const qh_statistics_Zpremergetot: qh_statistics = 186;
pub const qh_statistics_Zprocessed: qh_statistics = 187;
pub const qh_statistics_Zremvertex: qh_statistics = 188;
pub const qh_statistics_Zremvertexdel: qh_statistics = 189;
pub const qh_statistics_Zredundantmerge: qh_statistics = 190;
pub const qh_statistics_Zrenameall: qh_statistics = 191;
pub const qh_statistics_Zrenamepinch: qh_statistics = 192;
pub const qh_statistics_Zrenameshare: qh_statistics = 193;
pub const qh_statistics_Zretry: qh_statistics = 194;
pub const qh_statistics_Wretrymax: qh_statistics = 195;
pub const qh_statistics_Zretryadd: qh_statistics = 196;
pub const qh_statistics_Zretryaddmax: qh_statistics = 197;
pub const qh_statistics_Zretryaddtot: qh_statistics = 198;
pub const qh_statistics_Zridge: qh_statistics = 199;
pub const qh_statistics_Wridge: qh_statistics = 200;
pub const qh_statistics_Wridgemax: qh_statistics = 201;
pub const qh_statistics_Zridge0: qh_statistics = 202;
pub const qh_statistics_Wridge0: qh_statistics = 203;
pub const qh_statistics_Wridge0max: qh_statistics = 204;
pub const qh_statistics_Zridgemid: qh_statistics = 205;
pub const qh_statistics_Wridgemid: qh_statistics = 206;
pub const qh_statistics_Wridgemidmax: qh_statistics = 207;
pub const qh_statistics_Zridgeok: qh_statistics = 208;
pub const qh_statistics_Wridgeok: qh_statistics = 209;
pub const qh_statistics_Wridgeokmax: qh_statistics = 210;
pub const qh_statistics_Zsearchpoints: qh_statistics = 211;
pub const qh_statistics_Zsetplane: qh_statistics = 212;
pub const qh_statistics_Ztestvneighbor: qh_statistics = 213;
pub const qh_statistics_Ztotcheck: qh_statistics = 214;
pub const qh_statistics_Ztothorizon: qh_statistics = 215;
pub const qh_statistics_Ztotmerge: qh_statistics = 216;
pub const qh_statistics_Ztotpartcoplanar: qh_statistics = 217;
pub const qh_statistics_Ztotpartition: qh_statistics = 218;
pub const qh_statistics_Ztotridges: qh_statistics = 219;
pub const qh_statistics_Ztotvertices: qh_statistics = 220;
pub const qh_statistics_Ztotvisible: qh_statistics = 221;
pub const qh_statistics_Ztricoplanar: qh_statistics = 222;
pub const qh_statistics_Ztricoplanarmax: qh_statistics = 223;
pub const qh_statistics_Ztricoplanartot: qh_statistics = 224;
pub const qh_statistics_Ztridegen: qh_statistics = 225;
pub const qh_statistics_Ztrimirror: qh_statistics = 226;
pub const qh_statistics_Ztrinull: qh_statistics = 227;
pub const qh_statistics_Ztwisted: qh_statistics = 228;
pub const qh_statistics_Wtwistedtot: qh_statistics = 229;
pub const qh_statistics_Wtwistedmax: qh_statistics = 230;
pub const qh_statistics_Ztwistedridge: qh_statistics = 231;
pub const qh_statistics_Zvertextests: qh_statistics = 232;
pub const qh_statistics_Wvertexmax: qh_statistics = 233;
pub const qh_statistics_Wvertexmin: qh_statistics = 234;
pub const qh_statistics_Zvertexridge: qh_statistics = 235;
pub const qh_statistics_Zvertexridgetot: qh_statistics = 236;
pub const qh_statistics_Zvertexridgemax: qh_statistics = 237;
pub const qh_statistics_Zvertices: qh_statistics = 238;
pub const qh_statistics_Zvisfacettot: qh_statistics = 239;
pub const qh_statistics_Zvisfacetmax: qh_statistics = 240;
pub const qh_statistics_Zvisit: qh_statistics = 241;
pub const qh_statistics_Zvisit2max: qh_statistics = 242;
pub const qh_statistics_Zvisvertextot: qh_statistics = 243;
pub const qh_statistics_Zvisvertexmax: qh_statistics = 244;
pub const qh_statistics_Zvvisit: qh_statistics = 245;
pub const qh_statistics_Zvvisit2max: qh_statistics = 246;
pub const qh_statistics_Zwidefacet: qh_statistics = 247;
pub const qh_statistics_Zwidevertices: qh_statistics = 248;
pub const qh_statistics_ZEND: qh_statistics = 249;
pub type qh_statistics = ::core::ffi::c_int;
pub const ztypes_zdoc: ztypes = 0;
pub const ztypes_zinc: ztypes = 1;
pub const ztypes_zadd: ztypes = 2;
pub const ztypes_zmax: ztypes = 3;
pub const ztypes_zmin: ztypes = 4;
pub const ztypes_ZTYPEreal: ztypes = 5;
pub const ztypes_wadd: ztypes = 6;
pub const ztypes_wmax: ztypes = 7;
pub const ztypes_wmin: ztypes = 8;
pub const ztypes_ZTYPEend: ztypes = 9;
pub type ztypes = ::core::ffi::c_int;
#[repr(C)]
#[derive(Copy, Clone)]
pub union intrealT {
pub i: ::core::ffi::c_int,
pub r: f64,
}
#[test]
fn bindgen_test_layout_intrealT() {
const UNINIT: ::core::mem::MaybeUninit<intrealT> = ::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<intrealT>(),
8usize,
concat!("Size of: ", stringify!(intrealT))
);
assert_eq!(
::core::mem::align_of::<intrealT>(),
8usize,
concat!("Alignment of ", stringify!(intrealT))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).i) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(intrealT),
"::",
stringify!(i)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).r) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(intrealT),
"::",
stringify!(r)
)
);
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct qhstatT {
pub stats: [intrealT; 249usize],
pub id: [::core::ffi::c_uchar; 259usize],
pub doc: [*const ::core::ffi::c_char; 249usize],
pub count: [::core::ffi::c_short; 249usize],
pub type_: [::core::ffi::c_char; 249usize],
pub printed: [::core::ffi::c_char; 249usize],
pub init: [intrealT; 9usize],
pub next: ::core::ffi::c_int,
pub precision: ::core::ffi::c_int,
pub vridges: ::core::ffi::c_int,
pub tempi: ::core::ffi::c_int,
pub tempr: f64,
}
#[test]
fn bindgen_test_layout_qhstatT() {
const UNINIT: ::core::mem::MaybeUninit<qhstatT> = ::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<qhstatT>(),
5344usize,
concat!("Size of: ", stringify!(qhstatT))
);
assert_eq!(
::core::mem::align_of::<qhstatT>(),
8usize,
concat!("Alignment of ", stringify!(qhstatT))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).stats) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(qhstatT),
"::",
stringify!(stats)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).id) as usize - ptr as usize },
1992usize,
concat!(
"Offset of field: ",
stringify!(qhstatT),
"::",
stringify!(id)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).doc) as usize - ptr as usize },
2256usize,
concat!(
"Offset of field: ",
stringify!(qhstatT),
"::",
stringify!(doc)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).count) as usize - ptr as usize },
4248usize,
concat!(
"Offset of field: ",
stringify!(qhstatT),
"::",
stringify!(count)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
4746usize,
concat!(
"Offset of field: ",
stringify!(qhstatT),
"::",
stringify!(type_)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).printed) as usize - ptr as usize },
4995usize,
concat!(
"Offset of field: ",
stringify!(qhstatT),
"::",
stringify!(printed)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).init) as usize - ptr as usize },
5248usize,
concat!(
"Offset of field: ",
stringify!(qhstatT),
"::",
stringify!(init)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
5320usize,
concat!(
"Offset of field: ",
stringify!(qhstatT),
"::",
stringify!(next)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).precision) as usize - ptr as usize },
5324usize,
concat!(
"Offset of field: ",
stringify!(qhstatT),
"::",
stringify!(precision)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).vridges) as usize - ptr as usize },
5328usize,
concat!(
"Offset of field: ",
stringify!(qhstatT),
"::",
stringify!(vridges)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tempi) as usize - ptr as usize },
5332usize,
concat!(
"Offset of field: ",
stringify!(qhstatT),
"::",
stringify!(tempi)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tempr) as usize - ptr as usize },
5336usize,
concat!(
"Offset of field: ",
stringify!(qhstatT),
"::",
stringify!(tempr)
)
);
}
extern "C" {
pub fn qh_allstatA(qh: *mut qhT);
}
extern "C" {
pub fn qh_allstatB(qh: *mut qhT);
}
extern "C" {
pub fn qh_allstatC(qh: *mut qhT);
}
extern "C" {
pub fn qh_allstatD(qh: *mut qhT);
}
extern "C" {
pub fn qh_allstatE(qh: *mut qhT);
}
extern "C" {
pub fn qh_allstatE2(qh: *mut qhT);
}
extern "C" {
pub fn qh_allstatF(qh: *mut qhT);
}
extern "C" {
pub fn qh_allstatG(qh: *mut qhT);
}
extern "C" {
pub fn qh_allstatH(qh: *mut qhT);
}
extern "C" {
pub fn qh_allstatI(qh: *mut qhT);
}
extern "C" {
pub fn qh_allstatistics(qh: *mut qhT);
}
extern "C" {
#[doc = " -stat_r.c prototypes (duplicated from stat_r.h)"]
pub fn qh_collectstatistics(qh: *mut qhT);
}
extern "C" {
pub fn qh_initstatistics(qh: *mut qhT);
}
extern "C" {
pub fn qh_newstats(
qh: *mut qhT,
idx: ::core::ffi::c_int,
nextindex: *mut ::core::ffi::c_int,
) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_nostatistic(qh: *mut qhT, i: ::core::ffi::c_int) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_printallstatistics(qh: *mut qhT, fp: *mut FILE, string: *const ::core::ffi::c_char);
}
extern "C" {
pub fn qh_printstatistics(qh: *mut qhT, fp: *mut FILE, string: *const ::core::ffi::c_char);
}
extern "C" {
pub fn qh_printstatlevel(qh: *mut qhT, fp: *mut FILE, id: ::core::ffi::c_int);
}
extern "C" {
pub fn qh_printstats(
qh: *mut qhT,
fp: *mut FILE,
idx: ::core::ffi::c_int,
nextindex: *mut ::core::ffi::c_int,
);
}
extern "C" {
pub fn qh_stddev(
qh: *mut qhT,
num: ::core::ffi::c_int,
tot: f64,
tot2: f64,
ave: *mut f64,
) -> f64;
}
pub const qh_CENTER_qh_ASnone: qh_CENTER = 0;
pub const qh_CENTER_qh_ASvoronoi: qh_CENTER = 1;
pub const qh_CENTER_qh_AScentrum: qh_CENTER = 2;
pub type qh_CENTER = ::core::ffi::c_int;
pub const qh_PRINT_qh_PRINTnone: qh_PRINT = 0;
pub const qh_PRINT_qh_PRINTarea: qh_PRINT = 1;
pub const qh_PRINT_qh_PRINTaverage: qh_PRINT = 2;
pub const qh_PRINT_qh_PRINTcoplanars: qh_PRINT = 3;
pub const qh_PRINT_qh_PRINTcentrums: qh_PRINT = 4;
pub const qh_PRINT_qh_PRINTfacets: qh_PRINT = 5;
pub const qh_PRINT_qh_PRINTfacets_xridge: qh_PRINT = 6;
pub const qh_PRINT_qh_PRINTgeom: qh_PRINT = 7;
pub const qh_PRINT_qh_PRINTids: qh_PRINT = 8;
pub const qh_PRINT_qh_PRINTinner: qh_PRINT = 9;
pub const qh_PRINT_qh_PRINTneighbors: qh_PRINT = 10;
pub const qh_PRINT_qh_PRINTnormals: qh_PRINT = 11;
pub const qh_PRINT_qh_PRINTouter: qh_PRINT = 12;
pub const qh_PRINT_qh_PRINTmaple: qh_PRINT = 13;
pub const qh_PRINT_qh_PRINTincidences: qh_PRINT = 14;
pub const qh_PRINT_qh_PRINTmathematica: qh_PRINT = 15;
pub const qh_PRINT_qh_PRINTmerges: qh_PRINT = 16;
pub const qh_PRINT_qh_PRINToff: qh_PRINT = 17;
pub const qh_PRINT_qh_PRINToptions: qh_PRINT = 18;
pub const qh_PRINT_qh_PRINTpointintersect: qh_PRINT = 19;
pub const qh_PRINT_qh_PRINTpointnearest: qh_PRINT = 20;
pub const qh_PRINT_qh_PRINTpoints: qh_PRINT = 21;
pub const qh_PRINT_qh_PRINTqhull: qh_PRINT = 22;
pub const qh_PRINT_qh_PRINTsize: qh_PRINT = 23;
pub const qh_PRINT_qh_PRINTsummary: qh_PRINT = 24;
pub const qh_PRINT_qh_PRINTtriangles: qh_PRINT = 25;
pub const qh_PRINT_qh_PRINTvertices: qh_PRINT = 26;
pub const qh_PRINT_qh_PRINTvneighbors: qh_PRINT = 27;
pub const qh_PRINT_qh_PRINTextremes: qh_PRINT = 28;
pub const qh_PRINT_qh_PRINTEND: qh_PRINT = 29;
pub type qh_PRINT = ::core::ffi::c_int;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct facetT {
pub furthestdist: f64,
pub maxoutside: f64,
pub offset: f64,
pub normal: *mut f64,
pub f: facetT__bindgen_ty_1,
pub center: *mut f64,
pub previous: *mut facetT,
pub next: *mut facetT,
pub vertices: *mut setT,
pub ridges: *mut setT,
pub neighbors: *mut setT,
pub outsideset: *mut setT,
pub coplanarset: *mut setT,
pub visitid: ::core::ffi::c_uint,
pub id: ::core::ffi::c_uint,
pub _bitfield_align_1: [u16; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
pub __bindgen_padding_0: u32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union facetT__bindgen_ty_1 {
pub area: f64,
pub replace: *mut facetT,
pub samecycle: *mut facetT,
pub newcycle: *mut facetT,
pub trivisible: *mut facetT,
pub triowner: *mut facetT,
}
#[test]
fn bindgen_test_layout_facetT__bindgen_ty_1() {
const UNINIT: ::core::mem::MaybeUninit<facetT__bindgen_ty_1> =
::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<facetT__bindgen_ty_1>(),
8usize,
concat!("Size of: ", stringify!(facetT__bindgen_ty_1))
);
assert_eq!(
::core::mem::align_of::<facetT__bindgen_ty_1>(),
8usize,
concat!("Alignment of ", stringify!(facetT__bindgen_ty_1))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).area) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(facetT__bindgen_ty_1),
"::",
stringify!(area)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).replace) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(facetT__bindgen_ty_1),
"::",
stringify!(replace)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).samecycle) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(facetT__bindgen_ty_1),
"::",
stringify!(samecycle)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).newcycle) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(facetT__bindgen_ty_1),
"::",
stringify!(newcycle)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).trivisible) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(facetT__bindgen_ty_1),
"::",
stringify!(trivisible)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).triowner) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(facetT__bindgen_ty_1),
"::",
stringify!(triowner)
)
);
}
#[test]
fn bindgen_test_layout_facetT() {
const UNINIT: ::core::mem::MaybeUninit<facetT> = ::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<facetT>(),
120usize,
concat!("Size of: ", stringify!(facetT))
);
assert_eq!(
::core::mem::align_of::<facetT>(),
8usize,
concat!("Alignment of ", stringify!(facetT))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).furthestdist) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(facetT),
"::",
stringify!(furthestdist)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).maxoutside) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(facetT),
"::",
stringify!(maxoutside)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).offset) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(facetT),
"::",
stringify!(offset)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).normal) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(facetT),
"::",
stringify!(normal)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).f) as usize - ptr as usize },
32usize,
concat!("Offset of field: ", stringify!(facetT), "::", stringify!(f))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).center) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(facetT),
"::",
stringify!(center)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).previous) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(facetT),
"::",
stringify!(previous)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(facetT),
"::",
stringify!(next)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).vertices) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(facetT),
"::",
stringify!(vertices)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ridges) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(facetT),
"::",
stringify!(ridges)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).neighbors) as usize - ptr as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(facetT),
"::",
stringify!(neighbors)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).outsideset) as usize - ptr as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(facetT),
"::",
stringify!(outsideset)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).coplanarset) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(facetT),
"::",
stringify!(coplanarset)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).visitid) as usize - ptr as usize },
104usize,
concat!(
"Offset of field: ",
stringify!(facetT),
"::",
stringify!(visitid)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).id) as usize - ptr as usize },
108usize,
concat!(
"Offset of field: ",
stringify!(facetT),
"::",
stringify!(id)
)
);
}
impl facetT {
#[inline]
pub fn nummerge(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 9u8) as u32) }
}
#[inline]
pub fn set_nummerge(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 9u8, val as u64)
}
}
#[inline]
pub fn tricoplanar(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u32) }
}
#[inline]
pub fn set_tricoplanar(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(9usize, 1u8, val as u64)
}
}
#[inline]
pub fn newfacet(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u32) }
}
#[inline]
pub fn set_newfacet(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(10usize, 1u8, val as u64)
}
}
#[inline]
pub fn visible(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u32) }
}
#[inline]
pub fn set_visible(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(11usize, 1u8, val as u64)
}
}
#[inline]
pub fn toporient(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u32) }
}
#[inline]
pub fn set_toporient(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(12usize, 1u8, val as u64)
}
}
#[inline]
pub fn simplicial(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u32) }
}
#[inline]
pub fn set_simplicial(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(13usize, 1u8, val as u64)
}
}
#[inline]
pub fn seen(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 1u8) as u32) }
}
#[inline]
pub fn set_seen(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(14usize, 1u8, val as u64)
}
}
#[inline]
pub fn seen2(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 1u8) as u32) }
}
#[inline]
pub fn set_seen2(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(15usize, 1u8, val as u64)
}
}
#[inline]
pub fn flipped(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(16usize, 1u8) as u32) }
}
#[inline]
pub fn set_flipped(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(16usize, 1u8, val as u64)
}
}
#[inline]
pub fn upperdelaunay(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(17usize, 1u8) as u32) }
}
#[inline]
pub fn set_upperdelaunay(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(17usize, 1u8, val as u64)
}
}
#[inline]
pub fn notfurthest(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(18usize, 1u8) as u32) }
}
#[inline]
pub fn set_notfurthest(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(18usize, 1u8, val as u64)
}
}
#[inline]
pub fn good(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(19usize, 1u8) as u32) }
}
#[inline]
pub fn set_good(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(19usize, 1u8, val as u64)
}
}
#[inline]
pub fn isarea(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(20usize, 1u8) as u32) }
}
#[inline]
pub fn set_isarea(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(20usize, 1u8, val as u64)
}
}
#[inline]
pub fn dupridge(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(21usize, 1u8) as u32) }
}
#[inline]
pub fn set_dupridge(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(21usize, 1u8, val as u64)
}
}
#[inline]
pub fn mergeridge(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(22usize, 1u8) as u32) }
}
#[inline]
pub fn set_mergeridge(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(22usize, 1u8, val as u64)
}
}
#[inline]
pub fn mergeridge2(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(23usize, 1u8) as u32) }
}
#[inline]
pub fn set_mergeridge2(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(23usize, 1u8, val as u64)
}
}
#[inline]
pub fn coplanarhorizon(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 1u8) as u32) }
}
#[inline]
pub fn set_coplanarhorizon(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(24usize, 1u8, val as u64)
}
}
#[inline]
pub fn mergehorizon(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(25usize, 1u8) as u32) }
}
#[inline]
pub fn set_mergehorizon(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(25usize, 1u8, val as u64)
}
}
#[inline]
pub fn cycledone(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(26usize, 1u8) as u32) }
}
#[inline]
pub fn set_cycledone(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(26usize, 1u8, val as u64)
}
}
#[inline]
pub fn tested(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(27usize, 1u8) as u32) }
}
#[inline]
pub fn set_tested(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(27usize, 1u8, val as u64)
}
}
#[inline]
pub fn keepcentrum(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(28usize, 1u8) as u32) }
}
#[inline]
pub fn set_keepcentrum(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(28usize, 1u8, val as u64)
}
}
#[inline]
pub fn newmerge(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(29usize, 1u8) as u32) }
}
#[inline]
pub fn set_newmerge(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(29usize, 1u8, val as u64)
}
}
#[inline]
pub fn degenerate(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(30usize, 1u8) as u32) }
}
#[inline]
pub fn set_degenerate(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(30usize, 1u8, val as u64)
}
}
#[inline]
pub fn redundant(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(31usize, 1u8) as u32) }
}
#[inline]
pub fn set_redundant(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(31usize, 1u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(
nummerge: ::core::ffi::c_uint,
tricoplanar: ::core::ffi::c_uint,
newfacet: ::core::ffi::c_uint,
visible: ::core::ffi::c_uint,
toporient: ::core::ffi::c_uint,
simplicial: ::core::ffi::c_uint,
seen: ::core::ffi::c_uint,
seen2: ::core::ffi::c_uint,
flipped: ::core::ffi::c_uint,
upperdelaunay: ::core::ffi::c_uint,
notfurthest: ::core::ffi::c_uint,
good: ::core::ffi::c_uint,
isarea: ::core::ffi::c_uint,
dupridge: ::core::ffi::c_uint,
mergeridge: ::core::ffi::c_uint,
mergeridge2: ::core::ffi::c_uint,
coplanarhorizon: ::core::ffi::c_uint,
mergehorizon: ::core::ffi::c_uint,
cycledone: ::core::ffi::c_uint,
tested: ::core::ffi::c_uint,
keepcentrum: ::core::ffi::c_uint,
newmerge: ::core::ffi::c_uint,
degenerate: ::core::ffi::c_uint,
redundant: ::core::ffi::c_uint,
) -> __BindgenBitfieldUnit<[u8; 4usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 9u8, {
let nummerge: u32 = unsafe { ::core::mem::transmute(nummerge) };
nummerge as u64
});
__bindgen_bitfield_unit.set(9usize, 1u8, {
let tricoplanar: u32 = unsafe { ::core::mem::transmute(tricoplanar) };
tricoplanar as u64
});
__bindgen_bitfield_unit.set(10usize, 1u8, {
let newfacet: u32 = unsafe { ::core::mem::transmute(newfacet) };
newfacet as u64
});
__bindgen_bitfield_unit.set(11usize, 1u8, {
let visible: u32 = unsafe { ::core::mem::transmute(visible) };
visible as u64
});
__bindgen_bitfield_unit.set(12usize, 1u8, {
let toporient: u32 = unsafe { ::core::mem::transmute(toporient) };
toporient as u64
});
__bindgen_bitfield_unit.set(13usize, 1u8, {
let simplicial: u32 = unsafe { ::core::mem::transmute(simplicial) };
simplicial as u64
});
__bindgen_bitfield_unit.set(14usize, 1u8, {
let seen: u32 = unsafe { ::core::mem::transmute(seen) };
seen as u64
});
__bindgen_bitfield_unit.set(15usize, 1u8, {
let seen2: u32 = unsafe { ::core::mem::transmute(seen2) };
seen2 as u64
});
__bindgen_bitfield_unit.set(16usize, 1u8, {
let flipped: u32 = unsafe { ::core::mem::transmute(flipped) };
flipped as u64
});
__bindgen_bitfield_unit.set(17usize, 1u8, {
let upperdelaunay: u32 = unsafe { ::core::mem::transmute(upperdelaunay) };
upperdelaunay as u64
});
__bindgen_bitfield_unit.set(18usize, 1u8, {
let notfurthest: u32 = unsafe { ::core::mem::transmute(notfurthest) };
notfurthest as u64
});
__bindgen_bitfield_unit.set(19usize, 1u8, {
let good: u32 = unsafe { ::core::mem::transmute(good) };
good as u64
});
__bindgen_bitfield_unit.set(20usize, 1u8, {
let isarea: u32 = unsafe { ::core::mem::transmute(isarea) };
isarea as u64
});
__bindgen_bitfield_unit.set(21usize, 1u8, {
let dupridge: u32 = unsafe { ::core::mem::transmute(dupridge) };
dupridge as u64
});
__bindgen_bitfield_unit.set(22usize, 1u8, {
let mergeridge: u32 = unsafe { ::core::mem::transmute(mergeridge) };
mergeridge as u64
});
__bindgen_bitfield_unit.set(23usize, 1u8, {
let mergeridge2: u32 = unsafe { ::core::mem::transmute(mergeridge2) };
mergeridge2 as u64
});
__bindgen_bitfield_unit.set(24usize, 1u8, {
let coplanarhorizon: u32 = unsafe { ::core::mem::transmute(coplanarhorizon) };
coplanarhorizon as u64
});
__bindgen_bitfield_unit.set(25usize, 1u8, {
let mergehorizon: u32 = unsafe { ::core::mem::transmute(mergehorizon) };
mergehorizon as u64
});
__bindgen_bitfield_unit.set(26usize, 1u8, {
let cycledone: u32 = unsafe { ::core::mem::transmute(cycledone) };
cycledone as u64
});
__bindgen_bitfield_unit.set(27usize, 1u8, {
let tested: u32 = unsafe { ::core::mem::transmute(tested) };
tested as u64
});
__bindgen_bitfield_unit.set(28usize, 1u8, {
let keepcentrum: u32 = unsafe { ::core::mem::transmute(keepcentrum) };
keepcentrum as u64
});
__bindgen_bitfield_unit.set(29usize, 1u8, {
let newmerge: u32 = unsafe { ::core::mem::transmute(newmerge) };
newmerge as u64
});
__bindgen_bitfield_unit.set(30usize, 1u8, {
let degenerate: u32 = unsafe { ::core::mem::transmute(degenerate) };
degenerate as u64
});
__bindgen_bitfield_unit.set(31usize, 1u8, {
let redundant: u32 = unsafe { ::core::mem::transmute(redundant) };
redundant as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ridgeT {
pub vertices: *mut setT,
pub top: *mut facetT,
pub bottom: *mut facetT,
pub id: ::core::ffi::c_uint,
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub __bindgen_padding_0: [u8; 3usize],
}
#[test]
fn bindgen_test_layout_ridgeT() {
const UNINIT: ::core::mem::MaybeUninit<ridgeT> = ::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<ridgeT>(),
32usize,
concat!("Size of: ", stringify!(ridgeT))
);
assert_eq!(
::core::mem::align_of::<ridgeT>(),
8usize,
concat!("Alignment of ", stringify!(ridgeT))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).vertices) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(ridgeT),
"::",
stringify!(vertices)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).top) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(ridgeT),
"::",
stringify!(top)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(ridgeT),
"::",
stringify!(bottom)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).id) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(ridgeT),
"::",
stringify!(id)
)
);
}
impl ridgeT {
#[inline]
pub fn seen(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
}
#[inline]
pub fn set_seen(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 1u8, val as u64)
}
}
#[inline]
pub fn tested(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
}
#[inline]
pub fn set_tested(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(1usize, 1u8, val as u64)
}
}
#[inline]
pub fn nonconvex(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
}
#[inline]
pub fn set_nonconvex(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(2usize, 1u8, val as u64)
}
}
#[inline]
pub fn mergevertex(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
}
#[inline]
pub fn set_mergevertex(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(3usize, 1u8, val as u64)
}
}
#[inline]
pub fn mergevertex2(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
}
#[inline]
pub fn set_mergevertex2(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 1u8, val as u64)
}
}
#[inline]
pub fn simplicialtop(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
}
#[inline]
pub fn set_simplicialtop(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(5usize, 1u8, val as u64)
}
}
#[inline]
pub fn simplicialbot(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) }
}
#[inline]
pub fn set_simplicialbot(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(6usize, 1u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(
seen: ::core::ffi::c_uint,
tested: ::core::ffi::c_uint,
nonconvex: ::core::ffi::c_uint,
mergevertex: ::core::ffi::c_uint,
mergevertex2: ::core::ffi::c_uint,
simplicialtop: ::core::ffi::c_uint,
simplicialbot: ::core::ffi::c_uint,
) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 1u8, {
let seen: u32 = unsafe { ::core::mem::transmute(seen) };
seen as u64
});
__bindgen_bitfield_unit.set(1usize, 1u8, {
let tested: u32 = unsafe { ::core::mem::transmute(tested) };
tested as u64
});
__bindgen_bitfield_unit.set(2usize, 1u8, {
let nonconvex: u32 = unsafe { ::core::mem::transmute(nonconvex) };
nonconvex as u64
});
__bindgen_bitfield_unit.set(3usize, 1u8, {
let mergevertex: u32 = unsafe { ::core::mem::transmute(mergevertex) };
mergevertex as u64
});
__bindgen_bitfield_unit.set(4usize, 1u8, {
let mergevertex2: u32 = unsafe { ::core::mem::transmute(mergevertex2) };
mergevertex2 as u64
});
__bindgen_bitfield_unit.set(5usize, 1u8, {
let simplicialtop: u32 = unsafe { ::core::mem::transmute(simplicialtop) };
simplicialtop as u64
});
__bindgen_bitfield_unit.set(6usize, 1u8, {
let simplicialbot: u32 = unsafe { ::core::mem::transmute(simplicialbot) };
simplicialbot as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vertexT {
pub next: *mut vertexT,
pub previous: *mut vertexT,
pub point: *mut f64,
pub neighbors: *mut setT,
pub id: ::core::ffi::c_uint,
pub visitid: ::core::ffi::c_uint,
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub __bindgen_padding_0: [u8; 7usize],
}
#[test]
fn bindgen_test_layout_vertexT() {
const UNINIT: ::core::mem::MaybeUninit<vertexT> = ::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<vertexT>(),
48usize,
concat!("Size of: ", stringify!(vertexT))
);
assert_eq!(
::core::mem::align_of::<vertexT>(),
8usize,
concat!("Alignment of ", stringify!(vertexT))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(vertexT),
"::",
stringify!(next)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).previous) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(vertexT),
"::",
stringify!(previous)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).point) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(vertexT),
"::",
stringify!(point)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).neighbors) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(vertexT),
"::",
stringify!(neighbors)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).id) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(vertexT),
"::",
stringify!(id)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).visitid) as usize - ptr as usize },
36usize,
concat!(
"Offset of field: ",
stringify!(vertexT),
"::",
stringify!(visitid)
)
);
}
impl vertexT {
#[inline]
pub fn seen(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
}
#[inline]
pub fn set_seen(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(0usize, 1u8, val as u64)
}
}
#[inline]
pub fn seen2(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
}
#[inline]
pub fn set_seen2(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(1usize, 1u8, val as u64)
}
}
#[inline]
pub fn deleted(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
}
#[inline]
pub fn set_deleted(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(2usize, 1u8, val as u64)
}
}
#[inline]
pub fn delridge(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
}
#[inline]
pub fn set_delridge(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(3usize, 1u8, val as u64)
}
}
#[inline]
pub fn newfacet(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
}
#[inline]
pub fn set_newfacet(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(4usize, 1u8, val as u64)
}
}
#[inline]
pub fn partitioned(&self) -> ::core::ffi::c_uint {
unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
}
#[inline]
pub fn set_partitioned(&mut self, val: ::core::ffi::c_uint) {
unsafe {
let val: u32 = ::core::mem::transmute(val);
self._bitfield_1.set(5usize, 1u8, val as u64)
}
}
#[inline]
pub fn new_bitfield_1(
seen: ::core::ffi::c_uint,
seen2: ::core::ffi::c_uint,
deleted: ::core::ffi::c_uint,
delridge: ::core::ffi::c_uint,
newfacet: ::core::ffi::c_uint,
partitioned: ::core::ffi::c_uint,
) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 1u8, {
let seen: u32 = unsafe { ::core::mem::transmute(seen) };
seen as u64
});
__bindgen_bitfield_unit.set(1usize, 1u8, {
let seen2: u32 = unsafe { ::core::mem::transmute(seen2) };
seen2 as u64
});
__bindgen_bitfield_unit.set(2usize, 1u8, {
let deleted: u32 = unsafe { ::core::mem::transmute(deleted) };
deleted as u64
});
__bindgen_bitfield_unit.set(3usize, 1u8, {
let delridge: u32 = unsafe { ::core::mem::transmute(delridge) };
delridge as u64
});
__bindgen_bitfield_unit.set(4usize, 1u8, {
let newfacet: u32 = unsafe { ::core::mem::transmute(newfacet) };
newfacet as u64
});
__bindgen_bitfield_unit.set(5usize, 1u8, {
let partitioned: u32 = unsafe { ::core::mem::transmute(partitioned) };
partitioned as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[repr(align(16))]
#[derive(Copy, Clone)]
pub struct qhT {
pub ALLpoints: ::core::ffi::c_uint,
pub ALLOWshort: ::core::ffi::c_uint,
pub ALLOWwarning: ::core::ffi::c_uint,
pub ALLOWwide: ::core::ffi::c_uint,
pub ANGLEmerge: ::core::ffi::c_uint,
pub APPROXhull: ::core::ffi::c_uint,
pub MINoutside: f64,
pub ANNOTATEoutput: ::core::ffi::c_uint,
pub ATinfinity: ::core::ffi::c_uint,
pub AVOIDold: ::core::ffi::c_uint,
pub BESToutside: ::core::ffi::c_uint,
pub CDDinput: ::core::ffi::c_uint,
pub CDDoutput: ::core::ffi::c_uint,
pub CHECKduplicates: ::core::ffi::c_uint,
pub CHECKfrequently: ::core::ffi::c_uint,
pub premerge_cos: f64,
pub postmerge_cos: f64,
pub DELAUNAY: ::core::ffi::c_uint,
pub DOintersections: ::core::ffi::c_uint,
pub DROPdim: ::core::ffi::c_int,
pub FLUSHprint: ::core::ffi::c_uint,
pub FORCEoutput: ::core::ffi::c_uint,
pub GOODpoint: ::core::ffi::c_int,
pub GOODpointp: *mut f64,
pub GOODthreshold: ::core::ffi::c_uint,
pub GOODvertex: ::core::ffi::c_int,
pub GOODvertexp: *mut f64,
pub HALFspace: ::core::ffi::c_uint,
pub ISqhullQh: ::core::ffi::c_uint,
pub IStracing: ::core::ffi::c_int,
pub KEEParea: ::core::ffi::c_int,
pub KEEPcoplanar: ::core::ffi::c_uint,
pub KEEPinside: ::core::ffi::c_uint,
pub KEEPmerge: ::core::ffi::c_int,
pub KEEPminArea: f64,
pub MAXcoplanar: f64,
pub MAXwide: ::core::ffi::c_int,
pub MERGEexact: ::core::ffi::c_uint,
pub MERGEindependent: ::core::ffi::c_uint,
pub MERGING: ::core::ffi::c_uint,
pub premerge_centrum: f64,
pub postmerge_centrum: f64,
pub MERGEpinched: ::core::ffi::c_uint,
pub MERGEvertices: ::core::ffi::c_uint,
pub MINvisible: f64,
pub NOnarrow: ::core::ffi::c_uint,
pub NOnearinside: ::core::ffi::c_uint,
pub NOpremerge: ::core::ffi::c_uint,
pub ONLYgood: ::core::ffi::c_uint,
pub ONLYmax: ::core::ffi::c_uint,
pub PICKfurthest: ::core::ffi::c_uint,
pub POSTmerge: ::core::ffi::c_uint,
pub PREmerge: ::core::ffi::c_uint,
pub PRINTcentrums: ::core::ffi::c_uint,
pub PRINTcoplanar: ::core::ffi::c_uint,
pub PRINTdim: ::core::ffi::c_int,
pub PRINTdots: ::core::ffi::c_uint,
pub PRINTgood: ::core::ffi::c_uint,
pub PRINTinner: ::core::ffi::c_uint,
pub PRINTneighbors: ::core::ffi::c_uint,
pub PRINTnoplanes: ::core::ffi::c_uint,
pub PRINToptions1st: ::core::ffi::c_uint,
pub PRINTouter: ::core::ffi::c_uint,
pub PRINTprecision: ::core::ffi::c_uint,
pub PRINTout: [qh_PRINT; 29usize],
pub PRINTridges: ::core::ffi::c_uint,
pub PRINTspheres: ::core::ffi::c_uint,
pub PRINTstatistics: ::core::ffi::c_uint,
pub PRINTsummary: ::core::ffi::c_uint,
pub PRINTtransparent: ::core::ffi::c_uint,
pub PROJECTdelaunay: ::core::ffi::c_uint,
pub PROJECTinput: ::core::ffi::c_int,
pub RANDOMdist: ::core::ffi::c_uint,
pub RANDOMfactor: f64,
pub RANDOMa: f64,
pub RANDOMb: f64,
pub RANDOMoutside: ::core::ffi::c_uint,
pub REPORTfreq: ::core::ffi::c_int,
pub REPORTfreq2: ::core::ffi::c_int,
pub RERUN: ::core::ffi::c_int,
pub ROTATErandom: ::core::ffi::c_int,
pub SCALEinput: ::core::ffi::c_uint,
pub SCALElast: ::core::ffi::c_uint,
pub SETroundoff: ::core::ffi::c_uint,
pub SKIPcheckmax: ::core::ffi::c_uint,
pub SKIPconvex: ::core::ffi::c_uint,
pub SPLITthresholds: ::core::ffi::c_uint,
pub STOPadd: ::core::ffi::c_int,
pub STOPcone: ::core::ffi::c_int,
pub STOPpoint: ::core::ffi::c_int,
pub TESTpoints: ::core::ffi::c_int,
pub TESTvneighbors: ::core::ffi::c_uint,
pub TRACElevel: ::core::ffi::c_int,
pub TRACElastrun: ::core::ffi::c_int,
pub TRACEpoint: ::core::ffi::c_int,
pub TRACEdist: f64,
pub TRACEmerge: ::core::ffi::c_int,
pub TRIangulate: ::core::ffi::c_uint,
pub TRInormals: ::core::ffi::c_uint,
pub UPPERdelaunay: ::core::ffi::c_uint,
pub USEstdout: ::core::ffi::c_uint,
pub VERIFYoutput: ::core::ffi::c_uint,
pub VIRTUALmemory: ::core::ffi::c_uint,
pub VORONOI: ::core::ffi::c_uint,
pub AREAfactor: f64,
pub DOcheckmax: ::core::ffi::c_uint,
pub feasible_string: *mut ::core::ffi::c_char,
pub feasible_point: *mut f64,
pub GETarea: ::core::ffi::c_uint,
pub KEEPnearinside: ::core::ffi::c_uint,
pub hull_dim: ::core::ffi::c_int,
pub input_dim: ::core::ffi::c_int,
pub num_points: ::core::ffi::c_int,
pub first_point: *mut f64,
pub POINTSmalloc: ::core::ffi::c_uint,
pub input_points: *mut f64,
pub input_malloc: ::core::ffi::c_uint,
pub qhull_command: [::core::ffi::c_char; 256usize],
pub qhull_commandsiz2: ::core::ffi::c_int,
pub rbox_command: [::core::ffi::c_char; 256usize],
pub qhull_options: [::core::ffi::c_char; 512usize],
pub qhull_optionlen: ::core::ffi::c_int,
pub qhull_optionsiz: ::core::ffi::c_int,
pub qhull_optionsiz2: ::core::ffi::c_int,
pub run_id: ::core::ffi::c_int,
pub VERTEXneighbors: ::core::ffi::c_uint,
pub ZEROcentrum: ::core::ffi::c_uint,
pub upper_threshold: *mut f64,
pub lower_threshold: *mut f64,
pub upper_bound: *mut f64,
pub lower_bound: *mut f64,
pub ANGLEround: f64,
pub centrum_radius: f64,
pub cos_max: f64,
pub DISTround: f64,
pub MAXabs_coord: f64,
pub MAXlastcoord: f64,
pub MAXoutside: f64,
pub MAXsumcoord: f64,
pub MAXwidth: f64,
pub MINdenom_1: f64,
pub MINdenom: f64,
pub MINdenom_1_2: f64,
pub MINdenom_2: f64,
pub MINlastcoord: f64,
pub NEARzero: *mut f64,
pub NEARinside: f64,
pub ONEmerge: f64,
pub outside_err: f64,
pub WIDEfacet: f64,
pub NARROWhull: ::core::ffi::c_uint,
pub qhull: [::core::ffi::c_char; 6usize],
pub __bindgen_padding_0: u64,
pub errexit: jmp_buf,
pub jmpXtra: [::core::ffi::c_char; 40usize],
pub __bindgen_padding_1: u64,
pub restartexit: jmp_buf,
pub jmpXtra2: [::core::ffi::c_char; 40usize],
pub fin: *mut FILE,
pub fout: *mut FILE,
pub ferr: *mut FILE,
pub interior_point: *mut f64,
pub normal_size: ::core::ffi::c_int,
pub center_size: ::core::ffi::c_int,
pub TEMPsize: ::core::ffi::c_int,
pub facet_list: *mut facetT,
pub facet_tail: *mut facetT,
pub facet_next: *mut facetT,
pub newfacet_list: *mut facetT,
pub visible_list: *mut facetT,
pub num_visible: ::core::ffi::c_int,
pub tracefacet_id: ::core::ffi::c_uint,
pub tracefacet: *mut facetT,
pub traceridge_id: ::core::ffi::c_uint,
pub traceridge: *mut ridgeT,
pub tracevertex_id: ::core::ffi::c_uint,
pub tracevertex: *mut vertexT,
pub vertex_list: *mut vertexT,
pub vertex_tail: *mut vertexT,
pub newvertex_list: *mut vertexT,
pub num_facets: ::core::ffi::c_int,
pub num_vertices: ::core::ffi::c_int,
pub num_outside: ::core::ffi::c_int,
pub num_good: ::core::ffi::c_int,
pub facet_id: ::core::ffi::c_uint,
pub ridge_id: ::core::ffi::c_uint,
pub vertex_id: ::core::ffi::c_uint,
pub first_newfacet: ::core::ffi::c_uint,
pub hulltime: ::core::ffi::c_ulong,
pub ALLOWrestart: ::core::ffi::c_uint,
pub build_cnt: ::core::ffi::c_int,
pub CENTERtype: qh_CENTER,
pub furthest_id: ::core::ffi::c_int,
pub last_errcode: ::core::ffi::c_int,
pub GOODclosest: *mut facetT,
pub coplanar_apex: *mut f64,
pub hasAreaVolume: ::core::ffi::c_uint,
pub hasTriangulation: ::core::ffi::c_uint,
pub isRenameVertex: ::core::ffi::c_uint,
pub JOGGLEmax: f64,
pub maxoutdone: ::core::ffi::c_uint,
pub max_outside: f64,
pub max_vertex: f64,
pub min_vertex: f64,
pub NEWfacets: ::core::ffi::c_uint,
pub NEWtentative: ::core::ffi::c_uint,
pub findbestnew: ::core::ffi::c_uint,
pub findbest_notsharp: ::core::ffi::c_uint,
pub NOerrexit: ::core::ffi::c_uint,
pub PRINTcradius: f64,
pub PRINTradius: f64,
pub POSTmerging: ::core::ffi::c_uint,
pub printoutvar: ::core::ffi::c_int,
pub printoutnum: ::core::ffi::c_int,
pub repart_facetid: ::core::ffi::c_uint,
pub retry_addpoint: ::core::ffi::c_int,
pub QHULLfinished: ::core::ffi::c_uint,
pub totarea: f64,
pub totvol: f64,
pub visit_id: ::core::ffi::c_uint,
pub vertex_visit: ::core::ffi::c_uint,
pub WAScoplanar: ::core::ffi::c_uint,
pub ZEROall_ok: ::core::ffi::c_uint,
pub facet_mergeset: *mut setT,
pub degen_mergeset: *mut setT,
pub vertex_mergeset: *mut setT,
pub hash_table: *mut setT,
pub other_points: *mut setT,
pub del_vertices: *mut setT,
pub gm_matrix: *mut f64,
pub gm_row: *mut *mut f64,
pub line: *mut ::core::ffi::c_char,
pub maxline: ::core::ffi::c_int,
pub half_space: *mut f64,
pub temp_malloc: *mut f64,
pub ERREXITcalled: ::core::ffi::c_uint,
pub firstcentrum: ::core::ffi::c_uint,
pub old_randomdist: ::core::ffi::c_uint,
pub coplanarfacetset: *mut setT,
pub last_low: f64,
pub last_high: f64,
pub last_newhigh: f64,
pub lastcpu: f64,
pub lastfacets: ::core::ffi::c_int,
pub lastmerges: ::core::ffi::c_int,
pub lastplanes: ::core::ffi::c_int,
pub lastdist: ::core::ffi::c_int,
pub lastreport: ::core::ffi::c_uint,
pub mergereport: ::core::ffi::c_int,
pub old_tempstack: *mut setT,
pub ridgeoutnum: ::core::ffi::c_int,
pub last_random: ::core::ffi::c_int,
pub __bindgen_padding_2: u64,
pub rbox_errexit: jmp_buf,
pub jmpXtra3: [::core::ffi::c_char; 40usize],
pub rbox_isinteger: ::core::ffi::c_int,
pub rbox_out_offset: f64,
pub cpp_object: *mut ::core::ffi::c_void,
pub cpp_other: *mut ::core::ffi::c_void,
pub cpp_user: *mut ::core::ffi::c_void,
pub qhmem: qhmemT,
pub qhstat: qhstatT,
}
#[test]
fn bindgen_test_layout_qhT() {
const UNINIT: ::core::mem::MaybeUninit<qhT> = ::core::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::core::mem::size_of::<qhT>(),
8960usize,
concat!("Size of: ", stringify!(qhT))
);
assert_eq!(
::core::mem::align_of::<qhT>(),
16usize,
concat!("Alignment of ", stringify!(qhT))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ALLpoints) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ALLpoints)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ALLOWshort) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ALLOWshort)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ALLOWwarning) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ALLOWwarning)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ALLOWwide) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ALLOWwide)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ANGLEmerge) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ANGLEmerge)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).APPROXhull) as usize - ptr as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(APPROXhull)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MINoutside) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MINoutside)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ANNOTATEoutput) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ANNOTATEoutput)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ATinfinity) as usize - ptr as usize },
36usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ATinfinity)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).AVOIDold) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(AVOIDold)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).BESToutside) as usize - ptr as usize },
44usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(BESToutside)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).CDDinput) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(CDDinput)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).CDDoutput) as usize - ptr as usize },
52usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(CDDoutput)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).CHECKduplicates) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(CHECKduplicates)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).CHECKfrequently) as usize - ptr as usize },
60usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(CHECKfrequently)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).premerge_cos) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(premerge_cos)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).postmerge_cos) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(postmerge_cos)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).DELAUNAY) as usize - ptr as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(DELAUNAY)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).DOintersections) as usize - ptr as usize },
84usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(DOintersections)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).DROPdim) as usize - ptr as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(DROPdim)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).FLUSHprint) as usize - ptr as usize },
92usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(FLUSHprint)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).FORCEoutput) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(FORCEoutput)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).GOODpoint) as usize - ptr as usize },
100usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(GOODpoint)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).GOODpointp) as usize - ptr as usize },
104usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(GOODpointp)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).GOODthreshold) as usize - ptr as usize },
112usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(GOODthreshold)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).GOODvertex) as usize - ptr as usize },
116usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(GOODvertex)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).GOODvertexp) as usize - ptr as usize },
120usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(GOODvertexp)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).HALFspace) as usize - ptr as usize },
128usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(HALFspace)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ISqhullQh) as usize - ptr as usize },
132usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ISqhullQh)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).IStracing) as usize - ptr as usize },
136usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(IStracing)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).KEEParea) as usize - ptr as usize },
140usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(KEEParea)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).KEEPcoplanar) as usize - ptr as usize },
144usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(KEEPcoplanar)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).KEEPinside) as usize - ptr as usize },
148usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(KEEPinside)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).KEEPmerge) as usize - ptr as usize },
152usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(KEEPmerge)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).KEEPminArea) as usize - ptr as usize },
160usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(KEEPminArea)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MAXcoplanar) as usize - ptr as usize },
168usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MAXcoplanar)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MAXwide) as usize - ptr as usize },
176usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MAXwide)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MERGEexact) as usize - ptr as usize },
180usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MERGEexact)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MERGEindependent) as usize - ptr as usize },
184usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MERGEindependent)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MERGING) as usize - ptr as usize },
188usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MERGING)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).premerge_centrum) as usize - ptr as usize },
192usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(premerge_centrum)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).postmerge_centrum) as usize - ptr as usize },
200usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(postmerge_centrum)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MERGEpinched) as usize - ptr as usize },
208usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MERGEpinched)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MERGEvertices) as usize - ptr as usize },
212usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MERGEvertices)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MINvisible) as usize - ptr as usize },
216usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MINvisible)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).NOnarrow) as usize - ptr as usize },
224usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(NOnarrow)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).NOnearinside) as usize - ptr as usize },
228usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(NOnearinside)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).NOpremerge) as usize - ptr as usize },
232usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(NOpremerge)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ONLYgood) as usize - ptr as usize },
236usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ONLYgood)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ONLYmax) as usize - ptr as usize },
240usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ONLYmax)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PICKfurthest) as usize - ptr as usize },
244usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PICKfurthest)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).POSTmerge) as usize - ptr as usize },
248usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(POSTmerge)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PREmerge) as usize - ptr as usize },
252usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PREmerge)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTcentrums) as usize - ptr as usize },
256usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTcentrums)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTcoplanar) as usize - ptr as usize },
260usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTcoplanar)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTdim) as usize - ptr as usize },
264usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTdim)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTdots) as usize - ptr as usize },
268usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTdots)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTgood) as usize - ptr as usize },
272usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTgood)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTinner) as usize - ptr as usize },
276usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTinner)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTneighbors) as usize - ptr as usize },
280usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTneighbors)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTnoplanes) as usize - ptr as usize },
284usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTnoplanes)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINToptions1st) as usize - ptr as usize },
288usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINToptions1st)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTouter) as usize - ptr as usize },
292usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTouter)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTprecision) as usize - ptr as usize },
296usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTprecision)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTout) as usize - ptr as usize },
300usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTout)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTridges) as usize - ptr as usize },
416usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTridges)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTspheres) as usize - ptr as usize },
420usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTspheres)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTstatistics) as usize - ptr as usize },
424usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTstatistics)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTsummary) as usize - ptr as usize },
428usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTsummary)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTtransparent) as usize - ptr as usize },
432usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTtransparent)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PROJECTdelaunay) as usize - ptr as usize },
436usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PROJECTdelaunay)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PROJECTinput) as usize - ptr as usize },
440usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PROJECTinput)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).RANDOMdist) as usize - ptr as usize },
444usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(RANDOMdist)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).RANDOMfactor) as usize - ptr as usize },
448usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(RANDOMfactor)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).RANDOMa) as usize - ptr as usize },
456usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(RANDOMa)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).RANDOMb) as usize - ptr as usize },
464usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(RANDOMb)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).RANDOMoutside) as usize - ptr as usize },
472usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(RANDOMoutside)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).REPORTfreq) as usize - ptr as usize },
476usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(REPORTfreq)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).REPORTfreq2) as usize - ptr as usize },
480usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(REPORTfreq2)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).RERUN) as usize - ptr as usize },
484usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(RERUN)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ROTATErandom) as usize - ptr as usize },
488usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ROTATErandom)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).SCALEinput) as usize - ptr as usize },
492usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(SCALEinput)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).SCALElast) as usize - ptr as usize },
496usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(SCALElast)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).SETroundoff) as usize - ptr as usize },
500usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(SETroundoff)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).SKIPcheckmax) as usize - ptr as usize },
504usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(SKIPcheckmax)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).SKIPconvex) as usize - ptr as usize },
508usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(SKIPconvex)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).SPLITthresholds) as usize - ptr as usize },
512usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(SPLITthresholds)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).STOPadd) as usize - ptr as usize },
516usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(STOPadd)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).STOPcone) as usize - ptr as usize },
520usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(STOPcone)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).STOPpoint) as usize - ptr as usize },
524usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(STOPpoint)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).TESTpoints) as usize - ptr as usize },
528usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(TESTpoints)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).TESTvneighbors) as usize - ptr as usize },
532usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(TESTvneighbors)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).TRACElevel) as usize - ptr as usize },
536usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(TRACElevel)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).TRACElastrun) as usize - ptr as usize },
540usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(TRACElastrun)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).TRACEpoint) as usize - ptr as usize },
544usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(TRACEpoint)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).TRACEdist) as usize - ptr as usize },
552usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(TRACEdist)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).TRACEmerge) as usize - ptr as usize },
560usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(TRACEmerge)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).TRIangulate) as usize - ptr as usize },
564usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(TRIangulate)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).TRInormals) as usize - ptr as usize },
568usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(TRInormals)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).UPPERdelaunay) as usize - ptr as usize },
572usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(UPPERdelaunay)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).USEstdout) as usize - ptr as usize },
576usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(USEstdout)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).VERIFYoutput) as usize - ptr as usize },
580usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(VERIFYoutput)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).VIRTUALmemory) as usize - ptr as usize },
584usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(VIRTUALmemory)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).VORONOI) as usize - ptr as usize },
588usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(VORONOI)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).AREAfactor) as usize - ptr as usize },
592usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(AREAfactor)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).DOcheckmax) as usize - ptr as usize },
600usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(DOcheckmax)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).feasible_string) as usize - ptr as usize },
608usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(feasible_string)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).feasible_point) as usize - ptr as usize },
616usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(feasible_point)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).GETarea) as usize - ptr as usize },
624usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(GETarea)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).KEEPnearinside) as usize - ptr as usize },
628usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(KEEPnearinside)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).hull_dim) as usize - ptr as usize },
632usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(hull_dim)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).input_dim) as usize - ptr as usize },
636usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(input_dim)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).num_points) as usize - ptr as usize },
640usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(num_points)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).first_point) as usize - ptr as usize },
648usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(first_point)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).POINTSmalloc) as usize - ptr as usize },
656usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(POINTSmalloc)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).input_points) as usize - ptr as usize },
664usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(input_points)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).input_malloc) as usize - ptr as usize },
672usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(input_malloc)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).qhull_command) as usize - ptr as usize },
676usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(qhull_command)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).qhull_commandsiz2) as usize - ptr as usize },
932usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(qhull_commandsiz2)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).rbox_command) as usize - ptr as usize },
936usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(rbox_command)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).qhull_options) as usize - ptr as usize },
1192usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(qhull_options)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).qhull_optionlen) as usize - ptr as usize },
1704usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(qhull_optionlen)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).qhull_optionsiz) as usize - ptr as usize },
1708usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(qhull_optionsiz)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).qhull_optionsiz2) as usize - ptr as usize },
1712usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(qhull_optionsiz2)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).run_id) as usize - ptr as usize },
1716usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(run_id)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).VERTEXneighbors) as usize - ptr as usize },
1720usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(VERTEXneighbors)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ZEROcentrum) as usize - ptr as usize },
1724usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ZEROcentrum)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).upper_threshold) as usize - ptr as usize },
1728usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(upper_threshold)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).lower_threshold) as usize - ptr as usize },
1736usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(lower_threshold)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).upper_bound) as usize - ptr as usize },
1744usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(upper_bound)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).lower_bound) as usize - ptr as usize },
1752usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(lower_bound)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ANGLEround) as usize - ptr as usize },
1760usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ANGLEround)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).centrum_radius) as usize - ptr as usize },
1768usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(centrum_radius)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).cos_max) as usize - ptr as usize },
1776usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(cos_max)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).DISTround) as usize - ptr as usize },
1784usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(DISTround)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MAXabs_coord) as usize - ptr as usize },
1792usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MAXabs_coord)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MAXlastcoord) as usize - ptr as usize },
1800usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MAXlastcoord)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MAXoutside) as usize - ptr as usize },
1808usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MAXoutside)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MAXsumcoord) as usize - ptr as usize },
1816usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MAXsumcoord)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MAXwidth) as usize - ptr as usize },
1824usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MAXwidth)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MINdenom_1) as usize - ptr as usize },
1832usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MINdenom_1)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MINdenom) as usize - ptr as usize },
1840usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MINdenom)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MINdenom_1_2) as usize - ptr as usize },
1848usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MINdenom_1_2)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MINdenom_2) as usize - ptr as usize },
1856usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MINdenom_2)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).MINlastcoord) as usize - ptr as usize },
1864usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(MINlastcoord)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).NEARzero) as usize - ptr as usize },
1872usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(NEARzero)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).NEARinside) as usize - ptr as usize },
1880usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(NEARinside)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ONEmerge) as usize - ptr as usize },
1888usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ONEmerge)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).outside_err) as usize - ptr as usize },
1896usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(outside_err)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).WIDEfacet) as usize - ptr as usize },
1904usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(WIDEfacet)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).NARROWhull) as usize - ptr as usize },
1912usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(NARROWhull)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).qhull) as usize - ptr as usize },
1916usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(qhull)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).errexit) as usize - ptr as usize },
1936usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(errexit)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).jmpXtra) as usize - ptr as usize },
2192usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(jmpXtra)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).restartexit) as usize - ptr as usize },
2240usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(restartexit)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).jmpXtra2) as usize - ptr as usize },
2496usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(jmpXtra2)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).fin) as usize - ptr as usize },
2536usize,
concat!("Offset of field: ", stringify!(qhT), "::", stringify!(fin))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).fout) as usize - ptr as usize },
2544usize,
concat!("Offset of field: ", stringify!(qhT), "::", stringify!(fout))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ferr) as usize - ptr as usize },
2552usize,
concat!("Offset of field: ", stringify!(qhT), "::", stringify!(ferr))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).interior_point) as usize - ptr as usize },
2560usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(interior_point)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).normal_size) as usize - ptr as usize },
2568usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(normal_size)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).center_size) as usize - ptr as usize },
2572usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(center_size)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).TEMPsize) as usize - ptr as usize },
2576usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(TEMPsize)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).facet_list) as usize - ptr as usize },
2584usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(facet_list)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).facet_tail) as usize - ptr as usize },
2592usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(facet_tail)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).facet_next) as usize - ptr as usize },
2600usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(facet_next)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).newfacet_list) as usize - ptr as usize },
2608usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(newfacet_list)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).visible_list) as usize - ptr as usize },
2616usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(visible_list)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).num_visible) as usize - ptr as usize },
2624usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(num_visible)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tracefacet_id) as usize - ptr as usize },
2628usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(tracefacet_id)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tracefacet) as usize - ptr as usize },
2632usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(tracefacet)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).traceridge_id) as usize - ptr as usize },
2640usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(traceridge_id)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).traceridge) as usize - ptr as usize },
2648usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(traceridge)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tracevertex_id) as usize - ptr as usize },
2656usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(tracevertex_id)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).tracevertex) as usize - ptr as usize },
2664usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(tracevertex)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).vertex_list) as usize - ptr as usize },
2672usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(vertex_list)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).vertex_tail) as usize - ptr as usize },
2680usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(vertex_tail)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).newvertex_list) as usize - ptr as usize },
2688usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(newvertex_list)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).num_facets) as usize - ptr as usize },
2696usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(num_facets)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).num_vertices) as usize - ptr as usize },
2700usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(num_vertices)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).num_outside) as usize - ptr as usize },
2704usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(num_outside)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).num_good) as usize - ptr as usize },
2708usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(num_good)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).facet_id) as usize - ptr as usize },
2712usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(facet_id)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ridge_id) as usize - ptr as usize },
2716usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ridge_id)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).vertex_id) as usize - ptr as usize },
2720usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(vertex_id)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).first_newfacet) as usize - ptr as usize },
2724usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(first_newfacet)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).hulltime) as usize - ptr as usize },
2728usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(hulltime)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ALLOWrestart) as usize - ptr as usize },
2732usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ALLOWrestart)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).build_cnt) as usize - ptr as usize },
2736usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(build_cnt)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).CENTERtype) as usize - ptr as usize },
2740usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(CENTERtype)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).furthest_id) as usize - ptr as usize },
2744usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(furthest_id)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).last_errcode) as usize - ptr as usize },
2748usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(last_errcode)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).GOODclosest) as usize - ptr as usize },
2752usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(GOODclosest)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).coplanar_apex) as usize - ptr as usize },
2760usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(coplanar_apex)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).hasAreaVolume) as usize - ptr as usize },
2768usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(hasAreaVolume)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).hasTriangulation) as usize - ptr as usize },
2772usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(hasTriangulation)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).isRenameVertex) as usize - ptr as usize },
2776usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(isRenameVertex)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).JOGGLEmax) as usize - ptr as usize },
2784usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(JOGGLEmax)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).maxoutdone) as usize - ptr as usize },
2792usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(maxoutdone)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).max_outside) as usize - ptr as usize },
2800usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(max_outside)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).max_vertex) as usize - ptr as usize },
2808usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(max_vertex)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).min_vertex) as usize - ptr as usize },
2816usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(min_vertex)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).NEWfacets) as usize - ptr as usize },
2824usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(NEWfacets)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).NEWtentative) as usize - ptr as usize },
2828usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(NEWtentative)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).findbestnew) as usize - ptr as usize },
2832usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(findbestnew)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).findbest_notsharp) as usize - ptr as usize },
2836usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(findbest_notsharp)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).NOerrexit) as usize - ptr as usize },
2840usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(NOerrexit)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTcradius) as usize - ptr as usize },
2848usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTcradius)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).PRINTradius) as usize - ptr as usize },
2856usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(PRINTradius)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).POSTmerging) as usize - ptr as usize },
2864usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(POSTmerging)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).printoutvar) as usize - ptr as usize },
2868usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(printoutvar)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).printoutnum) as usize - ptr as usize },
2872usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(printoutnum)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).repart_facetid) as usize - ptr as usize },
2876usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(repart_facetid)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).retry_addpoint) as usize - ptr as usize },
2880usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(retry_addpoint)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).QHULLfinished) as usize - ptr as usize },
2884usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(QHULLfinished)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).totarea) as usize - ptr as usize },
2888usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(totarea)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).totvol) as usize - ptr as usize },
2896usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(totvol)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).visit_id) as usize - ptr as usize },
2904usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(visit_id)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).vertex_visit) as usize - ptr as usize },
2908usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(vertex_visit)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).WAScoplanar) as usize - ptr as usize },
2912usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(WAScoplanar)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ZEROall_ok) as usize - ptr as usize },
2916usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ZEROall_ok)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).facet_mergeset) as usize - ptr as usize },
2920usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(facet_mergeset)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).degen_mergeset) as usize - ptr as usize },
2928usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(degen_mergeset)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).vertex_mergeset) as usize - ptr as usize },
2936usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(vertex_mergeset)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).hash_table) as usize - ptr as usize },
2944usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(hash_table)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).other_points) as usize - ptr as usize },
2952usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(other_points)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).del_vertices) as usize - ptr as usize },
2960usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(del_vertices)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).gm_matrix) as usize - ptr as usize },
2968usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(gm_matrix)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).gm_row) as usize - ptr as usize },
2976usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(gm_row)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).line) as usize - ptr as usize },
2984usize,
concat!("Offset of field: ", stringify!(qhT), "::", stringify!(line))
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).maxline) as usize - ptr as usize },
2992usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(maxline)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).half_space) as usize - ptr as usize },
3000usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(half_space)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).temp_malloc) as usize - ptr as usize },
3008usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(temp_malloc)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ERREXITcalled) as usize - ptr as usize },
3016usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ERREXITcalled)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).firstcentrum) as usize - ptr as usize },
3020usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(firstcentrum)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).old_randomdist) as usize - ptr as usize },
3024usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(old_randomdist)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).coplanarfacetset) as usize - ptr as usize },
3032usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(coplanarfacetset)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).last_low) as usize - ptr as usize },
3040usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(last_low)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).last_high) as usize - ptr as usize },
3048usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(last_high)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).last_newhigh) as usize - ptr as usize },
3056usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(last_newhigh)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).lastcpu) as usize - ptr as usize },
3064usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(lastcpu)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).lastfacets) as usize - ptr as usize },
3072usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(lastfacets)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).lastmerges) as usize - ptr as usize },
3076usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(lastmerges)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).lastplanes) as usize - ptr as usize },
3080usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(lastplanes)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).lastdist) as usize - ptr as usize },
3084usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(lastdist)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).lastreport) as usize - ptr as usize },
3088usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(lastreport)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).mergereport) as usize - ptr as usize },
3092usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(mergereport)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).old_tempstack) as usize - ptr as usize },
3096usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(old_tempstack)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).ridgeoutnum) as usize - ptr as usize },
3104usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(ridgeoutnum)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).last_random) as usize - ptr as usize },
3108usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(last_random)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).rbox_errexit) as usize - ptr as usize },
3120usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(rbox_errexit)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).jmpXtra3) as usize - ptr as usize },
3376usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(jmpXtra3)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).rbox_isinteger) as usize - ptr as usize },
3416usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(rbox_isinteger)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).rbox_out_offset) as usize - ptr as usize },
3424usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(rbox_out_offset)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).cpp_object) as usize - ptr as usize },
3432usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(cpp_object)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).cpp_other) as usize - ptr as usize },
3440usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(cpp_other)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).cpp_user) as usize - ptr as usize },
3448usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(cpp_user)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).qhmem) as usize - ptr as usize },
3456usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(qhmem)
)
);
assert_eq!(
unsafe { ::core::ptr::addr_of!((*ptr).qhstat) as usize - ptr as usize },
3608usize,
concat!(
"Offset of field: ",
stringify!(qhT),
"::",
stringify!(qhstat)
)
);
}
extern "C" {
#[doc = " -libqhull_r.c prototypes (duplicated from qhull_ra.h)"]
pub fn qh_qhull(qh: *mut qhT);
}
extern "C" {
pub fn qh_addpoint(
qh: *mut qhT,
furthest: *mut f64,
facet: *mut facetT,
checkdist: ::core::ffi::c_uint,
) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_errexit2(
qh: *mut qhT,
exitcode: ::core::ffi::c_int,
facet: *mut facetT,
otherfacet: *mut facetT,
);
}
extern "C" {
pub fn qh_printsummary(qh: *mut qhT, fp: *mut FILE);
}
extern "C" {
#[doc = " -user_r.c prototypes (alphabetical)"]
pub fn qh_errexit(
qh: *mut qhT,
exitcode: ::core::ffi::c_int,
facet: *mut facetT,
ridge: *mut ridgeT,
);
}
extern "C" {
pub fn qh_errprint(
qh: *mut qhT,
string: *const ::core::ffi::c_char,
atfacet: *mut facetT,
otherfacet: *mut facetT,
atridge: *mut ridgeT,
atvertex: *mut vertexT,
);
}
extern "C" {
pub fn qh_new_qhull(
qh: *mut qhT,
dim: ::core::ffi::c_int,
numpoints: ::core::ffi::c_int,
points: *mut f64,
ismalloc: ::core::ffi::c_uint,
qhull_cmd: *mut ::core::ffi::c_char,
outfile: *mut FILE,
errfile: *mut FILE,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_printfacetlist(
qh: *mut qhT,
facetlist: *mut facetT,
facets: *mut setT,
printall: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_printhelp_degenerate(qh: *mut qhT, fp: *mut FILE);
}
extern "C" {
pub fn qh_printhelp_internal(qh: *mut qhT, fp: *mut FILE);
}
extern "C" {
pub fn qh_printhelp_narrowhull(qh: *mut qhT, fp: *mut FILE, minangle: f64);
}
extern "C" {
pub fn qh_printhelp_singular(qh: *mut qhT, fp: *mut FILE);
}
extern "C" {
pub fn qh_printhelp_topology(qh: *mut qhT, fp: *mut FILE);
}
extern "C" {
pub fn qh_printhelp_wide(qh: *mut qhT, fp: *mut FILE);
}
extern "C" {
pub fn qh_user_memsizes(qh: *mut qhT);
}
extern "C" {
#[doc = " -usermem_r.c prototypes (alphabetical)"]
pub fn qh_exit(exitcode: ::core::ffi::c_int);
}
extern "C" {
pub fn qh_fprintf_stderr(msgcode: ::core::ffi::c_int, fmt: *const ::core::ffi::c_char, ...);
}
extern "C" {
pub fn qh_free(mem: *mut ::core::ffi::c_void);
}
extern "C" {
pub fn qh_malloc(size: usize) -> *mut ::core::ffi::c_void;
}
extern "C" {
#[doc = " -userprintf_r.c and userprintf_rbox_r.c prototypes"]
pub fn qh_fprintf(
qh: *mut qhT,
fp: *mut FILE,
msgcode: ::core::ffi::c_int,
fmt: *const ::core::ffi::c_char,
...
);
}
extern "C" {
pub fn qh_fprintf_rbox(
qh: *mut qhT,
fp: *mut FILE,
msgcode: ::core::ffi::c_int,
fmt: *const ::core::ffi::c_char,
...
);
}
extern "C" {
#[doc = " -geom_r.c/geom2_r.c/random_r.c prototypes (duplicated from geom_r.h, random_r.h)"]
pub fn qh_findbest(
qh: *mut qhT,
point: *mut f64,
startfacet: *mut facetT,
bestoutside: ::core::ffi::c_uint,
newfacets: ::core::ffi::c_uint,
noupper: ::core::ffi::c_uint,
dist: *mut f64,
isoutside: *mut ::core::ffi::c_uint,
numpart: *mut ::core::ffi::c_int,
) -> *mut facetT;
}
extern "C" {
pub fn qh_findbestnew(
qh: *mut qhT,
point: *mut f64,
startfacet: *mut facetT,
dist: *mut f64,
bestoutside: ::core::ffi::c_uint,
isoutside: *mut ::core::ffi::c_uint,
numpart: *mut ::core::ffi::c_int,
) -> *mut facetT;
}
extern "C" {
pub fn qh_gram_schmidt(
qh: *mut qhT,
dim: ::core::ffi::c_int,
rows: *mut *mut f64,
) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_outerinner(
qh: *mut qhT,
facet: *mut facetT,
outerplane: *mut f64,
innerplane: *mut f64,
);
}
extern "C" {
pub fn qh_projectinput(qh: *mut qhT);
}
extern "C" {
pub fn qh_randommatrix(
qh: *mut qhT,
buffer: *mut f64,
dim: ::core::ffi::c_int,
row: *mut *mut f64,
);
}
extern "C" {
pub fn qh_rotateinput(qh: *mut qhT, rows: *mut *mut f64);
}
extern "C" {
pub fn qh_scaleinput(qh: *mut qhT);
}
extern "C" {
pub fn qh_setdelaunay(
qh: *mut qhT,
dim: ::core::ffi::c_int,
count: ::core::ffi::c_int,
points: *mut f64,
);
}
extern "C" {
pub fn qh_sethalfspace_all(
qh: *mut qhT,
dim: ::core::ffi::c_int,
count: ::core::ffi::c_int,
halfspaces: *mut f64,
feasible: *mut f64,
) -> *mut f64;
}
extern "C" {
#[doc = " -global_r.c prototypes (alphabetical)"]
pub fn qh_clock(qh: *mut qhT) -> ::core::ffi::c_ulong;
}
extern "C" {
pub fn qh_checkflags(
qh: *mut qhT,
command: *mut ::core::ffi::c_char,
hiddenflags: *mut ::core::ffi::c_char,
);
}
extern "C" {
pub fn qh_clear_outputflags(qh: *mut qhT);
}
extern "C" {
pub fn qh_freebuffers(qh: *mut qhT);
}
extern "C" {
pub fn qh_freeqhull(qh: *mut qhT, allmem: ::core::ffi::c_uint);
}
extern "C" {
pub fn qh_init_A(
qh: *mut qhT,
infile: *mut FILE,
outfile: *mut FILE,
errfile: *mut FILE,
argc: ::core::ffi::c_int,
argv: *mut *mut ::core::ffi::c_char,
);
}
extern "C" {
pub fn qh_init_B(
qh: *mut qhT,
points: *mut f64,
numpoints: ::core::ffi::c_int,
dim: ::core::ffi::c_int,
ismalloc: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_init_qhull_command(
qh: *mut qhT,
argc: ::core::ffi::c_int,
argv: *mut *mut ::core::ffi::c_char,
);
}
extern "C" {
pub fn qh_initbuffers(
qh: *mut qhT,
points: *mut f64,
numpoints: ::core::ffi::c_int,
dim: ::core::ffi::c_int,
ismalloc: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_initflags(qh: *mut qhT, command: *mut ::core::ffi::c_char);
}
extern "C" {
pub fn qh_initqhull_buffers(qh: *mut qhT);
}
extern "C" {
pub fn qh_initqhull_globals(
qh: *mut qhT,
points: *mut f64,
numpoints: ::core::ffi::c_int,
dim: ::core::ffi::c_int,
ismalloc: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_initqhull_mem(qh: *mut qhT);
}
extern "C" {
pub fn qh_initqhull_outputflags(qh: *mut qhT);
}
extern "C" {
pub fn qh_initqhull_start(
qh: *mut qhT,
infile: *mut FILE,
outfile: *mut FILE,
errfile: *mut FILE,
);
}
extern "C" {
pub fn qh_initqhull_start2(
qh: *mut qhT,
infile: *mut FILE,
outfile: *mut FILE,
errfile: *mut FILE,
);
}
extern "C" {
pub fn qh_initthresholds(qh: *mut qhT, command: *mut ::core::ffi::c_char);
}
extern "C" {
pub fn qh_lib_check(
qhullLibraryType: ::core::ffi::c_int,
qhTsize: ::core::ffi::c_int,
vertexTsize: ::core::ffi::c_int,
ridgeTsize: ::core::ffi::c_int,
facetTsize: ::core::ffi::c_int,
setTsize: ::core::ffi::c_int,
qhmemTsize: ::core::ffi::c_int,
);
}
extern "C" {
pub fn qh_option(
qh: *mut qhT,
option: *const ::core::ffi::c_char,
i: *mut ::core::ffi::c_int,
r: *mut f64,
);
}
extern "C" {
pub fn qh_zero(qh: *mut qhT, errfile: *mut FILE);
}
extern "C" {
#[doc = " -io_r.c prototypes (duplicated from io_r.h)"]
pub fn qh_dfacet(qh: *mut qhT, id: ::core::ffi::c_uint);
}
extern "C" {
pub fn qh_dvertex(qh: *mut qhT, id: ::core::ffi::c_uint);
}
extern "C" {
pub fn qh_printneighborhood(
qh: *mut qhT,
fp: *mut FILE,
format: qh_PRINT,
facetA: *mut facetT,
facetB: *mut facetT,
printall: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_produce_output(qh: *mut qhT);
}
extern "C" {
pub fn qh_readpoints(
qh: *mut qhT,
numpoints: *mut ::core::ffi::c_int,
dimension: *mut ::core::ffi::c_int,
ismalloc: *mut ::core::ffi::c_uint,
) -> *mut f64;
}
extern "C" {
#[doc = " -poly_r.c/poly2_r.c prototypes (duplicated from poly_r.h)"]
pub fn qh_check_output(qh: *mut qhT);
}
extern "C" {
pub fn qh_check_points(qh: *mut qhT);
}
extern "C" {
pub fn qh_facetvertices(
qh: *mut qhT,
facetlist: *mut facetT,
facets: *mut setT,
allfacets: ::core::ffi::c_uint,
) -> *mut setT;
}
extern "C" {
pub fn qh_findbestfacet(
qh: *mut qhT,
point: *mut f64,
bestoutside: ::core::ffi::c_uint,
bestdist: *mut f64,
isoutside: *mut ::core::ffi::c_uint,
) -> *mut facetT;
}
extern "C" {
pub fn qh_nearvertex(
qh: *mut qhT,
facet: *mut facetT,
point: *mut f64,
bestdistp: *mut f64,
) -> *mut vertexT;
}
extern "C" {
pub fn qh_point(qh: *mut qhT, id: ::core::ffi::c_int) -> *mut f64;
}
extern "C" {
pub fn qh_pointfacet(qh: *mut qhT) -> *mut setT;
}
extern "C" {
pub fn qh_pointid(qh: *mut qhT, point: *mut f64) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_pointvertex(qh: *mut qhT) -> *mut setT;
}
extern "C" {
pub fn qh_setvoronoi_all(qh: *mut qhT);
}
extern "C" {
pub fn qh_triangulate(qh: *mut qhT);
}
extern "C" {
#[doc = " -rboxlib_r.c prototypes"]
pub fn qh_rboxpoints(
qh: *mut qhT,
rbox_command: *mut ::core::ffi::c_char,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_errexit_rbox(qh: *mut qhT, exitcode: ::core::ffi::c_int);
}
pub const qh_RIDGE_qh_RIDGEall: qh_RIDGE = 0;
pub const qh_RIDGE_qh_RIDGEinner: qh_RIDGE = 1;
pub const qh_RIDGE_qh_RIDGEouter: qh_RIDGE = 2;
pub type qh_RIDGE = ::core::ffi::c_int;
pub type printvridgeT = ::core::option::Option<
unsafe extern "C" fn(
qh: *mut qhT,
fp: *mut FILE,
vertex: *mut vertexT,
vertexA: *mut vertexT,
centers: *mut setT,
unbounded: ::core::ffi::c_uint,
),
>;
extern "C" {
pub fn qh_compare_facetarea(
p1: *const ::core::ffi::c_void,
p2: *const ::core::ffi::c_void,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_compare_facetvisit(
p1: *const ::core::ffi::c_void,
p2: *const ::core::ffi::c_void,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_compare_nummerge(
p1: *const ::core::ffi::c_void,
p2: *const ::core::ffi::c_void,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_copyfilename(
qh: *mut qhT,
filename: *mut ::core::ffi::c_char,
size: ::core::ffi::c_int,
source: *const ::core::ffi::c_char,
length: ::core::ffi::c_int,
);
}
extern "C" {
pub fn qh_countfacets(
qh: *mut qhT,
facetlist: *mut facetT,
facets: *mut setT,
printall: ::core::ffi::c_uint,
numfacetsp: *mut ::core::ffi::c_int,
numsimplicialp: *mut ::core::ffi::c_int,
totneighborsp: *mut ::core::ffi::c_int,
numridgesp: *mut ::core::ffi::c_int,
numcoplanarsp: *mut ::core::ffi::c_int,
numnumtricoplanarsp: *mut ::core::ffi::c_int,
);
}
extern "C" {
pub fn qh_detvnorm(
qh: *mut qhT,
vertex: *mut vertexT,
vertexA: *mut vertexT,
centers: *mut setT,
offsetp: *mut f64,
) -> *mut f64;
}
extern "C" {
pub fn qh_detvridge(qh: *mut qhT, vertex: *mut vertexT) -> *mut setT;
}
extern "C" {
pub fn qh_detvridge3(qh: *mut qhT, atvertex: *mut vertexT, vertex: *mut vertexT) -> *mut setT;
}
extern "C" {
pub fn qh_eachvoronoi(
qh: *mut qhT,
fp: *mut FILE,
printvridge: printvridgeT,
atvertex: *mut vertexT,
visitall: ::core::ffi::c_uint,
innerouter: qh_RIDGE,
inorder: ::core::ffi::c_uint,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_eachvoronoi_all(
qh: *mut qhT,
fp: *mut FILE,
printvridge: printvridgeT,
isUpper: ::core::ffi::c_uint,
innerouter: qh_RIDGE,
inorder: ::core::ffi::c_uint,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_facet2point(
qh: *mut qhT,
facet: *mut facetT,
point0: *mut *mut f64,
point1: *mut *mut f64,
mindist: *mut f64,
);
}
extern "C" {
pub fn qh_geomplanes(
qh: *mut qhT,
facet: *mut facetT,
outerplane: *mut f64,
innerplane: *mut f64,
);
}
extern "C" {
pub fn qh_markkeep(qh: *mut qhT, facetlist: *mut facetT);
}
extern "C" {
pub fn qh_markvoronoi(
qh: *mut qhT,
facetlist: *mut facetT,
facets: *mut setT,
printall: ::core::ffi::c_uint,
isLowerp: *mut ::core::ffi::c_uint,
numcentersp: *mut ::core::ffi::c_int,
) -> *mut setT;
}
extern "C" {
pub fn qh_order_vertexneighbors(qh: *mut qhT, vertex: *mut vertexT);
}
extern "C" {
pub fn qh_prepare_output(qh: *mut qhT);
}
extern "C" {
pub fn qh_printafacet(
qh: *mut qhT,
fp: *mut FILE,
format: qh_PRINT,
facet: *mut facetT,
printall: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_printbegin(
qh: *mut qhT,
fp: *mut FILE,
format: qh_PRINT,
facetlist: *mut facetT,
facets: *mut setT,
printall: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_printcenter(
qh: *mut qhT,
fp: *mut FILE,
format: qh_PRINT,
string: *const ::core::ffi::c_char,
facet: *mut facetT,
);
}
extern "C" {
pub fn qh_printcentrum(qh: *mut qhT, fp: *mut FILE, facet: *mut facetT, radius: f64);
}
extern "C" {
pub fn qh_printend(
qh: *mut qhT,
fp: *mut FILE,
format: qh_PRINT,
facetlist: *mut facetT,
facets: *mut setT,
printall: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_printend4geom(
qh: *mut qhT,
fp: *mut FILE,
facet: *mut facetT,
num: *mut ::core::ffi::c_int,
printall: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_printextremes(
qh: *mut qhT,
fp: *mut FILE,
facetlist: *mut facetT,
facets: *mut setT,
printall: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_printextremes_2d(
qh: *mut qhT,
fp: *mut FILE,
facetlist: *mut facetT,
facets: *mut setT,
printall: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_printextremes_d(
qh: *mut qhT,
fp: *mut FILE,
facetlist: *mut facetT,
facets: *mut setT,
printall: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_printfacet(qh: *mut qhT, fp: *mut FILE, facet: *mut facetT);
}
extern "C" {
pub fn qh_printfacet2math(
qh: *mut qhT,
fp: *mut FILE,
facet: *mut facetT,
format: qh_PRINT,
notfirst: ::core::ffi::c_int,
);
}
extern "C" {
pub fn qh_printfacet2geom(qh: *mut qhT, fp: *mut FILE, facet: *mut facetT, color: *mut f64);
}
extern "C" {
pub fn qh_printfacet2geom_points(
qh: *mut qhT,
fp: *mut FILE,
point1: *mut f64,
point2: *mut f64,
facet: *mut facetT,
offset: f64,
color: *mut f64,
);
}
extern "C" {
pub fn qh_printfacet3math(
qh: *mut qhT,
fp: *mut FILE,
facet: *mut facetT,
format: qh_PRINT,
notfirst: ::core::ffi::c_int,
);
}
extern "C" {
pub fn qh_printfacet3geom_nonsimplicial(
qh: *mut qhT,
fp: *mut FILE,
facet: *mut facetT,
color: *mut f64,
);
}
extern "C" {
pub fn qh_printfacet3geom_points(
qh: *mut qhT,
fp: *mut FILE,
points: *mut setT,
facet: *mut facetT,
offset: f64,
color: *mut f64,
);
}
extern "C" {
pub fn qh_printfacet3geom_simplicial(
qh: *mut qhT,
fp: *mut FILE,
facet: *mut facetT,
color: *mut f64,
);
}
extern "C" {
pub fn qh_printfacet3vertex(qh: *mut qhT, fp: *mut FILE, facet: *mut facetT, format: qh_PRINT);
}
extern "C" {
pub fn qh_printfacet4geom_nonsimplicial(
qh: *mut qhT,
fp: *mut FILE,
facet: *mut facetT,
color: *mut f64,
);
}
extern "C" {
pub fn qh_printfacet4geom_simplicial(
qh: *mut qhT,
fp: *mut FILE,
facet: *mut facetT,
color: *mut f64,
);
}
extern "C" {
pub fn qh_printfacetNvertex_nonsimplicial(
qh: *mut qhT,
fp: *mut FILE,
facet: *mut facetT,
id: ::core::ffi::c_int,
format: qh_PRINT,
);
}
extern "C" {
pub fn qh_printfacetNvertex_simplicial(
qh: *mut qhT,
fp: *mut FILE,
facet: *mut facetT,
format: qh_PRINT,
);
}
extern "C" {
pub fn qh_printfacetheader(qh: *mut qhT, fp: *mut FILE, facet: *mut facetT);
}
extern "C" {
pub fn qh_printfacetridges(qh: *mut qhT, fp: *mut FILE, facet: *mut facetT);
}
extern "C" {
pub fn qh_printfacets(
qh: *mut qhT,
fp: *mut FILE,
format: qh_PRINT,
facetlist: *mut facetT,
facets: *mut setT,
printall: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_printhyperplaneintersection(
qh: *mut qhT,
fp: *mut FILE,
facet1: *mut facetT,
facet2: *mut facetT,
vertices: *mut setT,
color: *mut f64,
);
}
extern "C" {
pub fn qh_printline3geom(
qh: *mut qhT,
fp: *mut FILE,
pointA: *mut f64,
pointB: *mut f64,
color: *mut f64,
);
}
extern "C" {
pub fn qh_printpoint(
qh: *mut qhT,
fp: *mut FILE,
string: *const ::core::ffi::c_char,
point: *mut f64,
);
}
extern "C" {
pub fn qh_printpointid(
qh: *mut qhT,
fp: *mut FILE,
string: *const ::core::ffi::c_char,
dim: ::core::ffi::c_int,
point: *mut f64,
id: ::core::ffi::c_int,
);
}
extern "C" {
pub fn qh_printpoint3(qh: *mut qhT, fp: *mut FILE, point: *mut f64);
}
extern "C" {
pub fn qh_printpoints_out(
qh: *mut qhT,
fp: *mut FILE,
facetlist: *mut facetT,
facets: *mut setT,
printall: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_printpointvect(
qh: *mut qhT,
fp: *mut FILE,
point: *mut f64,
normal: *mut f64,
center: *mut f64,
radius: f64,
color: *mut f64,
);
}
extern "C" {
pub fn qh_printpointvect2(
qh: *mut qhT,
fp: *mut FILE,
point: *mut f64,
normal: *mut f64,
center: *mut f64,
radius: f64,
);
}
extern "C" {
pub fn qh_printridge(qh: *mut qhT, fp: *mut FILE, ridge: *mut ridgeT);
}
extern "C" {
pub fn qh_printspheres(qh: *mut qhT, fp: *mut FILE, vertices: *mut setT, radius: f64);
}
extern "C" {
pub fn qh_printvdiagram(
qh: *mut qhT,
fp: *mut FILE,
format: qh_PRINT,
facetlist: *mut facetT,
facets: *mut setT,
printall: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_printvdiagram2(
qh: *mut qhT,
fp: *mut FILE,
printvridge: printvridgeT,
vertices: *mut setT,
innerouter: qh_RIDGE,
inorder: ::core::ffi::c_uint,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_printvertex(qh: *mut qhT, fp: *mut FILE, vertex: *mut vertexT);
}
extern "C" {
pub fn qh_printvertexlist(
qh: *mut qhT,
fp: *mut FILE,
string: *const ::core::ffi::c_char,
facetlist: *mut facetT,
facets: *mut setT,
printall: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_printvertices(
qh: *mut qhT,
fp: *mut FILE,
string: *const ::core::ffi::c_char,
vertices: *mut setT,
);
}
extern "C" {
pub fn qh_printvneighbors(
qh: *mut qhT,
fp: *mut FILE,
facetlist: *mut facetT,
facets: *mut setT,
printall: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_printvoronoi(
qh: *mut qhT,
fp: *mut FILE,
format: qh_PRINT,
facetlist: *mut facetT,
facets: *mut setT,
printall: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_printvnorm(
qh: *mut qhT,
fp: *mut FILE,
vertex: *mut vertexT,
vertexA: *mut vertexT,
centers: *mut setT,
unbounded: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_printvridge(
qh: *mut qhT,
fp: *mut FILE,
vertex: *mut vertexT,
vertexA: *mut vertexT,
centers: *mut setT,
unbounded: ::core::ffi::c_uint,
);
}
extern "C" {
pub fn qh_produce_output2(qh: *mut qhT);
}
extern "C" {
pub fn qh_projectdim3(qh: *mut qhT, source: *mut f64, destination: *mut f64);
}
extern "C" {
pub fn qh_readfeasible(
qh: *mut qhT,
dim: ::core::ffi::c_int,
curline: *const ::core::ffi::c_char,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_setfeasible(qh: *mut qhT, dim: ::core::ffi::c_int);
}
extern "C" {
pub fn qh_skipfacet(qh: *mut qhT, facet: *mut facetT) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_skipfilename(
qh: *mut qhT,
filename: *mut ::core::ffi::c_char,
) -> *mut ::core::ffi::c_char;
}
extern "C" {
pub fn qh_get_facet_list(qh: *const qhT) -> *mut facetT;
}
extern "C" {
pub fn qh_get_first_point(qh: *const qhT) -> *mut f64;
}
extern "C" {
pub fn qh_get_hull_dim(qh: *const qhT) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_get_num_facets(qh: *const qhT) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_get_num_points(qh: *const qhT) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_get_num_vertices(qh: *const qhT) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_get_vertex_list(qh: *const qhT) -> *mut vertexT;
}
extern "C" {
pub fn qh_get_totarea(qh: *const qhT) -> f64;
}
extern "C" {
pub fn qh_get_totvol(qh: *const qhT) -> f64;
}
extern "C" {
pub fn qh_get_hasAreaVolume(qh: *const qhT) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_get_hasTriangulation(qh: *const qhT) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_get_num_good(qh: *const qhT) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_get_del_vertices(qh: *const qhT) -> *mut setT;
}
extern "C" {
pub fn qh_get_input_dim(qh: *const qhT) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_get_DELAUNAY(qh: *const qhT) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_get_SCALElast(qh: *const qhT) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_get_KEEPcoplanar(qh: *const qhT) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_get_MERGEexact(qh: *const qhT) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_get_NOerrexit(qh: *const qhT) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_get_PROJECTdelaunay(qh: *const qhT) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_get_ATinfinity(qh: *const qhT) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_get_UPPERdelaunay(qh: *const qhT) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_get_normal_size(qh: *const qhT) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_get_num_visible(qh: *const qhT) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_get_center_size(qh: *const qhT) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qh_get_qhull_command(qh: *const qhT) -> *const ::core::ffi::c_char;
}
extern "C" {
pub fn qh_get_facet_tail(qh: *const qhT) -> *mut facetT;
}
extern "C" {
pub fn qh_get_vertex_tail(qh: *const qhT) -> *mut vertexT;
}
extern "C" {
pub fn qh_get_facet_id(qh: *const qhT) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_get_visit_id(qh: *const qhT) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_get_vertex_visit(qh: *const qhT) -> ::core::ffi::c_uint;
}
extern "C" {
pub fn qh_get_input_points(qh: *const qhT) -> *mut f64;
}
extern "C" {
pub fn qh_get_feasible_point(qh: *const qhT) -> *mut f64;
}
extern "C" {
pub fn qh_get_last_low(qh: *const qhT) -> f64;
}
extern "C" {
pub fn qh_get_last_high(qh: *const qhT) -> f64;
}
extern "C" {
pub fn qh_get_last_newhigh(qh: *const qhT) -> f64;
}
extern "C" {
pub fn qh_get_max_outside(qh: *const qhT) -> f64;
}
extern "C" {
pub fn qh_get_MINoutside(qh: *const qhT) -> f64;
}
extern "C" {
pub fn qh_get_DISTround(qh: *const qhT) -> f64;
}
extern "C" {
pub fn qh_get_other_points(qh: *const qhT) -> *mut setT;
}
extern "C" {
pub fn qh_set_hasAreaVolume(qh: *mut qhT, _val_: ::core::ffi::c_uint);
}
extern "C" {
pub fn qh_set_hasTriangulation(qh: *mut qhT, _val_: ::core::ffi::c_uint);
}
extern "C" {
pub fn qhull_sys__try_on_qh(
qh: *mut qhT,
fn_: ::core::option::Option<unsafe extern "C" fn(data: *mut ::core::ffi::c_void)>,
data: *mut ::core::ffi::c_void,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qhull_sys__stdin() -> *mut FILE;
}
extern "C" {
pub fn qhull_sys__stdout() -> *mut FILE;
}
extern "C" {
pub fn qhull_sys__stderr() -> *mut FILE;
}
extern "C" {
pub fn qhull_sys__qconvex_main(
argc: ::core::ffi::c_int,
argv: *mut *mut ::core::ffi::c_char,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qhull_sys__qdelaunay_main(
argc: ::core::ffi::c_int,
argv: *mut *mut ::core::ffi::c_char,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qhull_sys__qhalf_main(
argc: ::core::ffi::c_int,
argv: *mut *mut ::core::ffi::c_char,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qhull_sys__qhull_main(
argc: ::core::ffi::c_int,
argv: *mut *mut ::core::ffi::c_char,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qhull_sys__qvoronoi_main(
argc: ::core::ffi::c_int,
argv: *mut *mut ::core::ffi::c_char,
) -> ::core::ffi::c_int;
}
extern "C" {
pub fn qhull_sys__rbox_main(
argc: ::core::ffi::c_int,
argv: *mut *mut ::core::ffi::c_char,
) -> ::core::ffi::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __crt_locale_data {
pub _address: u8,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __crt_multibyte_data {
pub _address: u8,
}
pub type __builtin_va_list = *mut ::core::ffi::c_char;