pub const _STDINT_H: u32 = 1;
pub const _FEATURES_H: u32 = 1;
pub const _DEFAULT_SOURCE: u32 = 1;
pub const __GLIBC_USE_ISOC2X: u32 = 0;
pub const __USE_ISOC11: u32 = 1;
pub const __USE_ISOC99: u32 = 1;
pub const __USE_ISOC95: u32 = 1;
pub const __USE_POSIX_IMPLICITLY: u32 = 1;
pub const _POSIX_SOURCE: u32 = 1;
pub const _POSIX_C_SOURCE: u32 = 200809;
pub const __USE_POSIX: u32 = 1;
pub const __USE_POSIX2: u32 = 1;
pub const __USE_POSIX199309: u32 = 1;
pub const __USE_POSIX199506: u32 = 1;
pub const __USE_XOPEN2K: u32 = 1;
pub const __USE_XOPEN2K8: u32 = 1;
pub const _ATFILE_SOURCE: u32 = 1;
pub const __USE_MISC: u32 = 1;
pub const __USE_ATFILE: u32 = 1;
pub const __USE_FORTIFY_LEVEL: u32 = 0;
pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0;
pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0;
pub const _STDC_PREDEF_H: u32 = 1;
pub const __STDC_IEC_559__: u32 = 1;
pub const __STDC_IEC_559_COMPLEX__: u32 = 1;
pub const __STDC_ISO_10646__: u32 = 201706;
pub const __GNU_LIBRARY__: u32 = 6;
pub const __GLIBC__: u32 = 2;
pub const __GLIBC_MINOR__: u32 = 31;
pub const _SYS_CDEFS_H: u32 = 1;
pub const __glibc_c99_flexarr_available: u32 = 1;
pub const __WORDSIZE: u32 = 64;
pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1;
pub const __SYSCALL_WORDSIZE: u32 = 64;
pub const __LONG_DOUBLE_USES_FLOAT128: u32 = 0;
pub const __HAVE_GENERIC_SELECTION: u32 = 1;
pub const __GLIBC_USE_LIB_EXT2: u32 = 0;
pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0;
pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0;
pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0;
pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0;
pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0;
pub const _BITS_TYPES_H: u32 = 1;
pub const __TIMESIZE: u32 = 64;
pub const _BITS_TYPESIZES_H: u32 = 1;
pub const __OFF_T_MATCHES_OFF64_T: u32 = 1;
pub const __INO_T_MATCHES_INO64_T: u32 = 1;
pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1;
pub const __STATFS_MATCHES_STATFS64: u32 = 1;
pub const __FD_SETSIZE: u32 = 1024;
pub const _BITS_TIME64_H: u32 = 1;
pub const _BITS_WCHAR_H: u32 = 1;
pub const _BITS_STDINT_INTN_H: u32 = 1;
pub const _BITS_STDINT_UINTN_H: u32 = 1;
pub const INT8_MIN: i32 = -128;
pub const INT16_MIN: i32 = -32768;
pub const INT32_MIN: i32 = -2147483648;
pub const INT8_MAX: u32 = 127;
pub const INT16_MAX: u32 = 32767;
pub const INT32_MAX: u32 = 2147483647;
pub const UINT8_MAX: u32 = 255;
pub const UINT16_MAX: u32 = 65535;
pub const UINT32_MAX: u32 = 4294967295;
pub const INT_LEAST8_MIN: i32 = -128;
pub const INT_LEAST16_MIN: i32 = -32768;
pub const INT_LEAST32_MIN: i32 = -2147483648;
pub const INT_LEAST8_MAX: u32 = 127;
pub const INT_LEAST16_MAX: u32 = 32767;
pub const INT_LEAST32_MAX: u32 = 2147483647;
pub const UINT_LEAST8_MAX: u32 = 255;
pub const UINT_LEAST16_MAX: u32 = 65535;
pub const UINT_LEAST32_MAX: u32 = 4294967295;
pub const INT_FAST8_MIN: i32 = -128;
pub const INT_FAST16_MIN: i64 = -9223372036854775808;
pub const INT_FAST32_MIN: i64 = -9223372036854775808;
pub const INT_FAST8_MAX: u32 = 127;
pub const INT_FAST16_MAX: u64 = 9223372036854775807;
pub const INT_FAST32_MAX: u64 = 9223372036854775807;
pub const UINT_FAST8_MAX: u32 = 255;
pub const UINT_FAST16_MAX: i32 = -1;
pub const UINT_FAST32_MAX: i32 = -1;
pub const INTPTR_MIN: i64 = -9223372036854775808;
pub const INTPTR_MAX: u64 = 9223372036854775807;
pub const UINTPTR_MAX: i32 = -1;
pub const PTRDIFF_MIN: i64 = -9223372036854775808;
pub const PTRDIFF_MAX: u64 = 9223372036854775807;
pub const SIG_ATOMIC_MIN: i32 = -2147483648;
pub const SIG_ATOMIC_MAX: u32 = 2147483647;
pub const SIZE_MAX: i32 = -1;
pub const WINT_MIN: u32 = 0;
pub const WINT_MAX: u32 = 4294967295;
pub const _STDIO_H: u32 = 1;
pub const __GNUC_VA_LIST: u32 = 1;
pub const _____fpos_t_defined: u32 = 1;
pub const ____mbstate_t_defined: u32 = 1;
pub const _____fpos64_t_defined: u32 = 1;
pub const ____FILE_defined: u32 = 1;
pub const __FILE_defined: u32 = 1;
pub const __struct_FILE_defined: u32 = 1;
pub const _IO_EOF_SEEN: u32 = 16;
pub const _IO_ERR_SEEN: u32 = 32;
pub const _IO_USER_LOCK: u32 = 32768;
pub const _IOFBF: u32 = 0;
pub const _IOLBF: u32 = 1;
pub const _IONBF: u32 = 2;
pub const BUFSIZ: u32 = 8192;
pub const EOF: i32 = -1;
pub const SEEK_SET: u32 = 0;
pub const SEEK_CUR: u32 = 1;
pub const SEEK_END: u32 = 2;
pub const P_tmpdir: &'static [u8; 5usize] = b"/tmp\0";
pub const _BITS_STDIO_LIM_H: u32 = 1;
pub const L_tmpnam: u32 = 20;
pub const TMP_MAX: u32 = 238328;
pub const FILENAME_MAX: u32 = 4096;
pub const L_ctermid: u32 = 9;
pub const FOPEN_MAX: u32 = 16;
pub type __u_char = ::std::os::raw::c_uchar;
pub type __u_short = ::std::os::raw::c_ushort;
pub type __u_int = ::std::os::raw::c_uint;
pub type __u_long = ::std::os::raw::c_ulong;
pub type __int8_t = ::std::os::raw::c_schar;
pub type __uint8_t = ::std::os::raw::c_uchar;
pub type __int16_t = ::std::os::raw::c_short;
pub type __uint16_t = ::std::os::raw::c_ushort;
pub type __int32_t = ::std::os::raw::c_int;
pub type __uint32_t = ::std::os::raw::c_uint;
pub type __int64_t = ::std::os::raw::c_long;
pub type __uint64_t = ::std::os::raw::c_ulong;
pub type __int_least8_t = __int8_t;
pub type __uint_least8_t = __uint8_t;
pub type __int_least16_t = __int16_t;
pub type __uint_least16_t = __uint16_t;
pub type __int_least32_t = __int32_t;
pub type __uint_least32_t = __uint32_t;
pub type __int_least64_t = __int64_t;
pub type __uint_least64_t = __uint64_t;
pub type __quad_t = ::std::os::raw::c_long;
pub type __u_quad_t = ::std::os::raw::c_ulong;
pub type __intmax_t = ::std::os::raw::c_long;
pub type __uintmax_t = ::std::os::raw::c_ulong;
pub type __dev_t = ::std::os::raw::c_ulong;
pub type __uid_t = ::std::os::raw::c_uint;
pub type __gid_t = ::std::os::raw::c_uint;
pub type __ino_t = ::std::os::raw::c_ulong;
pub type __ino64_t = ::std::os::raw::c_ulong;
pub type __mode_t = ::std::os::raw::c_uint;
pub type __nlink_t = ::std::os::raw::c_ulong;
pub type __off_t = ::std::os::raw::c_long;
pub type __off64_t = ::std::os::raw::c_long;
pub type __pid_t = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __fsid_t {
pub __val: [::std::os::raw::c_int; 2usize],
}
#[test]
fn bindgen_test_layout___fsid_t() {
assert_eq!(
::std::mem::size_of::<__fsid_t>(),
8usize,
concat!("Size of: ", stringify!(__fsid_t))
);
assert_eq!(
::std::mem::align_of::<__fsid_t>(),
4usize,
concat!("Alignment of ", stringify!(__fsid_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__fsid_t>())).__val as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__fsid_t),
"::",
stringify!(__val)
)
);
}
pub type __clock_t = ::std::os::raw::c_long;
pub type __rlim_t = ::std::os::raw::c_ulong;
pub type __rlim64_t = ::std::os::raw::c_ulong;
pub type __id_t = ::std::os::raw::c_uint;
pub type __time_t = ::std::os::raw::c_long;
pub type __useconds_t = ::std::os::raw::c_uint;
pub type __suseconds_t = ::std::os::raw::c_long;
pub type __daddr_t = ::std::os::raw::c_int;
pub type __key_t = ::std::os::raw::c_int;
pub type __clockid_t = ::std::os::raw::c_int;
pub type __timer_t = *mut ::std::os::raw::c_void;
pub type __blksize_t = ::std::os::raw::c_long;
pub type __blkcnt_t = ::std::os::raw::c_long;
pub type __blkcnt64_t = ::std::os::raw::c_long;
pub type __fsblkcnt_t = ::std::os::raw::c_ulong;
pub type __fsblkcnt64_t = ::std::os::raw::c_ulong;
pub type __fsfilcnt_t = ::std::os::raw::c_ulong;
pub type __fsfilcnt64_t = ::std::os::raw::c_ulong;
pub type __fsword_t = ::std::os::raw::c_long;
pub type __ssize_t = ::std::os::raw::c_long;
pub type __syscall_slong_t = ::std::os::raw::c_long;
pub type __syscall_ulong_t = ::std::os::raw::c_ulong;
pub type __loff_t = __off64_t;
pub type __caddr_t = *mut ::std::os::raw::c_char;
pub type __intptr_t = ::std::os::raw::c_long;
pub type __socklen_t = ::std::os::raw::c_uint;
pub type __sig_atomic_t = ::std::os::raw::c_int;
pub type int_least8_t = __int_least8_t;
pub type int_least16_t = __int_least16_t;
pub type int_least32_t = __int_least32_t;
pub type int_least64_t = __int_least64_t;
pub type uint_least8_t = __uint_least8_t;
pub type uint_least16_t = __uint_least16_t;
pub type uint_least32_t = __uint_least32_t;
pub type uint_least64_t = __uint_least64_t;
pub type int_fast8_t = ::std::os::raw::c_schar;
pub type int_fast16_t = ::std::os::raw::c_long;
pub type int_fast32_t = ::std::os::raw::c_long;
pub type int_fast64_t = ::std::os::raw::c_long;
pub type uint_fast8_t = ::std::os::raw::c_uchar;
pub type uint_fast16_t = ::std::os::raw::c_ulong;
pub type uint_fast32_t = ::std::os::raw::c_ulong;
pub type uint_fast64_t = ::std::os::raw::c_ulong;
pub type intmax_t = __intmax_t;
pub type uintmax_t = __uintmax_t;
pub type size_t = ::std::os::raw::c_ulong;
pub type va_list = __builtin_va_list;
pub type __gnuc_va_list = __builtin_va_list;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct __mbstate_t {
pub __count: ::std::os::raw::c_int,
pub __value: __mbstate_t__bindgen_ty_1,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union __mbstate_t__bindgen_ty_1 {
pub __wch: ::std::os::raw::c_uint,
pub __wchb: [::std::os::raw::c_char; 4usize],
_bindgen_union_align: u32,
}
#[test]
fn bindgen_test_layout___mbstate_t__bindgen_ty_1() {
assert_eq!(
::std::mem::size_of::<__mbstate_t__bindgen_ty_1>(),
4usize,
concat!("Size of: ", stringify!(__mbstate_t__bindgen_ty_1))
);
assert_eq!(
::std::mem::align_of::<__mbstate_t__bindgen_ty_1>(),
4usize,
concat!("Alignment of ", stringify!(__mbstate_t__bindgen_ty_1))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__mbstate_t__bindgen_ty_1>())).__wch as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__mbstate_t__bindgen_ty_1),
"::",
stringify!(__wch)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<__mbstate_t__bindgen_ty_1>())).__wchb as *const _ as usize
},
0usize,
concat!(
"Offset of field: ",
stringify!(__mbstate_t__bindgen_ty_1),
"::",
stringify!(__wchb)
)
);
}
#[test]
fn bindgen_test_layout___mbstate_t() {
assert_eq!(
::std::mem::size_of::<__mbstate_t>(),
8usize,
concat!("Size of: ", stringify!(__mbstate_t))
);
assert_eq!(
::std::mem::align_of::<__mbstate_t>(),
4usize,
concat!("Alignment of ", stringify!(__mbstate_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__mbstate_t>())).__count as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__mbstate_t),
"::",
stringify!(__count)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__mbstate_t>())).__value as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(__mbstate_t),
"::",
stringify!(__value)
)
);
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _G_fpos_t {
pub __pos: __off_t,
pub __state: __mbstate_t,
}
#[test]
fn bindgen_test_layout__G_fpos_t() {
assert_eq!(
::std::mem::size_of::<_G_fpos_t>(),
16usize,
concat!("Size of: ", stringify!(_G_fpos_t))
);
assert_eq!(
::std::mem::align_of::<_G_fpos_t>(),
8usize,
concat!("Alignment of ", stringify!(_G_fpos_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_G_fpos_t>())).__pos as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_G_fpos_t),
"::",
stringify!(__pos)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_G_fpos_t>())).__state as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_G_fpos_t),
"::",
stringify!(__state)
)
);
}
pub type __fpos_t = _G_fpos_t;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _G_fpos64_t {
pub __pos: __off64_t,
pub __state: __mbstate_t,
}
#[test]
fn bindgen_test_layout__G_fpos64_t() {
assert_eq!(
::std::mem::size_of::<_G_fpos64_t>(),
16usize,
concat!("Size of: ", stringify!(_G_fpos64_t))
);
assert_eq!(
::std::mem::align_of::<_G_fpos64_t>(),
8usize,
concat!("Alignment of ", stringify!(_G_fpos64_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_G_fpos64_t>())).__pos as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_G_fpos64_t),
"::",
stringify!(__pos)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_G_fpos64_t>())).__state as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_G_fpos64_t),
"::",
stringify!(__state)
)
);
}
pub type __fpos64_t = _G_fpos64_t;
pub type __FILE = _IO_FILE;
pub type FILE = _IO_FILE;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _IO_marker {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _IO_codecvt {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _IO_wide_data {
_unused: [u8; 0],
}
pub type _IO_lock_t = ::std::os::raw::c_void;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _IO_FILE {
pub _flags: ::std::os::raw::c_int,
pub _IO_read_ptr: *mut ::std::os::raw::c_char,
pub _IO_read_end: *mut ::std::os::raw::c_char,
pub _IO_read_base: *mut ::std::os::raw::c_char,
pub _IO_write_base: *mut ::std::os::raw::c_char,
pub _IO_write_ptr: *mut ::std::os::raw::c_char,
pub _IO_write_end: *mut ::std::os::raw::c_char,
pub _IO_buf_base: *mut ::std::os::raw::c_char,
pub _IO_buf_end: *mut ::std::os::raw::c_char,
pub _IO_save_base: *mut ::std::os::raw::c_char,
pub _IO_backup_base: *mut ::std::os::raw::c_char,
pub _IO_save_end: *mut ::std::os::raw::c_char,
pub _markers: *mut _IO_marker,
pub _chain: *mut _IO_FILE,
pub _fileno: ::std::os::raw::c_int,
pub _flags2: ::std::os::raw::c_int,
pub _old_offset: __off_t,
pub _cur_column: ::std::os::raw::c_ushort,
pub _vtable_offset: ::std::os::raw::c_schar,
pub _shortbuf: [::std::os::raw::c_char; 1usize],
pub _lock: *mut _IO_lock_t,
pub _offset: __off64_t,
pub _codecvt: *mut _IO_codecvt,
pub _wide_data: *mut _IO_wide_data,
pub _freeres_list: *mut _IO_FILE,
pub _freeres_buf: *mut ::std::os::raw::c_void,
pub __pad5: size_t,
pub _mode: ::std::os::raw::c_int,
pub _unused2: [::std::os::raw::c_char; 20usize],
}
#[test]
fn bindgen_test_layout__IO_FILE() {
assert_eq!(
::std::mem::size_of::<_IO_FILE>(),
216usize,
concat!("Size of: ", stringify!(_IO_FILE))
);
assert_eq!(
::std::mem::align_of::<_IO_FILE>(),
8usize,
concat!("Alignment of ", stringify!(_IO_FILE))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_flags)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_ptr as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_read_ptr)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_end as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_read_end)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_base as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_read_base)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_base as *const _ as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_write_base)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_ptr as *const _ as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_write_ptr)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_end as *const _ as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_write_end)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_base as *const _ as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_buf_base)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_end as *const _ as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_buf_end)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_base as *const _ as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_save_base)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_backup_base as *const _ as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_backup_base)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_end as *const _ as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_IO_save_end)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._markers as *const _ as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_markers)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._chain as *const _ as usize },
104usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_chain)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._fileno as *const _ as usize },
112usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_fileno)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags2 as *const _ as usize },
116usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_flags2)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._old_offset as *const _ as usize },
120usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_old_offset)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._cur_column as *const _ as usize },
128usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_cur_column)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._vtable_offset as *const _ as usize },
130usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_vtable_offset)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._shortbuf as *const _ as usize },
131usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_shortbuf)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._lock as *const _ as usize },
136usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_lock)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._offset as *const _ as usize },
144usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_offset)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._codecvt as *const _ as usize },
152usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_codecvt)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._wide_data as *const _ as usize },
160usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_wide_data)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_list as *const _ as usize },
168usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_freeres_list)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_buf as *const _ as usize },
176usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_freeres_buf)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>())).__pad5 as *const _ as usize },
184usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(__pad5)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._mode as *const _ as usize },
192usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_mode)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._unused2 as *const _ as usize },
196usize,
concat!(
"Offset of field: ",
stringify!(_IO_FILE),
"::",
stringify!(_unused2)
)
);
}
pub type off_t = __off_t;
pub type ssize_t = __ssize_t;
pub type fpos_t = __fpos_t;
extern "C" {
pub static mut stdin: *mut FILE;
}
extern "C" {
pub static mut stdout: *mut FILE;
}
extern "C" {
pub static mut stderr: *mut FILE;
}
extern "C" {
pub fn remove(__filename: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn rename(
__old: *const ::std::os::raw::c_char,
__new: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn renameat(
__oldfd: ::std::os::raw::c_int,
__old: *const ::std::os::raw::c_char,
__newfd: ::std::os::raw::c_int,
__new: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn tmpfile() -> *mut FILE;
}
extern "C" {
pub fn tmpnam(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn tmpnam_r(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn tempnam(
__dir: *const ::std::os::raw::c_char,
__pfx: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn fclose(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn fflush(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn fflush_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn fopen(
__filename: *const ::std::os::raw::c_char,
__modes: *const ::std::os::raw::c_char,
) -> *mut FILE;
}
extern "C" {
pub fn freopen(
__filename: *const ::std::os::raw::c_char,
__modes: *const ::std::os::raw::c_char,
__stream: *mut FILE,
) -> *mut FILE;
}
extern "C" {
pub fn fdopen(__fd: ::std::os::raw::c_int, __modes: *const ::std::os::raw::c_char)
-> *mut FILE;
}
extern "C" {
pub fn fmemopen(
__s: *mut ::std::os::raw::c_void,
__len: size_t,
__modes: *const ::std::os::raw::c_char,
) -> *mut FILE;
}
extern "C" {
pub fn open_memstream(
__bufloc: *mut *mut ::std::os::raw::c_char,
__sizeloc: *mut size_t,
) -> *mut FILE;
}
extern "C" {
pub fn setbuf(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char);
}
extern "C" {
pub fn setvbuf(
__stream: *mut FILE,
__buf: *mut ::std::os::raw::c_char,
__modes: ::std::os::raw::c_int,
__n: size_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn setbuffer(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char, __size: size_t);
}
extern "C" {
pub fn setlinebuf(__stream: *mut FILE);
}
extern "C" {
pub fn fprintf(
__stream: *mut FILE,
__format: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn printf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn sprintf(
__s: *mut ::std::os::raw::c_char,
__format: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn vfprintf(
__s: *mut FILE,
__format: *const ::std::os::raw::c_char,
__arg: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn vprintf(
__format: *const ::std::os::raw::c_char,
__arg: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn vsprintf(
__s: *mut ::std::os::raw::c_char,
__format: *const ::std::os::raw::c_char,
__arg: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn snprintf(
__s: *mut ::std::os::raw::c_char,
__maxlen: ::std::os::raw::c_ulong,
__format: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn vsnprintf(
__s: *mut ::std::os::raw::c_char,
__maxlen: ::std::os::raw::c_ulong,
__format: *const ::std::os::raw::c_char,
__arg: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn vdprintf(
__fd: ::std::os::raw::c_int,
__fmt: *const ::std::os::raw::c_char,
__arg: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn dprintf(
__fd: ::std::os::raw::c_int,
__fmt: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn fscanf(
__stream: *mut FILE,
__format: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn scanf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn sscanf(
__s: *const ::std::os::raw::c_char,
__format: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
extern "C" {
#[link_name = "\u{1}__isoc99_fscanf"]
pub fn fscanf1(
__stream: *mut FILE,
__format: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
extern "C" {
#[link_name = "\u{1}__isoc99_scanf"]
pub fn scanf1(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
}
extern "C" {
#[link_name = "\u{1}__isoc99_sscanf"]
pub fn sscanf1(
__s: *const ::std::os::raw::c_char,
__format: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn vfscanf(
__s: *mut FILE,
__format: *const ::std::os::raw::c_char,
__arg: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn vscanf(
__format: *const ::std::os::raw::c_char,
__arg: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn vsscanf(
__s: *const ::std::os::raw::c_char,
__format: *const ::std::os::raw::c_char,
__arg: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
extern "C" {
#[link_name = "\u{1}__isoc99_vfscanf"]
pub fn vfscanf1(
__s: *mut FILE,
__format: *const ::std::os::raw::c_char,
__arg: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
extern "C" {
#[link_name = "\u{1}__isoc99_vscanf"]
pub fn vscanf1(
__format: *const ::std::os::raw::c_char,
__arg: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
extern "C" {
#[link_name = "\u{1}__isoc99_vsscanf"]
pub fn vsscanf1(
__s: *const ::std::os::raw::c_char,
__format: *const ::std::os::raw::c_char,
__arg: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn fgetc(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn getc(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn getchar() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn getc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn getchar_unlocked() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn fgetc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn fputc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn putc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn putchar(__c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn fputc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE)
-> ::std::os::raw::c_int;
}
extern "C" {
pub fn putc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn putchar_unlocked(__c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn getw(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn putw(__w: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn fgets(
__s: *mut ::std::os::raw::c_char,
__n: ::std::os::raw::c_int,
__stream: *mut FILE,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn __getdelim(
__lineptr: *mut *mut ::std::os::raw::c_char,
__n: *mut size_t,
__delimiter: ::std::os::raw::c_int,
__stream: *mut FILE,
) -> __ssize_t;
}
extern "C" {
pub fn getdelim(
__lineptr: *mut *mut ::std::os::raw::c_char,
__n: *mut size_t,
__delimiter: ::std::os::raw::c_int,
__stream: *mut FILE,
) -> __ssize_t;
}
extern "C" {
pub fn getline(
__lineptr: *mut *mut ::std::os::raw::c_char,
__n: *mut size_t,
__stream: *mut FILE,
) -> __ssize_t;
}
extern "C" {
pub fn fputs(__s: *const ::std::os::raw::c_char, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn puts(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn ungetc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn fread(
__ptr: *mut ::std::os::raw::c_void,
__size: ::std::os::raw::c_ulong,
__n: ::std::os::raw::c_ulong,
__stream: *mut FILE,
) -> ::std::os::raw::c_ulong;
}
extern "C" {
pub fn fwrite(
__ptr: *const ::std::os::raw::c_void,
__size: ::std::os::raw::c_ulong,
__n: ::std::os::raw::c_ulong,
__s: *mut FILE,
) -> ::std::os::raw::c_ulong;
}
extern "C" {
pub fn fread_unlocked(
__ptr: *mut ::std::os::raw::c_void,
__size: size_t,
__n: size_t,
__stream: *mut FILE,
) -> size_t;
}
extern "C" {
pub fn fwrite_unlocked(
__ptr: *const ::std::os::raw::c_void,
__size: size_t,
__n: size_t,
__stream: *mut FILE,
) -> size_t;
}
extern "C" {
pub fn fseek(
__stream: *mut FILE,
__off: ::std::os::raw::c_long,
__whence: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn ftell(__stream: *mut FILE) -> ::std::os::raw::c_long;
}
extern "C" {
pub fn rewind(__stream: *mut FILE);
}
extern "C" {
pub fn fseeko(
__stream: *mut FILE,
__off: __off_t,
__whence: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn ftello(__stream: *mut FILE) -> __off_t;
}
extern "C" {
pub fn fgetpos(__stream: *mut FILE, __pos: *mut fpos_t) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn fsetpos(__stream: *mut FILE, __pos: *const fpos_t) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn clearerr(__stream: *mut FILE);
}
extern "C" {
pub fn feof(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn ferror(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn clearerr_unlocked(__stream: *mut FILE);
}
extern "C" {
pub fn feof_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn ferror_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn perror(__s: *const ::std::os::raw::c_char);
}
extern "C" {
pub static mut sys_nerr: ::std::os::raw::c_int;
}
extern "C" {
pub static mut sys_errlist: [*const ::std::os::raw::c_char; 0usize];
}
extern "C" {
pub fn fileno(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn fileno_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn popen(
__command: *const ::std::os::raw::c_char,
__modes: *const ::std::os::raw::c_char,
) -> *mut FILE;
}
extern "C" {
pub fn pclose(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn ctermid(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn flockfile(__stream: *mut FILE);
}
extern "C" {
pub fn ftrylockfile(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn funlockfile(__stream: *mut FILE);
}
extern "C" {
pub fn __uflow(arg1: *mut FILE) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn __overflow(arg1: *mut FILE, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ie_core {
_unused: [u8; 0],
}
pub type ie_core_t = ie_core;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ie_network {
_unused: [u8; 0],
}
pub type ie_network_t = ie_network;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ie_executable {
_unused: [u8; 0],
}
pub type ie_executable_network_t = ie_executable;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ie_infer_request {
_unused: [u8; 0],
}
pub type ie_infer_request_t = ie_infer_request;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ie_blob {
_unused: [u8; 0],
}
pub type ie_blob_t = ie_blob;
#[doc = " @struct ie_version"]
#[doc = " @brief Represents an API version information that reflects the set of supported features"]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ie_version {
pub api_version: *mut ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout_ie_version() {
assert_eq!(
::std::mem::size_of::<ie_version>(),
8usize,
concat!("Size of: ", stringify!(ie_version))
);
assert_eq!(
::std::mem::align_of::<ie_version>(),
8usize,
concat!("Alignment of ", stringify!(ie_version))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ie_version>())).api_version as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(ie_version),
"::",
stringify!(api_version)
)
);
}
#[doc = " @struct ie_version"]
#[doc = " @brief Represents an API version information that reflects the set of supported features"]
pub type ie_version_t = ie_version;
#[doc = " @struct ie_core_version"]
#[doc = " @brief Represents version information that describes devices and the inference engine runtime library"]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ie_core_version {
pub major: size_t,
pub minor: size_t,
pub device_name: *const ::std::os::raw::c_char,
pub build_number: *const ::std::os::raw::c_char,
pub description: *const ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout_ie_core_version() {
assert_eq!(
::std::mem::size_of::<ie_core_version>(),
40usize,
concat!("Size of: ", stringify!(ie_core_version))
);
assert_eq!(
::std::mem::align_of::<ie_core_version>(),
8usize,
concat!("Alignment of ", stringify!(ie_core_version))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ie_core_version>())).major as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(ie_core_version),
"::",
stringify!(major)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ie_core_version>())).minor as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(ie_core_version),
"::",
stringify!(minor)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ie_core_version>())).device_name as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(ie_core_version),
"::",
stringify!(device_name)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ie_core_version>())).build_number as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(ie_core_version),
"::",
stringify!(build_number)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ie_core_version>())).description as *const _ as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(ie_core_version),
"::",
stringify!(description)
)
);
}
#[doc = " @struct ie_core_version"]
#[doc = " @brief Represents version information that describes devices and the inference engine runtime library"]
pub type ie_core_version_t = ie_core_version;
#[doc = " @struct ie_core_versions"]
#[doc = " @brief Represents all versions information that describes all devices and the inference engine runtime library"]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ie_core_versions {
pub versions: *mut ie_core_version_t,
pub num_vers: size_t,
}
#[test]
fn bindgen_test_layout_ie_core_versions() {
assert_eq!(
::std::mem::size_of::<ie_core_versions>(),
16usize,
concat!("Size of: ", stringify!(ie_core_versions))
);
assert_eq!(
::std::mem::align_of::<ie_core_versions>(),
8usize,
concat!("Alignment of ", stringify!(ie_core_versions))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ie_core_versions>())).versions as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(ie_core_versions),
"::",
stringify!(versions)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ie_core_versions>())).num_vers as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(ie_core_versions),
"::",
stringify!(num_vers)
)
);
}
#[doc = " @struct ie_core_versions"]
#[doc = " @brief Represents all versions information that describes all devices and the inference engine runtime library"]
pub type ie_core_versions_t = ie_core_versions;
#[doc = " @struct ie_config"]
#[doc = " @brief Represents configuration information that describes devices"]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ie_config {
pub name: *const ::std::os::raw::c_char,
pub value: *const ::std::os::raw::c_char,
pub next: *mut ie_config,
}
#[test]
fn bindgen_test_layout_ie_config() {
assert_eq!(
::std::mem::size_of::<ie_config>(),
24usize,
concat!("Size of: ", stringify!(ie_config))
);
assert_eq!(
::std::mem::align_of::<ie_config>(),
8usize,
concat!("Alignment of ", stringify!(ie_config))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ie_config>())).name as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(ie_config),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ie_config>())).value as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(ie_config),
"::",
stringify!(value)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ie_config>())).next as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(ie_config),
"::",
stringify!(next)
)
);
}
#[doc = " @struct ie_config"]
#[doc = " @brief Represents configuration information that describes devices"]
pub type ie_config_t = ie_config;
#[doc = " @struct ie_param"]
#[doc = " @brief metric and config parameters."]
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ie_param {
pub __bindgen_anon_1: ie_param__bindgen_ty_1,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union ie_param__bindgen_ty_1 {
pub params: *mut ::std::os::raw::c_char,
pub number: ::std::os::raw::c_uint,
pub range_for_async_infer_request: [::std::os::raw::c_uint; 3usize],
pub range_for_streams: [::std::os::raw::c_uint; 2usize],
_bindgen_union_align: [u64; 2usize],
}
#[test]
fn bindgen_test_layout_ie_param__bindgen_ty_1() {
assert_eq!(
::std::mem::size_of::<ie_param__bindgen_ty_1>(),
16usize,
concat!("Size of: ", stringify!(ie_param__bindgen_ty_1))
);
assert_eq!(
::std::mem::align_of::<ie_param__bindgen_ty_1>(),
8usize,
concat!("Alignment of ", stringify!(ie_param__bindgen_ty_1))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ie_param__bindgen_ty_1>())).params as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(ie_param__bindgen_ty_1),
"::",
stringify!(params)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ie_param__bindgen_ty_1>())).number as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(ie_param__bindgen_ty_1),
"::",
stringify!(number)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<ie_param__bindgen_ty_1>())).range_for_async_infer_request
as *const _ as usize
},
0usize,
concat!(
"Offset of field: ",
stringify!(ie_param__bindgen_ty_1),
"::",
stringify!(range_for_async_infer_request)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<ie_param__bindgen_ty_1>())).range_for_streams as *const _
as usize
},
0usize,
concat!(
"Offset of field: ",
stringify!(ie_param__bindgen_ty_1),
"::",
stringify!(range_for_streams)
)
);
}
#[test]
fn bindgen_test_layout_ie_param() {
assert_eq!(
::std::mem::size_of::<ie_param>(),
16usize,
concat!("Size of: ", stringify!(ie_param))
);
assert_eq!(
::std::mem::align_of::<ie_param>(),
8usize,
concat!("Alignment of ", stringify!(ie_param))
);
}
#[doc = " @struct ie_param"]
#[doc = " @brief metric and config parameters."]
pub type ie_param_t = ie_param;
#[doc = " @struct ie_param_config"]
#[doc = " @brief Represents configuration parameter information"]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ie_param_config {
pub name: *mut ::std::os::raw::c_char,
pub param: *mut ie_param_t,
}
#[test]
fn bindgen_test_layout_ie_param_config() {
assert_eq!(
::std::mem::size_of::<ie_param_config>(),
16usize,
concat!("Size of: ", stringify!(ie_param_config))
);
assert_eq!(
::std::mem::align_of::<ie_param_config>(),
8usize,
concat!("Alignment of ", stringify!(ie_param_config))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ie_param_config>())).name as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(ie_param_config),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ie_param_config>())).param as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(ie_param_config),
"::",
stringify!(param)
)
);
}
#[doc = " @struct ie_param_config"]
#[doc = " @brief Represents configuration parameter information"]
pub type ie_param_config_t = ie_param_config;
#[doc = " @struct desc"]
#[doc = " @brief Represents detailed information for an error"]
#[repr(C)]
#[derive(Copy, Clone)]
pub struct desc {
pub msg: [::std::os::raw::c_char; 256usize],
}
#[test]
fn bindgen_test_layout_desc() {
assert_eq!(
::std::mem::size_of::<desc>(),
256usize,
concat!("Size of: ", stringify!(desc))
);
assert_eq!(
::std::mem::align_of::<desc>(),
1usize,
concat!("Alignment of ", stringify!(desc))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<desc>())).msg as *const _ as usize },
0usize,
concat!("Offset of field: ", stringify!(desc), "::", stringify!(msg))
);
}
#[doc = " @struct desc"]
#[doc = " @brief Represents detailed information for an error"]
pub type desc_t = desc;
#[doc = " @struct dimensions"]
#[doc = " @brief Represents dimensions for input or output data"]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct dimensions {
pub ranks: size_t,
pub dims: [size_t; 8usize],
}
#[test]
fn bindgen_test_layout_dimensions() {
assert_eq!(
::std::mem::size_of::<dimensions>(),
72usize,
concat!("Size of: ", stringify!(dimensions))
);
assert_eq!(
::std::mem::align_of::<dimensions>(),
8usize,
concat!("Alignment of ", stringify!(dimensions))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<dimensions>())).ranks as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(dimensions),
"::",
stringify!(ranks)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<dimensions>())).dims as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(dimensions),
"::",
stringify!(dims)
)
);
}
#[doc = " @struct dimensions"]
#[doc = " @brief Represents dimensions for input or output data"]
pub type dimensions_t = dimensions;
#[repr(u32)]
#[doc = " @enum layout_e"]
#[doc = " @brief Layouts that the inference engine supports"]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum layout_e {
ANY = 0,
NCHW = 1,
NHWC = 2,
NCDHW = 3,
NDHWC = 4,
OIHW = 64,
SCALAR = 95,
C = 96,
CHW = 128,
HW = 192,
NC = 193,
CN = 194,
BLOCKED = 200,
}
#[repr(u32)]
#[doc = " @enum precision_e"]
#[doc = " @brief Precisions that the inference engine supports"]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum precision_e {
#[doc = "< Unspecified value. Used by default"]
UNSPECIFIED = 255,
#[doc = "< Mixed value. Can be received from network. No applicable for tensors"]
MIXED = 0,
#[doc = "< 32bit floating point value"]
FP32 = 10,
#[doc = "< 16bit floating point value"]
FP16 = 11,
#[doc = "< 16bit specific signed fixed point precision"]
Q78 = 20,
#[doc = "< 16bit signed integer value"]
I16 = 30,
#[doc = "< 8bit unsigned integer value"]
U8 = 40,
#[doc = "< 8bit signed integer value"]
I8 = 50,
#[doc = "< 16bit unsigned integer value"]
U16 = 60,
#[doc = "< 32bit signed integer value"]
I32 = 70,
#[doc = "< 64bit signed integer value"]
I64 = 72,
#[doc = "< 64bit unsigned integer value"]
U64 = 73,
#[doc = "< 32bit unsigned integer value"]
U32 = 74,
#[doc = "< 1bit integer value"]
BIN = 71,
#[doc = "< custom precision has it's own name and size of elements"]
CUSTOM = 80,
}
#[doc = " @struct tensor_desc"]
#[doc = " @brief Represents detailed information for a tensor"]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct tensor_desc {
pub layout: layout_e,
pub dims: dimensions_t,
pub precision: precision_e,
}
#[test]
fn bindgen_test_layout_tensor_desc() {
assert_eq!(
::std::mem::size_of::<tensor_desc>(),
88usize,
concat!("Size of: ", stringify!(tensor_desc))
);
assert_eq!(
::std::mem::align_of::<tensor_desc>(),
8usize,
concat!("Alignment of ", stringify!(tensor_desc))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<tensor_desc>())).layout as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(tensor_desc),
"::",
stringify!(layout)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<tensor_desc>())).dims as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(tensor_desc),
"::",
stringify!(dims)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<tensor_desc>())).precision as *const _ as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(tensor_desc),
"::",
stringify!(precision)
)
);
}
#[doc = " @struct tensor_desc"]
#[doc = " @brief Represents detailed information for a tensor"]
pub type tensor_desc_t = tensor_desc;
#[doc = "< Plain blob (default), no extra color processing required"]
pub const colorformat_e_RAW: colorformat_e = 0;
#[doc = "< RGB color format"]
pub const colorformat_e_RGB: colorformat_e = 1;
#[doc = "< BGR color format, default in DLDT"]
pub const colorformat_e_BGR: colorformat_e = 2;
#[doc = "< RGBX color format with X ignored during inference"]
pub const colorformat_e_RGBX: colorformat_e = 3;
#[doc = "< BGRX color format with X ignored during inference"]
pub const colorformat_e_BGRX: colorformat_e = 4;
#[doc = "< NV12 color format represented as compound Y+UV blob"]
pub const colorformat_e_NV12: colorformat_e = 5;
#[doc = "< I420 color format represented as compound Y+U+V blob"]
pub const colorformat_e_I420: colorformat_e = 6;
#[doc = " @enum colorformat_e"]
#[doc = " @brief Extra information about input color format for preprocessing"]
pub type colorformat_e = ::std::os::raw::c_uint;
#[repr(u32)]
#[doc = " @enum resize_alg_e"]
#[doc = " @brief Represents the list of supported resize algorithms."]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum resize_alg_e {
NO_RESIZE = 0,
RESIZE_BILINEAR = 1,
RESIZE_AREA = 2,
}
pub const IEStatusCode_OK: IEStatusCode = 0;
pub const IEStatusCode_GENERAL_ERROR: IEStatusCode = -1;
pub const IEStatusCode_NOT_IMPLEMENTED: IEStatusCode = -2;
pub const IEStatusCode_NETWORK_NOT_LOADED: IEStatusCode = -3;
pub const IEStatusCode_PARAMETER_MISMATCH: IEStatusCode = -4;
pub const IEStatusCode_NOT_FOUND: IEStatusCode = -5;
pub const IEStatusCode_OUT_OF_BOUNDS: IEStatusCode = -6;
pub const IEStatusCode_UNEXPECTED: IEStatusCode = -7;
pub const IEStatusCode_REQUEST_BUSY: IEStatusCode = -8;
pub const IEStatusCode_RESULT_NOT_READY: IEStatusCode = -9;
pub const IEStatusCode_NOT_ALLOCATED: IEStatusCode = -10;
pub const IEStatusCode_INFER_NOT_STARTED: IEStatusCode = -11;
pub const IEStatusCode_NETWORK_NOT_READ: IEStatusCode = -12;
#[doc = " @enum IEStatusCode"]
#[doc = " @brief This enum contains codes for all possible return values of the interface functions"]
pub type IEStatusCode = ::std::os::raw::c_int;
#[doc = " @struct roi_t"]
#[doc = " @brief This structure describes roi data."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct roi {
pub id: size_t,
pub posX: size_t,
pub posY: size_t,
pub sizeX: size_t,
pub sizeY: size_t,
}
#[test]
fn bindgen_test_layout_roi() {
assert_eq!(
::std::mem::size_of::<roi>(),
40usize,
concat!("Size of: ", stringify!(roi))
);
assert_eq!(
::std::mem::align_of::<roi>(),
8usize,
concat!("Alignment of ", stringify!(roi))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<roi>())).id as *const _ as usize },
0usize,
concat!("Offset of field: ", stringify!(roi), "::", stringify!(id))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<roi>())).posX as *const _ as usize },
8usize,
concat!("Offset of field: ", stringify!(roi), "::", stringify!(posX))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<roi>())).posY as *const _ as usize },
16usize,
concat!("Offset of field: ", stringify!(roi), "::", stringify!(posY))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<roi>())).sizeX as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(roi),
"::",
stringify!(sizeX)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<roi>())).sizeY as *const _ as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(roi),
"::",
stringify!(sizeY)
)
);
}
#[doc = " @struct roi_t"]
#[doc = " @brief This structure describes roi data."]
pub type roi_t = roi;
#[doc = " @struct input_shape"]
#[doc = " @brief Represents shape for input data"]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct input_shape {
pub name: *mut ::std::os::raw::c_char,
pub shape: dimensions_t,
}
#[test]
fn bindgen_test_layout_input_shape() {
assert_eq!(
::std::mem::size_of::<input_shape>(),
80usize,
concat!("Size of: ", stringify!(input_shape))
);
assert_eq!(
::std::mem::align_of::<input_shape>(),
8usize,
concat!("Alignment of ", stringify!(input_shape))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<input_shape>())).name as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(input_shape),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<input_shape>())).shape as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(input_shape),
"::",
stringify!(shape)
)
);
}
#[doc = " @struct input_shape"]
#[doc = " @brief Represents shape for input data"]
pub type input_shape_t = input_shape;
#[doc = " @struct input_shapes"]
#[doc = " @brief Represents shapes for all input data"]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct input_shapes {
pub shapes: *mut input_shape_t,
pub shape_num: size_t,
}
#[test]
fn bindgen_test_layout_input_shapes() {
assert_eq!(
::std::mem::size_of::<input_shapes>(),
16usize,
concat!("Size of: ", stringify!(input_shapes))
);
assert_eq!(
::std::mem::align_of::<input_shapes>(),
8usize,
concat!("Alignment of ", stringify!(input_shapes))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<input_shapes>())).shapes as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(input_shapes),
"::",
stringify!(shapes)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<input_shapes>())).shape_num as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(input_shapes),
"::",
stringify!(shape_num)
)
);
}
#[doc = " @struct input_shapes"]
#[doc = " @brief Represents shapes for all input data"]
pub type input_shapes_t = input_shapes;
#[doc = " @struct ie_blob_buffer"]
#[doc = " @brief Represents copied data from the given blob."]
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ie_blob_buffer {
pub __bindgen_anon_1: ie_blob_buffer__bindgen_ty_1,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union ie_blob_buffer__bindgen_ty_1 {
pub buffer: *mut ::std::os::raw::c_void,
pub cbuffer: *const ::std::os::raw::c_void,
_bindgen_union_align: u64,
}
#[test]
fn bindgen_test_layout_ie_blob_buffer__bindgen_ty_1() {
assert_eq!(
::std::mem::size_of::<ie_blob_buffer__bindgen_ty_1>(),
8usize,
concat!("Size of: ", stringify!(ie_blob_buffer__bindgen_ty_1))
);
assert_eq!(
::std::mem::align_of::<ie_blob_buffer__bindgen_ty_1>(),
8usize,
concat!("Alignment of ", stringify!(ie_blob_buffer__bindgen_ty_1))
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<ie_blob_buffer__bindgen_ty_1>())).buffer as *const _ as usize
},
0usize,
concat!(
"Offset of field: ",
stringify!(ie_blob_buffer__bindgen_ty_1),
"::",
stringify!(buffer)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<ie_blob_buffer__bindgen_ty_1>())).cbuffer as *const _ as usize
},
0usize,
concat!(
"Offset of field: ",
stringify!(ie_blob_buffer__bindgen_ty_1),
"::",
stringify!(cbuffer)
)
);
}
#[test]
fn bindgen_test_layout_ie_blob_buffer() {
assert_eq!(
::std::mem::size_of::<ie_blob_buffer>(),
8usize,
concat!("Size of: ", stringify!(ie_blob_buffer))
);
assert_eq!(
::std::mem::align_of::<ie_blob_buffer>(),
8usize,
concat!("Alignment of ", stringify!(ie_blob_buffer))
);
}
#[doc = " @struct ie_blob_buffer"]
#[doc = " @brief Represents copied data from the given blob."]
pub type ie_blob_buffer_t = ie_blob_buffer;
#[doc = " @struct ie_complete_call_back"]
#[doc = " @brief Completion callback definition about the function and args"]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ie_complete_call_back {
pub completeCallBackFunc:
::std::option::Option<unsafe extern "C" fn(args: *mut ::std::os::raw::c_void)>,
pub args: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout_ie_complete_call_back() {
assert_eq!(
::std::mem::size_of::<ie_complete_call_back>(),
16usize,
concat!("Size of: ", stringify!(ie_complete_call_back))
);
assert_eq!(
::std::mem::align_of::<ie_complete_call_back>(),
8usize,
concat!("Alignment of ", stringify!(ie_complete_call_back))
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<ie_complete_call_back>())).completeCallBackFunc as *const _
as usize
},
0usize,
concat!(
"Offset of field: ",
stringify!(ie_complete_call_back),
"::",
stringify!(completeCallBackFunc)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ie_complete_call_back>())).args as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(ie_complete_call_back),
"::",
stringify!(args)
)
);
}
#[doc = " @struct ie_complete_call_back"]
#[doc = " @brief Completion callback definition about the function and args"]
pub type ie_complete_call_back_t = ie_complete_call_back;
#[doc = " @struct ie_available_devices"]
#[doc = " @brief Represent all available devices."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ie_available_devices {
pub devices: *mut *mut ::std::os::raw::c_char,
pub num_devices: size_t,
}
#[test]
fn bindgen_test_layout_ie_available_devices() {
assert_eq!(
::std::mem::size_of::<ie_available_devices>(),
16usize,
concat!("Size of: ", stringify!(ie_available_devices))
);
assert_eq!(
::std::mem::align_of::<ie_available_devices>(),
8usize,
concat!("Alignment of ", stringify!(ie_available_devices))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ie_available_devices>())).devices as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(ie_available_devices),
"::",
stringify!(devices)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<ie_available_devices>())).num_devices as *const _ as usize
},
8usize,
concat!(
"Offset of field: ",
stringify!(ie_available_devices),
"::",
stringify!(num_devices)
)
);
}
#[doc = " @struct ie_available_devices"]
#[doc = " @brief Represent all available devices."]
pub type ie_available_devices_t = ie_available_devices;
extern "C" {
#[doc = " @brief Returns number of version that is exported. Use the ie_version_free() to free memory."]
#[doc = " @return Version number of the API."]
pub fn ie_c_api_version() -> ie_version_t;
}
extern "C" {
#[doc = " @brief Release the memory allocated by ie_c_api_version."]
#[doc = " @param version A pointer to the ie_version_t to free memory."]
pub fn ie_version_free(version: *mut ie_version_t);
}
extern "C" {
#[doc = " @brief Release the memory allocated by ie_param_t."]
#[doc = " @param version A pointer to the ie_param_t to free memory."]
pub fn ie_param_free(param: *mut ie_param_t);
}
extern "C" {
#[doc = " @brief Constructs Inference Engine Core instance using XML configuration file with devices description."]
#[doc = " See RegisterPlugins for more details. Use the ie_core_free() method to free memory."]
#[doc = " @ingroup Core"]
#[doc = " @param xml_config_file A path to .xml file with devices to load from. If XML configuration file is not specified,"]
#[doc = " then default Inference Engine devices are loaded from the default plugin.xml file."]
#[doc = " @param core A pointer to the newly created ie_core_t."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_core_create(
xml_config_file: *const ::std::os::raw::c_char,
core: *mut *mut ie_core_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Releases memory occupied by core."]
#[doc = " @ingroup Core"]
#[doc = " @param core A pointer to the core to free memory."]
pub fn ie_core_free(core: *mut *mut ie_core_t);
}
extern "C" {
#[doc = " @brief Gets version information of the device specified. Use the ie_core_versions_free() method to free memory."]
#[doc = " @ingroup Core"]
#[doc = " @param core A pointer to ie_core_t instance."]
#[doc = " @param device_name Name to indentify device."]
#[doc = " @param versions A pointer to versions corresponding to device_name."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_core_get_versions(
core: *const ie_core_t,
device_name: *const ::std::os::raw::c_char,
versions: *mut ie_core_versions_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Releases memory occupied by ie_core_versions."]
#[doc = " @ingroup Core"]
#[doc = " @param vers A pointer to the ie_core_versions to free memory."]
pub fn ie_core_versions_free(vers: *mut ie_core_versions_t);
}
extern "C" {
#[doc = " @brief Reads the model from the .xml and .bin files of the IR. Use the ie_network_free() method to free memory."]
#[doc = " @ingroup Core"]
#[doc = " @param core A pointer to ie_core_t instance."]
#[doc = " @param xml .xml file's path of the IR."]
#[doc = " @param weights_file .bin file's path of the IR, if path is empty, will try to read bin file with the same name as xml and"]
#[doc = " if bin file with the same name was not found, will load IR without weights."]
#[doc = " @param network A pointer to the newly created network."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_core_read_network(
core: *mut ie_core_t,
xml: *const ::std::os::raw::c_char,
weights_file: *const ::std::os::raw::c_char,
network: *mut *mut ie_network_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Reads the model from an xml string and a blob of the bin part of the IR. Use the ie_network_free() method to free memory."]
#[doc = " @ingroup Core"]
#[doc = " @param core A pointer to ie_core_t instance."]
#[doc = " @param xml_content Xml content of the IR."]
#[doc = " @param xml_content_size Number of bytes in the xml content of the IR."]
#[doc = " @param weight_blob Blob containing the bin part of the IR."]
#[doc = " @param network A pointer to the newly created network."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_core_read_network_from_memory(
core: *mut ie_core_t,
xml_content: *const u8,
xml_content_size: size_t,
weight_blob: *const ie_blob_t,
network: *mut *mut ie_network_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Creates an executable network from a network object. Users can create as many networks as they need and use"]
#[doc = " them simultaneously (up to the limitation of the hardware resources). Use the ie_exec_network_free() method to free memory."]
#[doc = " @ingroup Core"]
#[doc = " @param core A pointer to ie_core_t instance."]
#[doc = " @param network A pointer to ie_network instance."]
#[doc = " @param device_name Name of device to load network to."]
#[doc = " @param config Device configuration."]
#[doc = " @param exe_network A pointer to the newly created executable network."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_core_load_network(
core: *mut ie_core_t,
network: *const ie_network_t,
device_name: *const ::std::os::raw::c_char,
config: *const ie_config_t,
exe_network: *mut *mut ie_executable_network_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Sets configuration for device."]
#[doc = " @ingroup Core"]
#[doc = " @param core A pointer to ie_core_t instance."]
#[doc = " @param ie_core_config Device configuration."]
#[doc = " @param device_name An optinal name of a device. If device name is not specified,"]
#[doc = " the config is set for all the registered devices."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_core_set_config(
core: *mut ie_core_t,
ie_core_config: *const ie_config_t,
device_name: *const ::std::os::raw::c_char,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Registers a new device and a plugin which implement this device inside Inference Engine."]
#[doc = " @ingroup Core"]
#[doc = " @param core A pointer to ie_core_t instance."]
#[doc = " @param plugin_name A name of a plugin. Depending on a platform, plugin_name is wrapped with"]
#[doc = " a shared library suffix and a prefix to identify a full name of the library."]
#[doc = " @param device_name A device name to register plugin for. If not specified, the method registers"]
#[doc = " a plugin with the default name."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_core_register_plugin(
core: *mut ie_core_t,
plugin_name: *const ::std::os::raw::c_char,
device_name: *const ::std::os::raw::c_char,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Registers plugins specified in an \".xml\" configuration file."]
#[doc = " @ingroup Core"]
#[doc = " @param core A pointer to ie_core_t instance."]
#[doc = " @param xml_config_file A full path to \".xml\" file containing plugins configuration."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_core_register_plugins(
core: *mut ie_core_t,
xml_config_file: *const ::std::os::raw::c_char,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Unregisters a plugin with a specified device name."]
#[doc = " @ingroup Core"]
#[doc = " @param core A pointer to ie_core_t instance."]
#[doc = " @param device_name A device name of the device to unregister."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_core_unregister_plugin(
core: *mut ie_core_t,
device_name: *const ::std::os::raw::c_char,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Loads extension library to the device with a specified device name."]
#[doc = " @ingroup Core"]
#[doc = " @param core A pointer to ie_core_t instance."]
#[doc = " @param extension_path Path to the extensions library file to load to a device."]
#[doc = " @param device_name A device name of a device to load the extensions to."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_core_add_extension(
core: *mut ie_core_t,
extension_path: *const ::std::os::raw::c_char,
device_name: *const ::std::os::raw::c_char,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets general runtime metric for dedicated hardware. The method is needed to request common device properties"]
#[doc = " which are executable network agnostic. It can be device name, temperature, other devices-specific values."]
#[doc = " @ingroup Core"]
#[doc = " @param core A pointer to ie_core_t instance."]
#[doc = " @param device_name A name of a device to get a metric value."]
#[doc = " @param metric_name A metric name to request."]
#[doc = " @param param_result A metric value corresponding to the metric_name."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_core_get_metric(
core: *const ie_core_t,
device_name: *const ::std::os::raw::c_char,
metric_name: *const ::std::os::raw::c_char,
param_result: *mut ie_param_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets configuration dedicated to device behaviour. The method is targeted to extract information"]
#[doc = " which can be set via SetConfig method."]
#[doc = " @ingroup Core"]
#[doc = " @param core A pointer to ie_core_t instance."]
#[doc = " @param device_name A name of a device to get a configuration value."]
#[doc = " @param config_name Name of a configuration."]
#[doc = " @param param_result A configuration value corresponding to the config_name."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_core_get_config(
core: *const ie_core_t,
device_name: *const ::std::os::raw::c_char,
config_name: *const ::std::os::raw::c_char,
param_result: *mut ie_param_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets available devices for neural network inference."]
#[doc = " @ingroup Core"]
#[doc = " @param core A pointer to ie_core_t instance."]
#[doc = " @param avai_devices The devices are returned as { CPU, FPGA.0, FPGA.1, MYRIAD }"]
#[doc = " If there more than one device of specific type, they are enumerated with .# suffix"]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_core_get_available_devices(
core: *const ie_core_t,
avai_devices: *mut ie_available_devices_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Releases memory occpuied by ie_available_devices_t"]
#[doc = " @ingroup Core"]
#[doc = " @param avai_devices A pointer to the ie_available_devices_t to free memory."]
pub fn ie_core_available_devices_free(avai_devices: *mut ie_available_devices_t);
}
extern "C" {
#[doc = " @brief Releases memory occupied by ExecutableNetwork."]
#[doc = " @ingroup ExecutableNetwork"]
#[doc = " @param ie_exec_network A pointer to the ExecutableNetwork to free memory."]
pub fn ie_exec_network_free(ie_exec_network: *mut *mut ie_executable_network_t);
}
extern "C" {
#[doc = " @brief Creates an inference request instance used to infer the network. The created request has allocated input"]
#[doc = " and output blobs (that can be changed later). Use the ie_infer_request_free() method to free memory."]
#[doc = " @ingroup ExecutableNetwork"]
#[doc = " @param ie_exec_network A pointer to ie_executable_network_t instance."]
#[doc = " @param request A pointer to the newly created ie_infer_request_t instance"]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_exec_network_create_infer_request(
ie_exec_network: *mut ie_executable_network_t,
request: *mut *mut ie_infer_request_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets general runtime metric for an executable network. It can be network name, actual device ID on which executable network is running"]
#[doc = " or all other properties which cannot be changed dynamically."]
#[doc = " @ingroup ExecutableNetwork"]
#[doc = " @param ie_exec_network A pointer to ie_executable_network_t instance."]
#[doc = " @param metric_name A metric name to request."]
#[doc = " @param param_result A metric value corresponding to the metric_name."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_exec_network_get_metric(
ie_exec_network: *const ie_executable_network_t,
metric_name: *const ::std::os::raw::c_char,
param_result: *mut ie_param_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Sets configuration for current executable network. Currently, the method can be used"]
#[doc = " when the network run on the Multi device and the configuration paramter is only can be \"MULTI_DEVICE_PRIORITIES\""]
#[doc = " @ingroup ExecutableNetwork"]
#[doc = " @param ie_exec_network A pointer to ie_executable_network_t instance."]
#[doc = " @param param_config A pointer to device configuration.."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_exec_network_set_config(
ie_exec_network: *mut ie_executable_network_t,
param_config: *const ie_config_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets configuration for current executable network. The method is responsible to"]
#[doc = " extract information which affects executable network execution."]
#[doc = " @ingroup ExecutableNetwork"]
#[doc = " @param ie_exec_network A pointer to ie_executable_network_t instance."]
#[doc = " @param metric_config A configuration parameter name to request."]
#[doc = " @param param_result A configuration value corresponding to a configuration paramter name."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_exec_network_get_config(
ie_exec_network: *const ie_executable_network_t,
metric_config: *const ::std::os::raw::c_char,
param_result: *mut ie_param_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Releases memory occupied by ie_infer_request_t instance."]
#[doc = " @ingroup InferRequest"]
#[doc = " @param infer_request A pointer to the ie_infer_request_t to free memory."]
pub fn ie_infer_request_free(infer_request: *mut *mut ie_infer_request_t);
}
extern "C" {
#[doc = " @brief Gets input/output data for inference"]
#[doc = " @ingroup InferRequest"]
#[doc = " @param infer_request A pointer to ie_infer_request_t instance."]
#[doc = " @param name Name of input or output blob."]
#[doc = " @param blob A pointer to input or output blob. The type of Blob must match the network input precision and size."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_infer_request_get_blob(
infer_request: *mut ie_infer_request_t,
name: *const ::std::os::raw::c_char,
blob: *mut *mut ie_blob_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Sets input/output data to inference."]
#[doc = " @ingroup InferRequest"]
#[doc = " @param infer_request A pointer to ie_infer_request_t instance."]
#[doc = " @param name Name of input or output blob."]
#[doc = " @param blob Reference to input or output blob. The type of a blob must match the network input precision and size."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_infer_request_set_blob(
infer_request: *mut ie_infer_request_t,
name: *const ::std::os::raw::c_char,
blob: *const ie_blob_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Starts synchronous inference of the infer request and fill outputs."]
#[doc = " @ingroup InferRequest"]
#[doc = " @param infer_request A pointer to ie_infer_request_t instance."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_infer_request_infer(infer_request: *mut ie_infer_request_t) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Starts asynchronous inference of the infer request and fill outputs."]
#[doc = " @ingroup InferRequest"]
#[doc = " @param infer_request A pointer to ie_infer_request_t instance."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_infer_request_infer_async(infer_request: *mut ie_infer_request_t) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Sets a callback function that will be called on success or failure of asynchronous request"]
#[doc = " @ingroup InferRequest"]
#[doc = " @param infer_request A pointer to ie_infer_request_t instance."]
#[doc = " @param callback A function to be called."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_infer_set_completion_callback(
infer_request: *mut ie_infer_request_t,
callback: *mut ie_complete_call_back_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Waits for the result to become available. Blocks until specified timeout elapses or the result becomes available, whichever comes first."]
#[doc = " @ingroup InferRequest"]
#[doc = " @param infer_request A pointer to ie_infer_request_t instance."]
#[doc = " @param timeout Maximum duration in milliseconds to block for"]
#[doc = " @note There are special cases when timeout is equal some value of the WaitMode enum:"]
#[doc = " * 0 - Immediately returns the inference status. It does not block or interrupt execution."]
#[doc = " * -1 - waits until inference result becomes available"]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_infer_request_wait(
infer_request: *mut ie_infer_request_t,
timeout: i64,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Sets new batch size for certain infer request when dynamic batching is enabled in executable network that created this request."]
#[doc = " @ingroup InferRequest"]
#[doc = " @param infer_request A pointer to ie_infer_request_t instance."]
#[doc = " @param size New batch size to be used by all the following inference calls for this request."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_infer_request_set_batch(
infer_request: *mut ie_infer_request_t,
size: size_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief When netowrk is loaded into the Infernece Engine, it is not required anymore and should be released"]
#[doc = " @ingroup Network"]
#[doc = " @param network The pointer to the instance of the ie_network_t to free."]
pub fn ie_network_free(network: *mut *mut ie_network_t);
}
extern "C" {
#[doc = " @brief Get name of network."]
#[doc = " @ingroup Network"]
#[doc = " @param name Name of the network."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_get_name(
network: *const ie_network_t,
name: *mut *mut ::std::os::raw::c_char,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets number of inputs for the network."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to the instance of the ie_network_t to get number of input information."]
#[doc = " @param size_result A number of the instance's input information."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_get_inputs_number(
network: *const ie_network_t,
size_result: *mut size_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets name corresponding to the \"number\". Use the ie_network_name_free() method to free memory."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to theinstance of the ie_network_t to get input information."]
#[doc = " @param number An id of input information ."]
#[doc = " @param name Input name corresponding to the number."]
#[doc = " @return status Status code of the operation: OK(0) for success."]
pub fn ie_network_get_input_name(
network: *const ie_network_t,
number: size_t,
name: *mut *mut ::std::os::raw::c_char,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets a precision of the input data provided by user."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to ie_network_t instance."]
#[doc = " @param input_name Name of input data."]
#[doc = " @param prec_result A pointer to the precision used for input blob creation."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_get_input_precision(
network: *const ie_network_t,
input_name: *const ::std::os::raw::c_char,
prec_result: *mut precision_e,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Changes the precision of the input data provided by the user."]
#[doc = " This function should be called before loading the network to the device."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to ie_network_t instance."]
#[doc = " @param input_name Name of input data."]
#[doc = " @param p A new precision of the input data to set (eg. precision_e.FP16)."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_set_input_precision(
network: *mut ie_network_t,
input_name: *const ::std::os::raw::c_char,
p: precision_e,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets a layout of the input data."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to ie_network_t instance."]
#[doc = " @param input_name Name of input data."]
#[doc = " @param layout_result A pointer to the layout used for input blob creation."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_get_input_layout(
network: *const ie_network_t,
input_name: *const ::std::os::raw::c_char,
layout_result: *mut layout_e,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Changes the layout of the input data named \"input_name\"."]
#[doc = " This function should be called before loading the network to the device."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to ie_network_t instance."]
#[doc = " @param input_name Name of input data."]
#[doc = " @param l A new layout of the input data to set."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_set_input_layout(
network: *mut ie_network_t,
input_name: *const ::std::os::raw::c_char,
l: layout_e,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @Gets dimensions/shape of the input data with reversed order."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to ie_network_t instance."]
#[doc = " @param input_name Name of input data."]
#[doc = " @param dims_result A pointer to the dimensions used for input blob creation."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_get_input_dims(
network: *const ie_network_t,
input_name: *const ::std::os::raw::c_char,
dims_result: *mut dimensions_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets pre-configured resize algorithm."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to ie_network_t instance."]
#[doc = " @param input_name Name of input data."]
#[doc = " @parm resize_alg_result The pointer to the resize algorithm used for input blob creation."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_get_input_resize_algorithm(
network: *const ie_network_t,
input_name: *const ::std::os::raw::c_char,
resize_alg_result: *mut resize_alg_e,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Sets resize algorithm to be used during pre-processing"]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to ie_network_t instance."]
#[doc = " @param input_name Name of input data."]
#[doc = " @param resize_algo Resize algorithm."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_set_input_resize_algorithm(
network: *mut ie_network_t,
input_name: *const ::std::os::raw::c_char,
resize_algo: resize_alg_e,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets color format of the input data."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to ie_network_t instance."]
#[doc = " @param input_name Name of input data."]
#[doc = " @param colformat_result The pointer to the color format used for input blob creation."]
#[doc = " @reutrn Status code of the operation: OK(0) for success."]
pub fn ie_network_get_color_format(
network: *const ie_network_t,
input_name: *const ::std::os::raw::c_char,
colformat_result: *mut colorformat_e,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Changes the color format of the input data."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to ie_network_t instance."]
#[doc = " @param input_name Name of input data."]
#[doc = " @param color_format Color format of the input data."]
#[doc = " @reutrn Status code of the operation: OK(0) for success."]
pub fn ie_network_set_color_format(
network: *mut ie_network_t,
input_name: *const ::std::os::raw::c_char,
color_format: colorformat_e,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Helper method collect all input shapes with input names of corresponding input data."]
#[doc = " Use the ie_network_input_shapes_free() method to free memory."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to the instance of the ie_network_t to get input shapes."]
#[doc = " @param shapes A pointer to the input_shapes."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_get_input_shapes(
network: *mut ie_network_t,
shapes: *mut input_shapes_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Run shape inference with new input shapes for the network."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to the instance of the ie_network_t to reshape."]
#[doc = " @param shapes A new input shapes to set for the network."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_reshape(network: *mut ie_network_t, shapes: input_shapes_t) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets number of output for the network."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to the instance of the ie_network_t to get number of ouput information."]
#[doc = " @param size_result A number of the network's output information."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_get_outputs_number(
network: *const ie_network_t,
size_result: *mut size_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets name corresponding to the \"number\". Use the ie_network_name_free() method to free memory."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to theinstance of the ie_network_t to get output information."]
#[doc = " @param number An id of output information ."]
#[doc = " @param name Output name corresponding to the number."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_get_output_name(
network: *const ie_network_t,
number: size_t,
name: *mut *mut ::std::os::raw::c_char,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets a precision of the output data named \"output_name\"."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to ie_network_t instance."]
#[doc = " @param output_name Name of output data."]
#[doc = " @param prec_result A pointer to the precision used for output blob creation."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_get_output_precision(
network: *const ie_network_t,
output_name: *const ::std::os::raw::c_char,
prec_result: *mut precision_e,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Changes the precision of the output data named \"output_name\"."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to ie_network_t instance."]
#[doc = " @param output_name Name of output data."]
#[doc = " @param p A new precision of the output data to set (eg. precision_e.FP16)."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_set_output_precision(
network: *mut ie_network_t,
output_name: *const ::std::os::raw::c_char,
p: precision_e,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets a layout of the output data."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to ie_network_t instance."]
#[doc = " @param output_name Name of output data."]
#[doc = " @param layout_result A pointer to the layout used for output blob creation."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_get_output_layout(
network: *const ie_network_t,
output_name: *const ::std::os::raw::c_char,
layout_result: *mut layout_e,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Changes the layout of the output data named \"output_name\"."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to ie_network_t instance."]
#[doc = " @param output_name Name of output data."]
#[doc = " @param l A new layout of the output data to set."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_set_output_layout(
network: *mut ie_network_t,
output_name: *const ::std::os::raw::c_char,
l: layout_e,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets dimensions/shape of the output data with reversed order."]
#[doc = " @ingroup Network"]
#[doc = " @param network A pointer to ie_network_t instance."]
#[doc = " @param output_name Name of output data."]
#[doc = " @param dims_result A pointer to the dimensions used for output blob creation."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_network_get_output_dims(
network: *const ie_network_t,
output_name: *const ::std::os::raw::c_char,
dims_result: *mut dimensions_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Releases memory occupied by input_shapes."]
#[doc = " @ingroup Network"]
#[doc = " @param inputShapes A pointer to the input_shapes to free memory."]
pub fn ie_network_input_shapes_free(inputShapes: *mut input_shapes_t);
}
extern "C" {
#[doc = " @brief Releases momory occupied by input_name or output_name."]
#[doc = " @ingroup Network"]
#[doc = " @param name A pointer to the input_name or output_name to free memory."]
pub fn ie_network_name_free(name: *mut *mut ::std::os::raw::c_char);
}
extern "C" {
#[doc = " @brief Creates a blob with the specified dimensions, layout and to allocate memory."]
#[doc = " @ingroup Blob"]
#[doc = " @param tensorDesc Tensor descriptor for Blob creation."]
#[doc = " @param blob A pointer to the newly created blob."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_blob_make_memory(
tensorDesc: *const tensor_desc_t,
blob: *mut *mut ie_blob_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Creates a blob with the given tensor descriptor from the pointer to the pre-allocated memory."]
#[doc = " @ingroup Blob"]
#[doc = " @param tensorDesc Tensor descriptor for Blob creation."]
#[doc = " @param ptr Pointer to the pre-allocated memory."]
#[doc = " @param size Length of the pre-allocated array."]
#[doc = " @param blob A pointer to the newly created blob."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_blob_make_memory_from_preallocated(
tensorDesc: *const tensor_desc_t,
ptr: *mut ::std::os::raw::c_void,
size: size_t,
blob: *mut *mut ie_blob_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Creates a blob describing given roi_t instance based on the given blob with pre-allocated memory."]
#[doc = " @ingroup Blob"]
#[doc = " @param inputBlob original blob with pre-allocated memory."]
#[doc = " @param roi A roi_tinstance inside of the original blob."]
#[doc = " @param blob A pointer to the newly created blob."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_blob_make_memory_with_roi(
inputBlob: *const ie_blob_t,
roi: *const roi_t,
blob: *mut *mut ie_blob_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Creates a NV12 blob from two planes Y and UV."]
#[doc = " @ingroup Blob"]
#[doc = " @param y A pointer to the ie_blob_t instance that represents Y plane in NV12 color format."]
#[doc = " @param uv A pointer to the ie_blob_t instance that represents UV plane in NV12 color format."]
#[doc = " @param nv12Blob A pointer to the newly created blob."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_blob_make_memory_nv12(
y: *const ie_blob_t,
uv: *const ie_blob_t,
nv12Blob: *mut *mut ie_blob_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Creates I420 blob from three planes Y, U and V."]
#[doc = " @ingroup Blob"]
#[doc = " @param y A pointer to the ie_blob_t instance that represents Y plane in I420 color format."]
#[doc = " @param u A pointer to the ie_blob_t instance that represents U plane in I420 color format."]
#[doc = " @param v A pointer to the ie_blob_t instance that represents V plane in I420 color format."]
#[doc = " @param i420Blob A pointer to the newly created blob."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_blob_make_memory_i420(
y: *const ie_blob_t,
u: *const ie_blob_t,
v: *const ie_blob_t,
i420Blob: *mut *mut ie_blob_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets the total number of elements, which is a product of all the dimensions."]
#[doc = " @ingroup Blob"]
#[doc = " @param blob A pointer to the blob."]
#[doc = " @param size_result The total number of elements."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_blob_size(
blob: *mut ie_blob_t,
size_result: *mut ::std::os::raw::c_int,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets the size of the current Blob in bytes."]
#[doc = " @ingroup Blob"]
#[doc = " @param blob A pointer to the blob."]
#[doc = " @param bsize_result The size of the current blob in bytes."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_blob_byte_size(
blob: *mut ie_blob_t,
bsize_result: *mut ::std::os::raw::c_int,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Releases previously allocated data"]
#[doc = " @ingroup Blob"]
#[doc = " @param blob A pointer to the blob to free memory."]
pub fn ie_blob_deallocate(blob: *mut *mut ie_blob_t);
}
extern "C" {
#[doc = " @brief Gets access to the allocated memory ."]
#[doc = " @ingroup Blob"]
#[doc = " @param blob A pointer to the blob."]
#[doc = " @param blob_buffer A pointer to the copied data from the given blob."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_blob_get_buffer(
blob: *const ie_blob_t,
blob_buffer: *mut ie_blob_buffer_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets read-only access to the allocated memory."]
#[doc = " @ingroup Blob"]
#[doc = " @param blob A pointer to the blob."]
#[doc = " @param blob_cbuffer A pointer to the coped data from the given pointer to the blob and the data is read-only."]
#[doc = " @return Status code of the operation: OK(0) for success"]
pub fn ie_blob_get_cbuffer(
blob: *const ie_blob_t,
blob_cbuffer: *mut ie_blob_buffer_t,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets dimensions of blob's tensor."]
#[doc = " @ingroup Blob"]
#[doc = " @param blob A pointer to the blob."]
#[doc = " @param dims_result A pointer to the dimensions of blob's tensor."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_blob_get_dims(blob: *const ie_blob_t, dims_result: *mut dimensions_t)
-> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets layout of blob's tensor."]
#[doc = " @ingroup Blob"]
#[doc = " @param blob A pointer to the blob."]
#[doc = " @param layout_result A pointer to the layout of blob's tensor."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_blob_get_layout(blob: *const ie_blob_t, layout_result: *mut layout_e)
-> IEStatusCode;
}
extern "C" {
#[doc = " @brief Gets precision of blob's tensor."]
#[doc = " @ingroup Blob"]
#[doc = " @param blob A pointer to the blob."]
#[doc = " @param prec_result A pointer to the precision of blob's tensor."]
#[doc = " @return Status code of the operation: OK(0) for success."]
pub fn ie_blob_get_precision(
blob: *const ie_blob_t,
prec_result: *mut precision_e,
) -> IEStatusCode;
}
extern "C" {
#[doc = " @Releases the memory occupied by the ie_blob_t pointer."]
#[doc = " @ingroup Blob"]
#[doc = " @param blob A pointer to the blob pointer to release memory."]
pub fn ie_blob_free(blob: *mut *mut ie_blob_t);
}
pub type __builtin_va_list = [__va_list_tag; 1usize];
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __va_list_tag {
pub gp_offset: ::std::os::raw::c_uint,
pub fp_offset: ::std::os::raw::c_uint,
pub overflow_arg_area: *mut ::std::os::raw::c_void,
pub reg_save_area: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout___va_list_tag() {
assert_eq!(
::std::mem::size_of::<__va_list_tag>(),
24usize,
concat!("Size of: ", stringify!(__va_list_tag))
);
assert_eq!(
::std::mem::align_of::<__va_list_tag>(),
8usize,
concat!("Alignment of ", stringify!(__va_list_tag))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__va_list_tag>())).gp_offset as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__va_list_tag),
"::",
stringify!(gp_offset)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__va_list_tag>())).fp_offset as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(__va_list_tag),
"::",
stringify!(fp_offset)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__va_list_tag>())).overflow_arg_area as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(__va_list_tag),
"::",
stringify!(overflow_arg_area)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__va_list_tag>())).reg_save_area as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(__va_list_tag),
"::",
stringify!(reg_save_area)
)
);
}