#[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]
fn extract_bit(byte: u8, index: usize) -> bool {
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 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];
Self::extract_bit(byte, index)
}
#[inline]
pub unsafe fn raw_get_bit(this: *const Self, index: usize) -> bool {
debug_assert!(index / 8 < core::mem::size_of::<Storage>());
let byte_index = index / 8;
let byte = *(core::ptr::addr_of!((*this).storage) as *const u8).offset(byte_index as isize);
Self::extract_bit(byte, index)
}
#[inline]
fn change_bit(byte: u8, index: usize, val: bool) -> u8 {
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 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];
*byte = Self::change_bit(*byte, index, val);
}
#[inline]
pub unsafe fn raw_set_bit(this: *mut Self, index: usize, val: bool) {
debug_assert!(index / 8 < core::mem::size_of::<Storage>());
let byte_index = index / 8;
let byte =
(core::ptr::addr_of_mut!((*this).storage) as *mut u8).offset(byte_index as isize);
*byte = Self::change_bit(*byte, index, val);
}
#[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 unsafe fn raw_get(this: *const Self, bit_offset: usize, bit_width: u8) -> u64 {
debug_assert!(bit_width <= 64);
debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::<Storage>());
let mut val = 0;
for i in 0..(bit_width as usize) {
if Self::raw_get_bit(this, 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);
}
}
#[inline]
pub unsafe fn raw_set(this: *mut Self, bit_offset: usize, bit_width: u8, val: u64) {
debug_assert!(bit_width <= 64);
debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::<Storage>());
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::raw_set_bit(this, index + bit_offset, val_bit_is_set);
}
}
}
pub const _STDINT_H: u32 = 1;
pub const _FEATURES_H: u32 = 1;
pub const _DEFAULT_SOURCE: u32 = 1;
pub const __GLIBC_USE_ISOC23: 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 __WORDSIZE: u32 = 64;
pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1;
pub const __SYSCALL_WORDSIZE: u32 = 64;
pub const __TIMESIZE: u32 = 64;
pub const __USE_TIME_BITS64: 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 __GLIBC_USE_C23_STRTOL: u32 = 0;
pub const _STDC_PREDEF_H: u32 = 1;
pub const __STDC_IEC_559__: u32 = 1;
pub const __STDC_IEC_60559_BFP__: u32 = 201404;
pub const __STDC_IEC_559_COMPLEX__: u32 = 1;
pub const __STDC_IEC_60559_COMPLEX__: u32 = 201404;
pub const __STDC_ISO_10646__: u32 = 201706;
pub const __GNU_LIBRARY__: u32 = 6;
pub const __GLIBC__: u32 = 2;
pub const __GLIBC_MINOR__: u32 = 40;
pub const _SYS_CDEFS_H: u32 = 1;
pub const __glibc_c99_flexarr_available: u32 = 1;
pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: 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_C23: u32 = 0;
pub const __GLIBC_USE_IEC_60559_EXT: u32 = 0;
pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0;
pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C23: u32 = 0;
pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0;
pub const _BITS_TYPES_H: u32 = 1;
pub const _BITS_TYPESIZES_H: u32 = 1;
pub const __OFF_T_MATCHES_OFF64_T: u32 = 1;
pub const __INO_T_MATCHES_INO64_T: u32 = 1;
pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1;
pub const __STATFS_MATCHES_STATFS64: u32 = 1;
pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: 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 _BITS_STDINT_LEAST_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 _INTTYPES_H: u32 = 1;
pub const ____gwchar_t_defined: u32 = 1;
pub const __PRI64_PREFIX: &[u8; 2] = b"l\0";
pub const __PRIPTR_PREFIX: &[u8; 2] = b"l\0";
pub const PRId8: &[u8; 2] = b"d\0";
pub const PRId16: &[u8; 2] = b"d\0";
pub const PRId32: &[u8; 2] = b"d\0";
pub const PRId64: &[u8; 3] = b"ld\0";
pub const PRIdLEAST8: &[u8; 2] = b"d\0";
pub const PRIdLEAST16: &[u8; 2] = b"d\0";
pub const PRIdLEAST32: &[u8; 2] = b"d\0";
pub const PRIdLEAST64: &[u8; 3] = b"ld\0";
pub const PRIdFAST8: &[u8; 2] = b"d\0";
pub const PRIdFAST16: &[u8; 3] = b"ld\0";
pub const PRIdFAST32: &[u8; 3] = b"ld\0";
pub const PRIdFAST64: &[u8; 3] = b"ld\0";
pub const PRIi8: &[u8; 2] = b"i\0";
pub const PRIi16: &[u8; 2] = b"i\0";
pub const PRIi32: &[u8; 2] = b"i\0";
pub const PRIi64: &[u8; 3] = b"li\0";
pub const PRIiLEAST8: &[u8; 2] = b"i\0";
pub const PRIiLEAST16: &[u8; 2] = b"i\0";
pub const PRIiLEAST32: &[u8; 2] = b"i\0";
pub const PRIiLEAST64: &[u8; 3] = b"li\0";
pub const PRIiFAST8: &[u8; 2] = b"i\0";
pub const PRIiFAST16: &[u8; 3] = b"li\0";
pub const PRIiFAST32: &[u8; 3] = b"li\0";
pub const PRIiFAST64: &[u8; 3] = b"li\0";
pub const PRIo8: &[u8; 2] = b"o\0";
pub const PRIo16: &[u8; 2] = b"o\0";
pub const PRIo32: &[u8; 2] = b"o\0";
pub const PRIo64: &[u8; 3] = b"lo\0";
pub const PRIoLEAST8: &[u8; 2] = b"o\0";
pub const PRIoLEAST16: &[u8; 2] = b"o\0";
pub const PRIoLEAST32: &[u8; 2] = b"o\0";
pub const PRIoLEAST64: &[u8; 3] = b"lo\0";
pub const PRIoFAST8: &[u8; 2] = b"o\0";
pub const PRIoFAST16: &[u8; 3] = b"lo\0";
pub const PRIoFAST32: &[u8; 3] = b"lo\0";
pub const PRIoFAST64: &[u8; 3] = b"lo\0";
pub const PRIu8: &[u8; 2] = b"u\0";
pub const PRIu16: &[u8; 2] = b"u\0";
pub const PRIu32: &[u8; 2] = b"u\0";
pub const PRIu64: &[u8; 3] = b"lu\0";
pub const PRIuLEAST8: &[u8; 2] = b"u\0";
pub const PRIuLEAST16: &[u8; 2] = b"u\0";
pub const PRIuLEAST32: &[u8; 2] = b"u\0";
pub const PRIuLEAST64: &[u8; 3] = b"lu\0";
pub const PRIuFAST8: &[u8; 2] = b"u\0";
pub const PRIuFAST16: &[u8; 3] = b"lu\0";
pub const PRIuFAST32: &[u8; 3] = b"lu\0";
pub const PRIuFAST64: &[u8; 3] = b"lu\0";
pub const PRIx8: &[u8; 2] = b"x\0";
pub const PRIx16: &[u8; 2] = b"x\0";
pub const PRIx32: &[u8; 2] = b"x\0";
pub const PRIx64: &[u8; 3] = b"lx\0";
pub const PRIxLEAST8: &[u8; 2] = b"x\0";
pub const PRIxLEAST16: &[u8; 2] = b"x\0";
pub const PRIxLEAST32: &[u8; 2] = b"x\0";
pub const PRIxLEAST64: &[u8; 3] = b"lx\0";
pub const PRIxFAST8: &[u8; 2] = b"x\0";
pub const PRIxFAST16: &[u8; 3] = b"lx\0";
pub const PRIxFAST32: &[u8; 3] = b"lx\0";
pub const PRIxFAST64: &[u8; 3] = b"lx\0";
pub const PRIX8: &[u8; 2] = b"X\0";
pub const PRIX16: &[u8; 2] = b"X\0";
pub const PRIX32: &[u8; 2] = b"X\0";
pub const PRIX64: &[u8; 3] = b"lX\0";
pub const PRIXLEAST8: &[u8; 2] = b"X\0";
pub const PRIXLEAST16: &[u8; 2] = b"X\0";
pub const PRIXLEAST32: &[u8; 2] = b"X\0";
pub const PRIXLEAST64: &[u8; 3] = b"lX\0";
pub const PRIXFAST8: &[u8; 2] = b"X\0";
pub const PRIXFAST16: &[u8; 3] = b"lX\0";
pub const PRIXFAST32: &[u8; 3] = b"lX\0";
pub const PRIXFAST64: &[u8; 3] = b"lX\0";
pub const PRIdMAX: &[u8; 3] = b"ld\0";
pub const PRIiMAX: &[u8; 3] = b"li\0";
pub const PRIoMAX: &[u8; 3] = b"lo\0";
pub const PRIuMAX: &[u8; 3] = b"lu\0";
pub const PRIxMAX: &[u8; 3] = b"lx\0";
pub const PRIXMAX: &[u8; 3] = b"lX\0";
pub const PRIdPTR: &[u8; 3] = b"ld\0";
pub const PRIiPTR: &[u8; 3] = b"li\0";
pub const PRIoPTR: &[u8; 3] = b"lo\0";
pub const PRIuPTR: &[u8; 3] = b"lu\0";
pub const PRIxPTR: &[u8; 3] = b"lx\0";
pub const PRIXPTR: &[u8; 3] = b"lX\0";
pub const SCNd8: &[u8; 4] = b"hhd\0";
pub const SCNd16: &[u8; 3] = b"hd\0";
pub const SCNd32: &[u8; 2] = b"d\0";
pub const SCNd64: &[u8; 3] = b"ld\0";
pub const SCNdLEAST8: &[u8; 4] = b"hhd\0";
pub const SCNdLEAST16: &[u8; 3] = b"hd\0";
pub const SCNdLEAST32: &[u8; 2] = b"d\0";
pub const SCNdLEAST64: &[u8; 3] = b"ld\0";
pub const SCNdFAST8: &[u8; 4] = b"hhd\0";
pub const SCNdFAST16: &[u8; 3] = b"ld\0";
pub const SCNdFAST32: &[u8; 3] = b"ld\0";
pub const SCNdFAST64: &[u8; 3] = b"ld\0";
pub const SCNi8: &[u8; 4] = b"hhi\0";
pub const SCNi16: &[u8; 3] = b"hi\0";
pub const SCNi32: &[u8; 2] = b"i\0";
pub const SCNi64: &[u8; 3] = b"li\0";
pub const SCNiLEAST8: &[u8; 4] = b"hhi\0";
pub const SCNiLEAST16: &[u8; 3] = b"hi\0";
pub const SCNiLEAST32: &[u8; 2] = b"i\0";
pub const SCNiLEAST64: &[u8; 3] = b"li\0";
pub const SCNiFAST8: &[u8; 4] = b"hhi\0";
pub const SCNiFAST16: &[u8; 3] = b"li\0";
pub const SCNiFAST32: &[u8; 3] = b"li\0";
pub const SCNiFAST64: &[u8; 3] = b"li\0";
pub const SCNu8: &[u8; 4] = b"hhu\0";
pub const SCNu16: &[u8; 3] = b"hu\0";
pub const SCNu32: &[u8; 2] = b"u\0";
pub const SCNu64: &[u8; 3] = b"lu\0";
pub const SCNuLEAST8: &[u8; 4] = b"hhu\0";
pub const SCNuLEAST16: &[u8; 3] = b"hu\0";
pub const SCNuLEAST32: &[u8; 2] = b"u\0";
pub const SCNuLEAST64: &[u8; 3] = b"lu\0";
pub const SCNuFAST8: &[u8; 4] = b"hhu\0";
pub const SCNuFAST16: &[u8; 3] = b"lu\0";
pub const SCNuFAST32: &[u8; 3] = b"lu\0";
pub const SCNuFAST64: &[u8; 3] = b"lu\0";
pub const SCNo8: &[u8; 4] = b"hho\0";
pub const SCNo16: &[u8; 3] = b"ho\0";
pub const SCNo32: &[u8; 2] = b"o\0";
pub const SCNo64: &[u8; 3] = b"lo\0";
pub const SCNoLEAST8: &[u8; 4] = b"hho\0";
pub const SCNoLEAST16: &[u8; 3] = b"ho\0";
pub const SCNoLEAST32: &[u8; 2] = b"o\0";
pub const SCNoLEAST64: &[u8; 3] = b"lo\0";
pub const SCNoFAST8: &[u8; 4] = b"hho\0";
pub const SCNoFAST16: &[u8; 3] = b"lo\0";
pub const SCNoFAST32: &[u8; 3] = b"lo\0";
pub const SCNoFAST64: &[u8; 3] = b"lo\0";
pub const SCNx8: &[u8; 4] = b"hhx\0";
pub const SCNx16: &[u8; 3] = b"hx\0";
pub const SCNx32: &[u8; 2] = b"x\0";
pub const SCNx64: &[u8; 3] = b"lx\0";
pub const SCNxLEAST8: &[u8; 4] = b"hhx\0";
pub const SCNxLEAST16: &[u8; 3] = b"hx\0";
pub const SCNxLEAST32: &[u8; 2] = b"x\0";
pub const SCNxLEAST64: &[u8; 3] = b"lx\0";
pub const SCNxFAST8: &[u8; 4] = b"hhx\0";
pub const SCNxFAST16: &[u8; 3] = b"lx\0";
pub const SCNxFAST32: &[u8; 3] = b"lx\0";
pub const SCNxFAST64: &[u8; 3] = b"lx\0";
pub const SCNdMAX: &[u8; 3] = b"ld\0";
pub const SCNiMAX: &[u8; 3] = b"li\0";
pub const SCNoMAX: &[u8; 3] = b"lo\0";
pub const SCNuMAX: &[u8; 3] = b"lu\0";
pub const SCNxMAX: &[u8; 3] = b"lx\0";
pub const SCNdPTR: &[u8; 3] = b"ld\0";
pub const SCNiPTR: &[u8; 3] = b"li\0";
pub const SCNoPTR: &[u8; 3] = b"lo\0";
pub const SCNuPTR: &[u8; 3] = b"lu\0";
pub const SCNxPTR: &[u8; 3] = b"lx\0";
pub const _STDLIB_H: u32 = 1;
pub const WNOHANG: u32 = 1;
pub const WUNTRACED: u32 = 2;
pub const WSTOPPED: u32 = 2;
pub const WEXITED: u32 = 4;
pub const WCONTINUED: u32 = 8;
pub const WNOWAIT: u32 = 16777216;
pub const __WNOTHREAD: u32 = 536870912;
pub const __WALL: u32 = 1073741824;
pub const __WCLONE: u32 = 2147483648;
pub const __W_CONTINUED: u32 = 65535;
pub const __WCOREFLAG: u32 = 128;
pub const __HAVE_FLOAT128: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT128: u32 = 0;
pub const __HAVE_FLOAT64X: u32 = 1;
pub const __HAVE_FLOAT64X_LONG_DOUBLE: u32 = 1;
pub const __HAVE_FLOAT16: u32 = 0;
pub const __HAVE_FLOAT32: u32 = 1;
pub const __HAVE_FLOAT64: u32 = 1;
pub const __HAVE_FLOAT32X: u32 = 1;
pub const __HAVE_FLOAT128X: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT16: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT32: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT64: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT32X: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT64X: u32 = 0;
pub const __HAVE_DISTINCT_FLOAT128X: u32 = 0;
pub const __HAVE_FLOATN_NOT_TYPEDEF: u32 = 0;
pub const __ldiv_t_defined: u32 = 1;
pub const __lldiv_t_defined: u32 = 1;
pub const RAND_MAX: u32 = 2147483647;
pub const EXIT_FAILURE: u32 = 1;
pub const EXIT_SUCCESS: u32 = 0;
pub const _SYS_TYPES_H: u32 = 1;
pub const __clock_t_defined: u32 = 1;
pub const __clockid_t_defined: u32 = 1;
pub const __time_t_defined: u32 = 1;
pub const __timer_t_defined: u32 = 1;
pub const __BIT_TYPES_DEFINED__: u32 = 1;
pub const _ENDIAN_H: u32 = 1;
pub const _BITS_ENDIAN_H: u32 = 1;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const __BIG_ENDIAN: u32 = 4321;
pub const __PDP_ENDIAN: u32 = 3412;
pub const _BITS_ENDIANNESS_H: u32 = 1;
pub const __BYTE_ORDER: u32 = 1234;
pub const __FLOAT_WORD_ORDER: u32 = 1234;
pub const LITTLE_ENDIAN: u32 = 1234;
pub const BIG_ENDIAN: u32 = 4321;
pub const PDP_ENDIAN: u32 = 3412;
pub const BYTE_ORDER: u32 = 1234;
pub const _BITS_BYTESWAP_H: u32 = 1;
pub const _BITS_UINTN_IDENTITY_H: u32 = 1;
pub const _SYS_SELECT_H: u32 = 1;
pub const __sigset_t_defined: u32 = 1;
pub const __timeval_defined: u32 = 1;
pub const _STRUCT_TIMESPEC: u32 = 1;
pub const FD_SETSIZE: u32 = 1024;
pub const _BITS_PTHREADTYPES_COMMON_H: u32 = 1;
pub const _THREAD_SHARED_TYPES_H: u32 = 1;
pub const _BITS_PTHREADTYPES_ARCH_H: u32 = 1;
pub const __SIZEOF_PTHREAD_MUTEX_T: u32 = 40;
pub const __SIZEOF_PTHREAD_ATTR_T: u32 = 56;
pub const __SIZEOF_PTHREAD_RWLOCK_T: u32 = 56;
pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32;
pub const __SIZEOF_PTHREAD_MUTEXATTR_T: u32 = 4;
pub const __SIZEOF_PTHREAD_COND_T: u32 = 48;
pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 4;
pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8;
pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 4;
pub const _THREAD_MUTEX_INTERNAL_H: u32 = 1;
pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1;
pub const __have_pthread_attr_t: u32 = 1;
pub const _ALLOCA_H: u32 = 1;
pub const _STRING_H: u32 = 1;
pub const _BITS_TYPES_LOCALE_T_H: u32 = 1;
pub const _BITS_TYPES___LOCALE_T_H: u32 = 1;
pub const _STRINGS_H: u32 = 1;
pub const _STDIO_H: 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 __cookie_io_functions_t_defined: u32 = 1;
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: &[u8; 5] = b"/tmp\0";
pub const L_tmpnam: u32 = 20;
pub const TMP_MAX: u32 = 238328;
pub const _BITS_STDIO_LIM_H: u32 = 1;
pub const FILENAME_MAX: u32 = 4096;
pub const L_ctermid: u32 = 9;
pub const FOPEN_MAX: u32 = 16;
pub const _LIBC_LIMITS_H_: u32 = 1;
pub const MB_LEN_MAX: u32 = 16;
pub const _BITS_POSIX1_LIM_H: u32 = 1;
pub const _POSIX_AIO_LISTIO_MAX: u32 = 2;
pub const _POSIX_AIO_MAX: u32 = 1;
pub const _POSIX_ARG_MAX: u32 = 4096;
pub const _POSIX_CHILD_MAX: u32 = 25;
pub const _POSIX_DELAYTIMER_MAX: u32 = 32;
pub const _POSIX_HOST_NAME_MAX: u32 = 255;
pub const _POSIX_LINK_MAX: u32 = 8;
pub const _POSIX_LOGIN_NAME_MAX: u32 = 9;
pub const _POSIX_MAX_CANON: u32 = 255;
pub const _POSIX_MAX_INPUT: u32 = 255;
pub const _POSIX_MQ_OPEN_MAX: u32 = 8;
pub const _POSIX_MQ_PRIO_MAX: u32 = 32;
pub const _POSIX_NAME_MAX: u32 = 14;
pub const _POSIX_NGROUPS_MAX: u32 = 8;
pub const _POSIX_OPEN_MAX: u32 = 20;
pub const _POSIX_PATH_MAX: u32 = 256;
pub const _POSIX_PIPE_BUF: u32 = 512;
pub const _POSIX_RE_DUP_MAX: u32 = 255;
pub const _POSIX_RTSIG_MAX: u32 = 8;
pub const _POSIX_SEM_NSEMS_MAX: u32 = 256;
pub const _POSIX_SEM_VALUE_MAX: u32 = 32767;
pub const _POSIX_SIGQUEUE_MAX: u32 = 32;
pub const _POSIX_SSIZE_MAX: u32 = 32767;
pub const _POSIX_STREAM_MAX: u32 = 8;
pub const _POSIX_SYMLINK_MAX: u32 = 255;
pub const _POSIX_SYMLOOP_MAX: u32 = 8;
pub const _POSIX_TIMER_MAX: u32 = 32;
pub const _POSIX_TTY_NAME_MAX: u32 = 9;
pub const _POSIX_TZNAME_MAX: u32 = 6;
pub const _POSIX_CLOCKRES_MIN: u32 = 20000000;
pub const NR_OPEN: u32 = 1024;
pub const NGROUPS_MAX: u32 = 65536;
pub const ARG_MAX: u32 = 131072;
pub const LINK_MAX: u32 = 127;
pub const MAX_CANON: u32 = 255;
pub const MAX_INPUT: u32 = 255;
pub const NAME_MAX: u32 = 255;
pub const PATH_MAX: u32 = 4096;
pub const PIPE_BUF: u32 = 4096;
pub const XATTR_NAME_MAX: u32 = 255;
pub const XATTR_SIZE_MAX: u32 = 65536;
pub const XATTR_LIST_MAX: u32 = 65536;
pub const RTSIG_MAX: u32 = 32;
pub const _POSIX_THREAD_KEYS_MAX: u32 = 128;
pub const PTHREAD_KEYS_MAX: u32 = 1024;
pub const _POSIX_THREAD_DESTRUCTOR_ITERATIONS: u32 = 4;
pub const PTHREAD_DESTRUCTOR_ITERATIONS: u32 = 4;
pub const _POSIX_THREAD_THREADS_MAX: u32 = 64;
pub const AIO_PRIO_DELTA_MAX: u32 = 20;
pub const PTHREAD_STACK_MIN: u32 = 16384;
pub const DELAYTIMER_MAX: u32 = 2147483647;
pub const TTY_NAME_MAX: u32 = 32;
pub const LOGIN_NAME_MAX: u32 = 256;
pub const HOST_NAME_MAX: u32 = 64;
pub const MQ_PRIO_MAX: u32 = 32768;
pub const SEM_VALUE_MAX: u32 = 2147483647;
pub const _BITS_POSIX2_LIM_H: u32 = 1;
pub const _POSIX2_BC_BASE_MAX: u32 = 99;
pub const _POSIX2_BC_DIM_MAX: u32 = 2048;
pub const _POSIX2_BC_SCALE_MAX: u32 = 99;
pub const _POSIX2_BC_STRING_MAX: u32 = 1000;
pub const _POSIX2_COLL_WEIGHTS_MAX: u32 = 2;
pub const _POSIX2_EXPR_NEST_MAX: u32 = 32;
pub const _POSIX2_LINE_MAX: u32 = 2048;
pub const _POSIX2_RE_DUP_MAX: u32 = 255;
pub const _POSIX2_CHARCLASS_NAME_MAX: u32 = 14;
pub const BC_BASE_MAX: u32 = 99;
pub const BC_DIM_MAX: u32 = 2048;
pub const BC_SCALE_MAX: u32 = 99;
pub const BC_STRING_MAX: u32 = 1000;
pub const COLL_WEIGHTS_MAX: u32 = 255;
pub const EXPR_NEST_MAX: u32 = 32;
pub const LINE_MAX: u32 = 2048;
pub const CHARCLASS_NAME_MAX: u32 = 2048;
pub const RE_DUP_MAX: u32 = 32767;
pub const _ERRNO_H: u32 = 1;
pub const _BITS_ERRNO_H: u32 = 1;
pub const EPERM: u32 = 1;
pub const ENOENT: u32 = 2;
pub const ESRCH: u32 = 3;
pub const EINTR: u32 = 4;
pub const EIO: u32 = 5;
pub const ENXIO: u32 = 6;
pub const E2BIG: u32 = 7;
pub const ENOEXEC: u32 = 8;
pub const EBADF: u32 = 9;
pub const ECHILD: u32 = 10;
pub const EAGAIN: u32 = 11;
pub const ENOMEM: u32 = 12;
pub const EACCES: u32 = 13;
pub const EFAULT: u32 = 14;
pub const ENOTBLK: u32 = 15;
pub const EBUSY: u32 = 16;
pub const EEXIST: u32 = 17;
pub const EXDEV: u32 = 18;
pub const ENODEV: u32 = 19;
pub const ENOTDIR: u32 = 20;
pub const EISDIR: u32 = 21;
pub const EINVAL: u32 = 22;
pub const ENFILE: u32 = 23;
pub const EMFILE: u32 = 24;
pub const ENOTTY: u32 = 25;
pub const ETXTBSY: u32 = 26;
pub const EFBIG: u32 = 27;
pub const ENOSPC: u32 = 28;
pub const ESPIPE: u32 = 29;
pub const EROFS: u32 = 30;
pub const EMLINK: u32 = 31;
pub const EPIPE: u32 = 32;
pub const EDOM: u32 = 33;
pub const ERANGE: u32 = 34;
pub const EDEADLK: u32 = 35;
pub const ENAMETOOLONG: u32 = 36;
pub const ENOLCK: u32 = 37;
pub const ENOSYS: u32 = 38;
pub const ENOTEMPTY: u32 = 39;
pub const ELOOP: u32 = 40;
pub const EWOULDBLOCK: u32 = 11;
pub const ENOMSG: u32 = 42;
pub const EIDRM: u32 = 43;
pub const ECHRNG: u32 = 44;
pub const EL2NSYNC: u32 = 45;
pub const EL3HLT: u32 = 46;
pub const EL3RST: u32 = 47;
pub const ELNRNG: u32 = 48;
pub const EUNATCH: u32 = 49;
pub const ENOCSI: u32 = 50;
pub const EL2HLT: u32 = 51;
pub const EBADE: u32 = 52;
pub const EBADR: u32 = 53;
pub const EXFULL: u32 = 54;
pub const ENOANO: u32 = 55;
pub const EBADRQC: u32 = 56;
pub const EBADSLT: u32 = 57;
pub const EDEADLOCK: u32 = 35;
pub const EBFONT: u32 = 59;
pub const ENOSTR: u32 = 60;
pub const ENODATA: u32 = 61;
pub const ETIME: u32 = 62;
pub const ENOSR: u32 = 63;
pub const ENONET: u32 = 64;
pub const ENOPKG: u32 = 65;
pub const EREMOTE: u32 = 66;
pub const ENOLINK: u32 = 67;
pub const EADV: u32 = 68;
pub const ESRMNT: u32 = 69;
pub const ECOMM: u32 = 70;
pub const EPROTO: u32 = 71;
pub const EMULTIHOP: u32 = 72;
pub const EDOTDOT: u32 = 73;
pub const EBADMSG: u32 = 74;
pub const EOVERFLOW: u32 = 75;
pub const ENOTUNIQ: u32 = 76;
pub const EBADFD: u32 = 77;
pub const EREMCHG: u32 = 78;
pub const ELIBACC: u32 = 79;
pub const ELIBBAD: u32 = 80;
pub const ELIBSCN: u32 = 81;
pub const ELIBMAX: u32 = 82;
pub const ELIBEXEC: u32 = 83;
pub const EILSEQ: u32 = 84;
pub const ERESTART: u32 = 85;
pub const ESTRPIPE: u32 = 86;
pub const EUSERS: u32 = 87;
pub const ENOTSOCK: u32 = 88;
pub const EDESTADDRREQ: u32 = 89;
pub const EMSGSIZE: u32 = 90;
pub const EPROTOTYPE: u32 = 91;
pub const ENOPROTOOPT: u32 = 92;
pub const EPROTONOSUPPORT: u32 = 93;
pub const ESOCKTNOSUPPORT: u32 = 94;
pub const EOPNOTSUPP: u32 = 95;
pub const EPFNOSUPPORT: u32 = 96;
pub const EAFNOSUPPORT: u32 = 97;
pub const EADDRINUSE: u32 = 98;
pub const EADDRNOTAVAIL: u32 = 99;
pub const ENETDOWN: u32 = 100;
pub const ENETUNREACH: u32 = 101;
pub const ENETRESET: u32 = 102;
pub const ECONNABORTED: u32 = 103;
pub const ECONNRESET: u32 = 104;
pub const ENOBUFS: u32 = 105;
pub const EISCONN: u32 = 106;
pub const ENOTCONN: u32 = 107;
pub const ESHUTDOWN: u32 = 108;
pub const ETOOMANYREFS: u32 = 109;
pub const ETIMEDOUT: u32 = 110;
pub const ECONNREFUSED: u32 = 111;
pub const EHOSTDOWN: u32 = 112;
pub const EHOSTUNREACH: u32 = 113;
pub const EALREADY: u32 = 114;
pub const EINPROGRESS: u32 = 115;
pub const ESTALE: u32 = 116;
pub const EUCLEAN: u32 = 117;
pub const ENOTNAM: u32 = 118;
pub const ENAVAIL: u32 = 119;
pub const EISNAM: u32 = 120;
pub const EREMOTEIO: u32 = 121;
pub const EDQUOT: u32 = 122;
pub const ENOMEDIUM: u32 = 123;
pub const EMEDIUMTYPE: u32 = 124;
pub const ECANCELED: u32 = 125;
pub const ENOKEY: u32 = 126;
pub const EKEYEXPIRED: u32 = 127;
pub const EKEYREVOKED: u32 = 128;
pub const EKEYREJECTED: u32 = 129;
pub const EOWNERDEAD: u32 = 130;
pub const ENOTRECOVERABLE: u32 = 131;
pub const ERFKILL: u32 = 132;
pub const EHWPOISON: u32 = 133;
pub const ENOTSUP: u32 = 95;
pub const HAVE___BUILTIN_CLZ: u32 = 1;
pub const HTS_PATH_SEPARATOR_CHAR: u8 = 58u8;
pub const HTS_PATH_SEPARATOR_STR: &[u8; 2] = b":\0";
pub const HTS_RESIZE_CLEAR: u32 = 1;
pub const HTS_IDX_DELIM: &[u8; 8] = b"##idx##\0";
pub const HTS_VERSION: u32 = 101901;
pub const HTS_FEATURE_CONFIGURE: u32 = 1;
pub const HTS_FEATURE_PLUGINS: u32 = 2;
pub const HTS_FEATURE_LIBCURL: u32 = 1024;
pub const HTS_FEATURE_S3: u32 = 2048;
pub const HTS_FEATURE_GCS: u32 = 4096;
pub const HTS_FEATURE_LIBDEFLATE: u32 = 1048576;
pub const HTS_FEATURE_LZMA: u32 = 2097152;
pub const HTS_FEATURE_BZIP2: u32 = 4194304;
pub const HTS_FEATURE_HTSCODECS: u32 = 8388608;
pub const HTS_FEATURE_CC: u32 = 134217728;
pub const HTS_FEATURE_CFLAGS: u32 = 268435456;
pub const HTS_FEATURE_CPPFLAGS: u32 = 536870912;
pub const HTS_FEATURE_LDFLAGS: u32 = 1073741824;
pub const HTS_IDX_NOCOOR: i32 = -2;
pub const HTS_IDX_START: i32 = -3;
pub const HTS_IDX_REST: i32 = -4;
pub const HTS_IDX_NONE: i32 = -5;
pub const HTS_FMT_CSI: u32 = 0;
pub const HTS_FMT_BAI: u32 = 1;
pub const HTS_FMT_TBI: u32 = 2;
pub const HTS_FMT_CRAI: u32 = 3;
pub const HTS_FMT_FAI: u32 = 4;
pub const PRIhts_pos: &[u8; 3] = b"ld\0";
pub const HTS_IDX_SAVE_REMOTE: u32 = 1;
pub const HTS_IDX_SILENT_FAIL: u32 = 2;
pub const HTS_PARSE_THOUSANDS_SEP: u32 = 1;
pub const HTS_PARSE_ONE_COORD: u32 = 2;
pub const HTS_PARSE_LIST: u32 = 4;
pub const FT_UNKN: u32 = 0;
pub const FT_GZ: u32 = 1;
pub const FT_VCF: u32 = 2;
pub const FT_VCF_GZ: u32 = 3;
pub const FT_BCF: u32 = 4;
pub const FT_BCF_GZ: u32 = 5;
pub const FT_STDIN: u32 = 8;
pub const HTS_ALLOW_UNALIGNED: u32 = 1;
pub const _ASSERT_H: u32 = 1;
pub const BCF_HL_FLT: u32 = 0;
pub const BCF_HL_INFO: u32 = 1;
pub const BCF_HL_FMT: u32 = 2;
pub const BCF_HL_CTG: u32 = 3;
pub const BCF_HL_STR: u32 = 4;
pub const BCF_HL_GEN: u32 = 5;
pub const BCF_HT_FLAG: u32 = 0;
pub const BCF_HT_INT: u32 = 1;
pub const BCF_HT_REAL: u32 = 2;
pub const BCF_HT_STR: u32 = 3;
pub const BCF_HT_LONG: u32 = 257;
pub const BCF_VL_FIXED: u32 = 0;
pub const BCF_VL_VAR: u32 = 1;
pub const BCF_VL_A: u32 = 2;
pub const BCF_VL_G: u32 = 3;
pub const BCF_VL_R: u32 = 4;
pub const BCF_DT_ID: u32 = 0;
pub const BCF_DT_CTG: u32 = 1;
pub const BCF_DT_SAMPLE: u32 = 2;
pub const BCF_BT_NULL: u32 = 0;
pub const BCF_BT_INT8: u32 = 1;
pub const BCF_BT_INT16: u32 = 2;
pub const BCF_BT_INT32: u32 = 3;
pub const BCF_BT_INT64: u32 = 4;
pub const BCF_BT_FLOAT: u32 = 5;
pub const BCF_BT_CHAR: u32 = 7;
pub const VCF_REF: u32 = 0;
pub const VCF_SNP: u32 = 1;
pub const VCF_MNP: u32 = 2;
pub const VCF_INDEL: u32 = 4;
pub const VCF_OTHER: u32 = 8;
pub const VCF_BND: u32 = 16;
pub const VCF_OVERLAP: u32 = 32;
pub const VCF_INS: u32 = 64;
pub const VCF_DEL: u32 = 128;
pub const VCF_ANY: u32 = 255;
pub const BCF1_DIRTY_ID: u32 = 1;
pub const BCF1_DIRTY_ALS: u32 = 2;
pub const BCF1_DIRTY_FLT: u32 = 4;
pub const BCF1_DIRTY_INF: u32 = 8;
pub const BCF_ERR_CTG_UNDEF: u32 = 1;
pub const BCF_ERR_TAG_UNDEF: u32 = 2;
pub const BCF_ERR_NCOLS: u32 = 4;
pub const BCF_ERR_LIMITS: u32 = 8;
pub const BCF_ERR_CHAR: u32 = 16;
pub const BCF_ERR_CTG_INVALID: u32 = 32;
pub const BCF_ERR_TAG_INVALID: u32 = 64;
pub const BCF_UN_STR: u32 = 1;
pub const BCF_UN_FLT: u32 = 2;
pub const BCF_UN_INFO: u32 = 4;
pub const BCF_UN_SHR: u32 = 7;
pub const BCF_UN_FMT: u32 = 8;
pub const BCF_UN_IND: u32 = 8;
pub const BCF_UN_ALL: u32 = 15;
pub const bcf_gt_missing: u32 = 0;
pub const bcf_int8_vector_end: i32 = -127;
pub const bcf_int16_vector_end: i32 = -32767;
pub const bcf_int32_vector_end: i32 = -2147483647;
pub const bcf_int64_vector_end: i64 = -9223372036854775807;
pub const bcf_str_vector_end: u32 = 0;
pub const bcf_int8_missing: i32 = -128;
pub const bcf_int16_missing: i32 = -32768;
pub const bcf_int32_missing: i32 = -2147483648;
pub const bcf_int64_missing: i64 = -9223372036854775808;
pub const bcf_str_missing: u32 = 7;
pub const BCF_MAX_BT_INT8: u32 = 127;
pub const BCF_MAX_BT_INT16: u32 = 32767;
pub const BCF_MAX_BT_INT32: u32 = 2147483647;
pub const BCF_MIN_BT_INT8: i32 = -120;
pub const BCF_MIN_BT_INT16: i32 = -32760;
pub const BCF_MIN_BT_INT32: i32 = -2147483640;
pub const SAM_FORMAT_VERSION: &[u8; 4] = b"1.6\0";
pub const BAM_CMATCH: u32 = 0;
pub const BAM_CINS: u32 = 1;
pub const BAM_CDEL: u32 = 2;
pub const BAM_CREF_SKIP: u32 = 3;
pub const BAM_CSOFT_CLIP: u32 = 4;
pub const BAM_CHARD_CLIP: u32 = 5;
pub const BAM_CPAD: u32 = 6;
pub const BAM_CEQUAL: u32 = 7;
pub const BAM_CDIFF: u32 = 8;
pub const BAM_CBACK: u32 = 9;
pub const BAM_CIGAR_STR: &[u8; 11] = b"MIDNSHP=XB\0";
pub const BAM_CIGAR_SHIFT: u32 = 4;
pub const BAM_CIGAR_MASK: u32 = 15;
pub const BAM_CIGAR_TYPE: u32 = 246183;
pub const BAM_FPAIRED: u32 = 1;
pub const BAM_FPROPER_PAIR: u32 = 2;
pub const BAM_FUNMAP: u32 = 4;
pub const BAM_FMUNMAP: u32 = 8;
pub const BAM_FREVERSE: u32 = 16;
pub const BAM_FMREVERSE: u32 = 32;
pub const BAM_FREAD1: u32 = 64;
pub const BAM_FREAD2: u32 = 128;
pub const BAM_FSECONDARY: u32 = 256;
pub const BAM_FQCFAIL: u32 = 512;
pub const BAM_FDUP: u32 = 1024;
pub const BAM_FSUPPLEMENTARY: u32 = 2048;
pub const BAM_USER_OWNS_STRUCT: u32 = 1;
pub const BAM_USER_OWNS_DATA: u32 = 2;
pub const HTS_MOD_UNKNOWN: i32 = -1;
pub const HTS_MOD_UNCHECKED: i32 = -2;
pub const HTS_MOD_REPORT_UNCHECKED: u32 = 1;
pub const BGZF_BLOCK_SIZE: u32 = 65280;
pub const BGZF_MAX_BLOCK_SIZE: u32 = 65536;
pub const BGZF_ERR_ZLIB: u32 = 1;
pub const BGZF_ERR_HEADER: u32 = 2;
pub const BGZF_ERR_IO: u32 = 4;
pub const BGZF_ERR_MISUSE: u32 = 8;
pub const BGZF_ERR_MT: u32 = 16;
pub const BGZF_ERR_CRC: u32 = 32;
pub const GT_HOM_RR: u32 = 0;
pub const GT_HOM_AA: u32 = 1;
pub const GT_HET_RA: u32 = 2;
pub const GT_HET_AA: u32 = 3;
pub const GT_HAPL_R: u32 = 4;
pub const GT_HAPL_A: u32 = 5;
pub const GT_UNKN: u32 = 6;
pub const TBX_MAX_SHIFT: u32 = 31;
pub const TBX_GENERIC: u32 = 0;
pub const TBX_SAM: u32 = 1;
pub const TBX_VCF: u32 = 2;
pub const TBX_UCSC: u32 = 65536;
pub const COLLAPSE_NONE: u32 = 0;
pub const COLLAPSE_SNPS: u32 = 1;
pub const COLLAPSE_INDELS: u32 = 2;
pub const COLLAPSE_ANY: u32 = 4;
pub const COLLAPSE_SOME: u32 = 8;
pub const COLLAPSE_BOTH: u32 = 3;
pub const BCF_SR_PAIR_SNPS: u32 = 1;
pub const BCF_SR_PAIR_INDELS: u32 = 2;
pub const BCF_SR_PAIR_ANY: u32 = 4;
pub const BCF_SR_PAIR_SOME: u32 = 8;
pub const BCF_SR_PAIR_SNP_REF: u32 = 16;
pub const BCF_SR_PAIR_INDEL_REF: u32 = 32;
pub const BCF_SR_PAIR_EXACT: u32 = 64;
pub const BCF_SR_PAIR_BOTH: u32 = 3;
pub const BCF_SR_PAIR_BOTH_REF: u32 = 51;
pub type wchar_t = ::std::os::raw::c_int;
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],
}
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 __suseconds64_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 __gwchar_t = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct imaxdiv_t {
pub quot: ::std::os::raw::c_long,
pub rem: ::std::os::raw::c_long,
}
unsafe extern "C" {
pub fn imaxabs(__n: intmax_t) -> intmax_t;
}
unsafe extern "C" {
pub fn imaxdiv(__numer: intmax_t, __denom: intmax_t) -> imaxdiv_t;
}
unsafe extern "C" {
pub fn strtoimax(
__nptr: *const ::std::os::raw::c_char,
__endptr: *mut *mut ::std::os::raw::c_char,
__base: ::std::os::raw::c_int,
) -> intmax_t;
}
unsafe extern "C" {
pub fn strtoumax(
__nptr: *const ::std::os::raw::c_char,
__endptr: *mut *mut ::std::os::raw::c_char,
__base: ::std::os::raw::c_int,
) -> uintmax_t;
}
unsafe extern "C" {
pub fn wcstoimax(
__nptr: *const __gwchar_t,
__endptr: *mut *mut __gwchar_t,
__base: ::std::os::raw::c_int,
) -> intmax_t;
}
unsafe extern "C" {
pub fn wcstoumax(
__nptr: *const __gwchar_t,
__endptr: *mut *mut __gwchar_t,
__base: ::std::os::raw::c_int,
) -> uintmax_t;
}
pub const htsLogLevel_HTS_LOG_OFF: htsLogLevel = 0;
pub const htsLogLevel_HTS_LOG_ERROR: htsLogLevel = 1;
pub const htsLogLevel_HTS_LOG_WARNING: htsLogLevel = 3;
pub const htsLogLevel_HTS_LOG_INFO: htsLogLevel = 4;
pub const htsLogLevel_HTS_LOG_DEBUG: htsLogLevel = 5;
pub const htsLogLevel_HTS_LOG_TRACE: htsLogLevel = 6;
pub type htsLogLevel = ::std::os::raw::c_uint;
unsafe extern "C" {
pub fn hts_set_log_level(level: htsLogLevel);
}
unsafe extern "C" {
pub fn hts_get_log_level() -> htsLogLevel;
}
unsafe extern "C" {
pub static mut hts_verbose: ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_log(
severity: htsLogLevel,
context: *const ::std::os::raw::c_char,
format: *const ::std::os::raw::c_char,
...
);
}
pub type _Float32 = f32;
pub type _Float64 = f64;
pub type _Float32x = f64;
pub type _Float64x = u128;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct div_t {
pub quot: ::std::os::raw::c_int,
pub rem: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ldiv_t {
pub quot: ::std::os::raw::c_long,
pub rem: ::std::os::raw::c_long,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct lldiv_t {
pub quot: ::std::os::raw::c_longlong,
pub rem: ::std::os::raw::c_longlong,
}
unsafe extern "C" {
pub fn __ctype_get_mb_cur_max() -> usize;
}
unsafe extern "C" {
pub fn atof(__nptr: *const ::std::os::raw::c_char) -> f64;
}
unsafe extern "C" {
pub fn atoi(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn atol(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long;
}
unsafe extern "C" {
pub fn atoll(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_longlong;
}
unsafe extern "C" {
pub fn strtod(
__nptr: *const ::std::os::raw::c_char,
__endptr: *mut *mut ::std::os::raw::c_char,
) -> f64;
}
unsafe extern "C" {
pub fn strtof(
__nptr: *const ::std::os::raw::c_char,
__endptr: *mut *mut ::std::os::raw::c_char,
) -> f32;
}
unsafe extern "C" {
pub fn strtol(
__nptr: *const ::std::os::raw::c_char,
__endptr: *mut *mut ::std::os::raw::c_char,
__base: ::std::os::raw::c_int,
) -> ::std::os::raw::c_long;
}
unsafe extern "C" {
pub fn strtoul(
__nptr: *const ::std::os::raw::c_char,
__endptr: *mut *mut ::std::os::raw::c_char,
__base: ::std::os::raw::c_int,
) -> ::std::os::raw::c_ulong;
}
unsafe extern "C" {
pub fn strtoq(
__nptr: *const ::std::os::raw::c_char,
__endptr: *mut *mut ::std::os::raw::c_char,
__base: ::std::os::raw::c_int,
) -> ::std::os::raw::c_longlong;
}
unsafe extern "C" {
pub fn strtouq(
__nptr: *const ::std::os::raw::c_char,
__endptr: *mut *mut ::std::os::raw::c_char,
__base: ::std::os::raw::c_int,
) -> ::std::os::raw::c_ulonglong;
}
unsafe extern "C" {
pub fn strtoll(
__nptr: *const ::std::os::raw::c_char,
__endptr: *mut *mut ::std::os::raw::c_char,
__base: ::std::os::raw::c_int,
) -> ::std::os::raw::c_longlong;
}
unsafe extern "C" {
pub fn strtoull(
__nptr: *const ::std::os::raw::c_char,
__endptr: *mut *mut ::std::os::raw::c_char,
__base: ::std::os::raw::c_int,
) -> ::std::os::raw::c_ulonglong;
}
unsafe extern "C" {
pub fn l64a(__n: ::std::os::raw::c_long) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn a64l(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long;
}
pub type u_char = __u_char;
pub type u_short = __u_short;
pub type u_int = __u_int;
pub type u_long = __u_long;
pub type quad_t = __quad_t;
pub type u_quad_t = __u_quad_t;
pub type fsid_t = __fsid_t;
pub type loff_t = __loff_t;
pub type ino_t = __ino_t;
pub type dev_t = __dev_t;
pub type gid_t = __gid_t;
pub type mode_t = __mode_t;
pub type nlink_t = __nlink_t;
pub type uid_t = __uid_t;
pub type off_t = __off_t;
pub type pid_t = __pid_t;
pub type id_t = __id_t;
pub type daddr_t = __daddr_t;
pub type caddr_t = __caddr_t;
pub type key_t = __key_t;
pub type clock_t = __clock_t;
pub type clockid_t = __clockid_t;
pub type time_t = __time_t;
pub type timer_t = __timer_t;
pub type ulong = ::std::os::raw::c_ulong;
pub type ushort = ::std::os::raw::c_ushort;
pub type uint = ::std::os::raw::c_uint;
pub type u_int8_t = __uint8_t;
pub type u_int16_t = __uint16_t;
pub type u_int32_t = __uint32_t;
pub type u_int64_t = __uint64_t;
pub type register_t = ::std::os::raw::c_long;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __sigset_t {
pub __val: [::std::os::raw::c_ulong; 16usize],
}
pub type sigset_t = __sigset_t;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct timeval {
pub tv_sec: __time_t,
pub tv_usec: __suseconds_t,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct timespec {
pub tv_sec: __time_t,
pub tv_nsec: __syscall_slong_t,
}
pub type suseconds_t = __suseconds_t;
pub type __fd_mask = ::std::os::raw::c_long;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct fd_set {
pub __fds_bits: [__fd_mask; 16usize],
}
pub type fd_mask = __fd_mask;
unsafe extern "C" {
pub fn select(
__nfds: ::std::os::raw::c_int,
__readfds: *mut fd_set,
__writefds: *mut fd_set,
__exceptfds: *mut fd_set,
__timeout: *mut timeval,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn pselect(
__nfds: ::std::os::raw::c_int,
__readfds: *mut fd_set,
__writefds: *mut fd_set,
__exceptfds: *mut fd_set,
__timeout: *const timespec,
__sigmask: *const __sigset_t,
) -> ::std::os::raw::c_int;
}
pub type blksize_t = __blksize_t;
pub type blkcnt_t = __blkcnt_t;
pub type fsblkcnt_t = __fsblkcnt_t;
pub type fsfilcnt_t = __fsfilcnt_t;
#[repr(C)]
#[derive(Copy, Clone)]
pub union __atomic_wide_counter {
pub __value64: ::std::os::raw::c_ulonglong,
pub __value32: __atomic_wide_counter__bindgen_ty_1,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __atomic_wide_counter__bindgen_ty_1 {
pub __low: ::std::os::raw::c_uint,
pub __high: ::std::os::raw::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __pthread_internal_list {
pub __prev: *mut __pthread_internal_list,
pub __next: *mut __pthread_internal_list,
}
pub type __pthread_list_t = __pthread_internal_list;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __pthread_internal_slist {
pub __next: *mut __pthread_internal_slist,
}
pub type __pthread_slist_t = __pthread_internal_slist;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __pthread_mutex_s {
pub __lock: ::std::os::raw::c_int,
pub __count: ::std::os::raw::c_uint,
pub __owner: ::std::os::raw::c_int,
pub __nusers: ::std::os::raw::c_uint,
pub __kind: ::std::os::raw::c_int,
pub __spins: ::std::os::raw::c_short,
pub __elision: ::std::os::raw::c_short,
pub __list: __pthread_list_t,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __pthread_rwlock_arch_t {
pub __readers: ::std::os::raw::c_uint,
pub __writers: ::std::os::raw::c_uint,
pub __wrphase_futex: ::std::os::raw::c_uint,
pub __writers_futex: ::std::os::raw::c_uint,
pub __pad3: ::std::os::raw::c_uint,
pub __pad4: ::std::os::raw::c_uint,
pub __cur_writer: ::std::os::raw::c_int,
pub __shared: ::std::os::raw::c_int,
pub __rwelision: ::std::os::raw::c_schar,
pub __pad1: [::std::os::raw::c_uchar; 7usize],
pub __pad2: ::std::os::raw::c_ulong,
pub __flags: ::std::os::raw::c_uint,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct __pthread_cond_s {
pub __wseq: __atomic_wide_counter,
pub __g1_start: __atomic_wide_counter,
pub __g_refs: [::std::os::raw::c_uint; 2usize],
pub __g_size: [::std::os::raw::c_uint; 2usize],
pub __g1_orig_size: ::std::os::raw::c_uint,
pub __wrefs: ::std::os::raw::c_uint,
pub __g_signals: [::std::os::raw::c_uint; 2usize],
}
pub type __tss_t = ::std::os::raw::c_uint;
pub type __thrd_t = ::std::os::raw::c_ulong;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __once_flag {
pub __data: ::std::os::raw::c_int,
}
pub type pthread_t = ::std::os::raw::c_ulong;
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_mutexattr_t {
pub __size: [::std::os::raw::c_char; 4usize],
pub __align: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_condattr_t {
pub __size: [::std::os::raw::c_char; 4usize],
pub __align: ::std::os::raw::c_int,
}
pub type pthread_key_t = ::std::os::raw::c_uint;
pub type pthread_once_t = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_attr_t {
pub __size: [::std::os::raw::c_char; 56usize],
pub __align: ::std::os::raw::c_long,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_mutex_t {
pub __data: __pthread_mutex_s,
pub __size: [::std::os::raw::c_char; 40usize],
pub __align: ::std::os::raw::c_long,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_cond_t {
pub __data: __pthread_cond_s,
pub __size: [::std::os::raw::c_char; 48usize],
pub __align: ::std::os::raw::c_longlong,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_rwlock_t {
pub __data: __pthread_rwlock_arch_t,
pub __size: [::std::os::raw::c_char; 56usize],
pub __align: ::std::os::raw::c_long,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_rwlockattr_t {
pub __size: [::std::os::raw::c_char; 8usize],
pub __align: ::std::os::raw::c_long,
}
pub type pthread_spinlock_t = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_barrier_t {
pub __size: [::std::os::raw::c_char; 32usize],
pub __align: ::std::os::raw::c_long,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_barrierattr_t {
pub __size: [::std::os::raw::c_char; 4usize],
pub __align: ::std::os::raw::c_int,
}
unsafe extern "C" {
pub fn random() -> ::std::os::raw::c_long;
}
unsafe extern "C" {
pub fn srandom(__seed: ::std::os::raw::c_uint);
}
unsafe extern "C" {
pub fn initstate(
__seed: ::std::os::raw::c_uint,
__statebuf: *mut ::std::os::raw::c_char,
__statelen: usize,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn setstate(__statebuf: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct random_data {
pub fptr: *mut i32,
pub rptr: *mut i32,
pub state: *mut i32,
pub rand_type: ::std::os::raw::c_int,
pub rand_deg: ::std::os::raw::c_int,
pub rand_sep: ::std::os::raw::c_int,
pub end_ptr: *mut i32,
}
unsafe extern "C" {
pub fn random_r(__buf: *mut random_data, __result: *mut i32) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn srandom_r(
__seed: ::std::os::raw::c_uint,
__buf: *mut random_data,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn initstate_r(
__seed: ::std::os::raw::c_uint,
__statebuf: *mut ::std::os::raw::c_char,
__statelen: usize,
__buf: *mut random_data,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn setstate_r(
__statebuf: *mut ::std::os::raw::c_char,
__buf: *mut random_data,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn rand() -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn srand(__seed: ::std::os::raw::c_uint);
}
unsafe extern "C" {
pub fn rand_r(__seed: *mut ::std::os::raw::c_uint) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn drand48() -> f64;
}
unsafe extern "C" {
pub fn erand48(__xsubi: *mut ::std::os::raw::c_ushort) -> f64;
}
unsafe extern "C" {
pub fn lrand48() -> ::std::os::raw::c_long;
}
unsafe extern "C" {
pub fn nrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long;
}
unsafe extern "C" {
pub fn mrand48() -> ::std::os::raw::c_long;
}
unsafe extern "C" {
pub fn jrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long;
}
unsafe extern "C" {
pub fn srand48(__seedval: ::std::os::raw::c_long);
}
unsafe extern "C" {
pub fn seed48(__seed16v: *mut ::std::os::raw::c_ushort) -> *mut ::std::os::raw::c_ushort;
}
unsafe extern "C" {
pub fn lcong48(__param: *mut ::std::os::raw::c_ushort);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drand48_data {
pub __x: [::std::os::raw::c_ushort; 3usize],
pub __old_x: [::std::os::raw::c_ushort; 3usize],
pub __c: ::std::os::raw::c_ushort,
pub __init: ::std::os::raw::c_ushort,
pub __a: ::std::os::raw::c_ulonglong,
}
unsafe extern "C" {
pub fn drand48_r(__buffer: *mut drand48_data, __result: *mut f64) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn erand48_r(
__xsubi: *mut ::std::os::raw::c_ushort,
__buffer: *mut drand48_data,
__result: *mut f64,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn lrand48_r(
__buffer: *mut drand48_data,
__result: *mut ::std::os::raw::c_long,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn nrand48_r(
__xsubi: *mut ::std::os::raw::c_ushort,
__buffer: *mut drand48_data,
__result: *mut ::std::os::raw::c_long,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn mrand48_r(
__buffer: *mut drand48_data,
__result: *mut ::std::os::raw::c_long,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn jrand48_r(
__xsubi: *mut ::std::os::raw::c_ushort,
__buffer: *mut drand48_data,
__result: *mut ::std::os::raw::c_long,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn srand48_r(
__seedval: ::std::os::raw::c_long,
__buffer: *mut drand48_data,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn seed48_r(
__seed16v: *mut ::std::os::raw::c_ushort,
__buffer: *mut drand48_data,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn lcong48_r(
__param: *mut ::std::os::raw::c_ushort,
__buffer: *mut drand48_data,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn arc4random() -> __uint32_t;
}
unsafe extern "C" {
pub fn arc4random_buf(__buf: *mut ::std::os::raw::c_void, __size: usize);
}
unsafe extern "C" {
pub fn arc4random_uniform(__upper_bound: __uint32_t) -> __uint32_t;
}
unsafe extern "C" {
pub fn malloc(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn calloc(
__nmemb: ::std::os::raw::c_ulong,
__size: ::std::os::raw::c_ulong,
) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn realloc(
__ptr: *mut ::std::os::raw::c_void,
__size: ::std::os::raw::c_ulong,
) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn free(__ptr: *mut ::std::os::raw::c_void);
}
unsafe extern "C" {
pub fn reallocarray(
__ptr: *mut ::std::os::raw::c_void,
__nmemb: usize,
__size: usize,
) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn alloca(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn valloc(__size: usize) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn posix_memalign(
__memptr: *mut *mut ::std::os::raw::c_void,
__alignment: usize,
__size: usize,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn aligned_alloc(
__alignment: ::std::os::raw::c_ulong,
__size: ::std::os::raw::c_ulong,
) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn abort() -> !;
}
unsafe extern "C" {
pub fn atexit(__func: ::std::option::Option<unsafe extern "C" fn()>) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn at_quick_exit(
__func: ::std::option::Option<unsafe extern "C" fn()>,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn on_exit(
__func: ::std::option::Option<
unsafe extern "C" fn(
__status: ::std::os::raw::c_int,
__arg: *mut ::std::os::raw::c_void,
),
>,
__arg: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn exit(__status: ::std::os::raw::c_int) -> !;
}
unsafe extern "C" {
pub fn quick_exit(__status: ::std::os::raw::c_int) -> !;
}
unsafe extern "C" {
pub fn _Exit(__status: ::std::os::raw::c_int) -> !;
}
unsafe extern "C" {
pub fn getenv(__name: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn putenv(__string: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn setenv(
__name: *const ::std::os::raw::c_char,
__value: *const ::std::os::raw::c_char,
__replace: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn unsetenv(__name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn clearenv() -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn mktemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn mkstemp(__template: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn mkstemps(
__template: *mut ::std::os::raw::c_char,
__suffixlen: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn mkdtemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn system(__command: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn realpath(
__name: *const ::std::os::raw::c_char,
__resolved: *mut ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
pub type __compar_fn_t = ::std::option::Option<
unsafe extern "C" fn(
arg1: *const ::std::os::raw::c_void,
arg2: *const ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
unsafe extern "C" {
pub fn bsearch(
__key: *const ::std::os::raw::c_void,
__base: *const ::std::os::raw::c_void,
__nmemb: usize,
__size: usize,
__compar: __compar_fn_t,
) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn qsort(
__base: *mut ::std::os::raw::c_void,
__nmemb: usize,
__size: usize,
__compar: __compar_fn_t,
);
}
unsafe extern "C" {
pub fn abs(__x: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn labs(__x: ::std::os::raw::c_long) -> ::std::os::raw::c_long;
}
unsafe extern "C" {
pub fn llabs(__x: ::std::os::raw::c_longlong) -> ::std::os::raw::c_longlong;
}
unsafe extern "C" {
pub fn div(__numer: ::std::os::raw::c_int, __denom: ::std::os::raw::c_int) -> div_t;
}
unsafe extern "C" {
pub fn ldiv(__numer: ::std::os::raw::c_long, __denom: ::std::os::raw::c_long) -> ldiv_t;
}
unsafe extern "C" {
pub fn lldiv(
__numer: ::std::os::raw::c_longlong,
__denom: ::std::os::raw::c_longlong,
) -> lldiv_t;
}
unsafe extern "C" {
pub fn ecvt(
__value: f64,
__ndigit: ::std::os::raw::c_int,
__decpt: *mut ::std::os::raw::c_int,
__sign: *mut ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn fcvt(
__value: f64,
__ndigit: ::std::os::raw::c_int,
__decpt: *mut ::std::os::raw::c_int,
__sign: *mut ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn gcvt(
__value: f64,
__ndigit: ::std::os::raw::c_int,
__buf: *mut ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn qecvt(
__value: u128,
__ndigit: ::std::os::raw::c_int,
__decpt: *mut ::std::os::raw::c_int,
__sign: *mut ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn qfcvt(
__value: u128,
__ndigit: ::std::os::raw::c_int,
__decpt: *mut ::std::os::raw::c_int,
__sign: *mut ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn qgcvt(
__value: u128,
__ndigit: ::std::os::raw::c_int,
__buf: *mut ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn ecvt_r(
__value: f64,
__ndigit: ::std::os::raw::c_int,
__decpt: *mut ::std::os::raw::c_int,
__sign: *mut ::std::os::raw::c_int,
__buf: *mut ::std::os::raw::c_char,
__len: usize,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn fcvt_r(
__value: f64,
__ndigit: ::std::os::raw::c_int,
__decpt: *mut ::std::os::raw::c_int,
__sign: *mut ::std::os::raw::c_int,
__buf: *mut ::std::os::raw::c_char,
__len: usize,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn qecvt_r(
__value: u128,
__ndigit: ::std::os::raw::c_int,
__decpt: *mut ::std::os::raw::c_int,
__sign: *mut ::std::os::raw::c_int,
__buf: *mut ::std::os::raw::c_char,
__len: usize,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn qfcvt_r(
__value: u128,
__ndigit: ::std::os::raw::c_int,
__decpt: *mut ::std::os::raw::c_int,
__sign: *mut ::std::os::raw::c_int,
__buf: *mut ::std::os::raw::c_char,
__len: usize,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn mblen(__s: *const ::std::os::raw::c_char, __n: usize) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn mbtowc(
__pwc: *mut wchar_t,
__s: *const ::std::os::raw::c_char,
__n: usize,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn wctomb(__s: *mut ::std::os::raw::c_char, __wchar: wchar_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn mbstowcs(__pwcs: *mut wchar_t, __s: *const ::std::os::raw::c_char, __n: usize) -> usize;
}
unsafe extern "C" {
pub fn wcstombs(__s: *mut ::std::os::raw::c_char, __pwcs: *const wchar_t, __n: usize) -> usize;
}
unsafe extern "C" {
pub fn rpmatch(__response: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn getsubopt(
__optionp: *mut *mut ::std::os::raw::c_char,
__tokens: *const *mut ::std::os::raw::c_char,
__valuep: *mut *mut ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn getloadavg(__loadavg: *mut f64, __nelem: ::std::os::raw::c_int)
-> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn memcpy(
__dest: *mut ::std::os::raw::c_void,
__src: *const ::std::os::raw::c_void,
__n: ::std::os::raw::c_ulong,
) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn memmove(
__dest: *mut ::std::os::raw::c_void,
__src: *const ::std::os::raw::c_void,
__n: ::std::os::raw::c_ulong,
) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn memccpy(
__dest: *mut ::std::os::raw::c_void,
__src: *const ::std::os::raw::c_void,
__c: ::std::os::raw::c_int,
__n: ::std::os::raw::c_ulong,
) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn memset(
__s: *mut ::std::os::raw::c_void,
__c: ::std::os::raw::c_int,
__n: ::std::os::raw::c_ulong,
) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn memcmp(
__s1: *const ::std::os::raw::c_void,
__s2: *const ::std::os::raw::c_void,
__n: ::std::os::raw::c_ulong,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn __memcmpeq(
__s1: *const ::std::os::raw::c_void,
__s2: *const ::std::os::raw::c_void,
__n: usize,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn memchr(
__s: *const ::std::os::raw::c_void,
__c: ::std::os::raw::c_int,
__n: ::std::os::raw::c_ulong,
) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn strcpy(
__dest: *mut ::std::os::raw::c_char,
__src: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn strncpy(
__dest: *mut ::std::os::raw::c_char,
__src: *const ::std::os::raw::c_char,
__n: ::std::os::raw::c_ulong,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn strcat(
__dest: *mut ::std::os::raw::c_char,
__src: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn strncat(
__dest: *mut ::std::os::raw::c_char,
__src: *const ::std::os::raw::c_char,
__n: ::std::os::raw::c_ulong,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn strcmp(
__s1: *const ::std::os::raw::c_char,
__s2: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn strncmp(
__s1: *const ::std::os::raw::c_char,
__s2: *const ::std::os::raw::c_char,
__n: ::std::os::raw::c_ulong,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn strcoll(
__s1: *const ::std::os::raw::c_char,
__s2: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn strxfrm(
__dest: *mut ::std::os::raw::c_char,
__src: *const ::std::os::raw::c_char,
__n: ::std::os::raw::c_ulong,
) -> ::std::os::raw::c_ulong;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __locale_struct {
pub __locales: [*mut __locale_data; 13usize],
pub __ctype_b: *const ::std::os::raw::c_ushort,
pub __ctype_tolower: *const ::std::os::raw::c_int,
pub __ctype_toupper: *const ::std::os::raw::c_int,
pub __names: [*const ::std::os::raw::c_char; 13usize],
}
pub type __locale_t = *mut __locale_struct;
pub type locale_t = __locale_t;
unsafe extern "C" {
pub fn strcoll_l(
__s1: *const ::std::os::raw::c_char,
__s2: *const ::std::os::raw::c_char,
__l: locale_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn strxfrm_l(
__dest: *mut ::std::os::raw::c_char,
__src: *const ::std::os::raw::c_char,
__n: usize,
__l: locale_t,
) -> usize;
}
unsafe extern "C" {
pub fn strdup(__s: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn strndup(
__string: *const ::std::os::raw::c_char,
__n: ::std::os::raw::c_ulong,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn strchr(
__s: *const ::std::os::raw::c_char,
__c: ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn strrchr(
__s: *const ::std::os::raw::c_char,
__c: ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn strchrnul(
__s: *const ::std::os::raw::c_char,
__c: ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn strcspn(
__s: *const ::std::os::raw::c_char,
__reject: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_ulong;
}
unsafe extern "C" {
pub fn strspn(
__s: *const ::std::os::raw::c_char,
__accept: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_ulong;
}
unsafe extern "C" {
pub fn strpbrk(
__s: *const ::std::os::raw::c_char,
__accept: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn strstr(
__haystack: *const ::std::os::raw::c_char,
__needle: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn strtok(
__s: *mut ::std::os::raw::c_char,
__delim: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn __strtok_r(
__s: *mut ::std::os::raw::c_char,
__delim: *const ::std::os::raw::c_char,
__save_ptr: *mut *mut ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn strtok_r(
__s: *mut ::std::os::raw::c_char,
__delim: *const ::std::os::raw::c_char,
__save_ptr: *mut *mut ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn strcasestr(
__haystack: *const ::std::os::raw::c_char,
__needle: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn memmem(
__haystack: *const ::std::os::raw::c_void,
__haystacklen: usize,
__needle: *const ::std::os::raw::c_void,
__needlelen: usize,
) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn __mempcpy(
__dest: *mut ::std::os::raw::c_void,
__src: *const ::std::os::raw::c_void,
__n: usize,
) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn mempcpy(
__dest: *mut ::std::os::raw::c_void,
__src: *const ::std::os::raw::c_void,
__n: ::std::os::raw::c_ulong,
) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn strlen(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_ulong;
}
unsafe extern "C" {
pub fn strnlen(__string: *const ::std::os::raw::c_char, __maxlen: usize) -> usize;
}
unsafe extern "C" {
pub fn strerror(__errnum: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
#[link_name = "\u{1}__xpg_strerror_r"]
pub fn strerror_r(
__errnum: ::std::os::raw::c_int,
__buf: *mut ::std::os::raw::c_char,
__buflen: usize,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn strerror_l(
__errnum: ::std::os::raw::c_int,
__l: locale_t,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn bcmp(
__s1: *const ::std::os::raw::c_void,
__s2: *const ::std::os::raw::c_void,
__n: ::std::os::raw::c_ulong,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcopy(
__src: *const ::std::os::raw::c_void,
__dest: *mut ::std::os::raw::c_void,
__n: ::std::os::raw::c_ulong,
);
}
unsafe extern "C" {
pub fn bzero(__s: *mut ::std::os::raw::c_void, __n: ::std::os::raw::c_ulong);
}
unsafe extern "C" {
pub fn index(
__s: *const ::std::os::raw::c_char,
__c: ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn rindex(
__s: *const ::std::os::raw::c_char,
__c: ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn ffs(__i: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn ffsl(__l: ::std::os::raw::c_long) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn ffsll(__ll: ::std::os::raw::c_longlong) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn strcasecmp(
__s1: *const ::std::os::raw::c_char,
__s2: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn strncasecmp(
__s1: *const ::std::os::raw::c_char,
__s2: *const ::std::os::raw::c_char,
__n: ::std::os::raw::c_ulong,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn strcasecmp_l(
__s1: *const ::std::os::raw::c_char,
__s2: *const ::std::os::raw::c_char,
__loc: locale_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn strncasecmp_l(
__s1: *const ::std::os::raw::c_char,
__s2: *const ::std::os::raw::c_char,
__n: usize,
__loc: locale_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn explicit_bzero(__s: *mut ::std::os::raw::c_void, __n: usize);
}
unsafe extern "C" {
pub fn strsep(
__stringp: *mut *mut ::std::os::raw::c_char,
__delim: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn strsignal(__sig: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn __stpcpy(
__dest: *mut ::std::os::raw::c_char,
__src: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn stpcpy(
__dest: *mut ::std::os::raw::c_char,
__src: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn __stpncpy(
__dest: *mut ::std::os::raw::c_char,
__src: *const ::std::os::raw::c_char,
__n: usize,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn stpncpy(
__dest: *mut ::std::os::raw::c_char,
__src: *const ::std::os::raw::c_char,
__n: ::std::os::raw::c_ulong,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn strlcpy(
__dest: *mut ::std::os::raw::c_char,
__src: *const ::std::os::raw::c_char,
__n: ::std::os::raw::c_ulong,
) -> ::std::os::raw::c_ulong;
}
unsafe extern "C" {
pub fn strlcat(
__dest: *mut ::std::os::raw::c_char,
__src: *const ::std::os::raw::c_char,
__n: ::std::os::raw::c_ulong,
) -> ::std::os::raw::c_ulong;
}
pub type __gnuc_va_list = __builtin_va_list;
pub type 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],
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _G_fpos_t {
pub __pos: __off_t,
pub __state: __mbstate_t,
}
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,
}
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 _prevchain: *mut *mut _IO_FILE,
pub _mode: ::std::os::raw::c_int,
pub _unused2: [::std::os::raw::c_char; 20usize],
}
pub type cookie_read_function_t = ::std::option::Option<
unsafe extern "C" fn(
__cookie: *mut ::std::os::raw::c_void,
__buf: *mut ::std::os::raw::c_char,
__nbytes: usize,
) -> __ssize_t,
>;
pub type cookie_write_function_t = ::std::option::Option<
unsafe extern "C" fn(
__cookie: *mut ::std::os::raw::c_void,
__buf: *const ::std::os::raw::c_char,
__nbytes: usize,
) -> __ssize_t,
>;
pub type cookie_seek_function_t = ::std::option::Option<
unsafe extern "C" fn(
__cookie: *mut ::std::os::raw::c_void,
__pos: *mut __off64_t,
__w: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int,
>;
pub type cookie_close_function_t = ::std::option::Option<
unsafe extern "C" fn(__cookie: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _IO_cookie_io_functions_t {
pub read: cookie_read_function_t,
pub write: cookie_write_function_t,
pub seek: cookie_seek_function_t,
pub close: cookie_close_function_t,
}
pub type cookie_io_functions_t = _IO_cookie_io_functions_t;
pub type fpos_t = __fpos_t;
unsafe extern "C" {
pub static mut stdin: *mut FILE;
}
unsafe extern "C" {
pub static mut stdout: *mut FILE;
}
unsafe extern "C" {
pub static mut stderr: *mut FILE;
}
unsafe extern "C" {
pub fn remove(__filename: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn rename(
__old: *const ::std::os::raw::c_char,
__new: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe 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;
}
unsafe extern "C" {
pub fn fclose(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn tmpfile() -> *mut FILE;
}
unsafe extern "C" {
pub fn tmpnam(arg1: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn tmpnam_r(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
unsafe 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;
}
unsafe extern "C" {
pub fn fflush(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn fflush_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn fopen(
__filename: *const ::std::os::raw::c_char,
__modes: *const ::std::os::raw::c_char,
) -> *mut FILE;
}
unsafe extern "C" {
pub fn freopen(
__filename: *const ::std::os::raw::c_char,
__modes: *const ::std::os::raw::c_char,
__stream: *mut FILE,
) -> *mut FILE;
}
unsafe extern "C" {
pub fn fdopen(__fd: ::std::os::raw::c_int, __modes: *const ::std::os::raw::c_char)
-> *mut FILE;
}
unsafe extern "C" {
pub fn fopencookie(
__magic_cookie: *mut ::std::os::raw::c_void,
__modes: *const ::std::os::raw::c_char,
__io_funcs: cookie_io_functions_t,
) -> *mut FILE;
}
unsafe extern "C" {
pub fn fmemopen(
__s: *mut ::std::os::raw::c_void,
__len: usize,
__modes: *const ::std::os::raw::c_char,
) -> *mut FILE;
}
unsafe extern "C" {
pub fn open_memstream(
__bufloc: *mut *mut ::std::os::raw::c_char,
__sizeloc: *mut usize,
) -> *mut FILE;
}
unsafe extern "C" {
pub fn setbuf(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char);
}
unsafe extern "C" {
pub fn setvbuf(
__stream: *mut FILE,
__buf: *mut ::std::os::raw::c_char,
__modes: ::std::os::raw::c_int,
__n: usize,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn setbuffer(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char, __size: usize);
}
unsafe extern "C" {
pub fn setlinebuf(__stream: *mut FILE);
}
unsafe extern "C" {
pub fn fprintf(
__stream: *mut FILE,
__format: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn printf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sprintf(
__s: *mut ::std::os::raw::c_char,
__format: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
unsafe 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;
}
unsafe extern "C" {
pub fn vprintf(
__format: *const ::std::os::raw::c_char,
__arg: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
unsafe 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;
}
unsafe 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;
}
unsafe 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;
}
unsafe extern "C" {
pub fn vasprintf(
__ptr: *mut *mut ::std::os::raw::c_char,
__f: *const ::std::os::raw::c_char,
__arg: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn __asprintf(
__ptr: *mut *mut ::std::os::raw::c_char,
__fmt: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn asprintf(
__ptr: *mut *mut ::std::os::raw::c_char,
__fmt: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
unsafe 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;
}
unsafe extern "C" {
pub fn dprintf(
__fd: ::std::os::raw::c_int,
__fmt: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn fscanf(
__stream: *mut FILE,
__format: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn scanf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sscanf(
__s: *const ::std::os::raw::c_char,
__format: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
unsafe 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;
}
unsafe extern "C" {
#[link_name = "\u{1}__isoc99_scanf"]
pub fn scanf1(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
}
unsafe 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;
}
unsafe 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;
}
unsafe extern "C" {
pub fn vscanf(
__format: *const ::std::os::raw::c_char,
__arg: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
unsafe 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;
}
unsafe 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;
}
unsafe 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;
}
unsafe 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;
}
unsafe extern "C" {
pub fn fgetc(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn getc(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn getchar() -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn getc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn getchar_unlocked() -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn fgetc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn fputc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn putc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn putchar(__c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn fputc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE)
-> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn putc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn putchar_unlocked(__c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn getw(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn putw(__w: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe 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;
}
unsafe extern "C" {
pub fn __getdelim(
__lineptr: *mut *mut ::std::os::raw::c_char,
__n: *mut usize,
__delimiter: ::std::os::raw::c_int,
__stream: *mut FILE,
) -> __ssize_t;
}
unsafe extern "C" {
pub fn getdelim(
__lineptr: *mut *mut ::std::os::raw::c_char,
__n: *mut usize,
__delimiter: ::std::os::raw::c_int,
__stream: *mut FILE,
) -> __ssize_t;
}
unsafe extern "C" {
pub fn getline(
__lineptr: *mut *mut ::std::os::raw::c_char,
__n: *mut usize,
__stream: *mut FILE,
) -> __ssize_t;
}
unsafe extern "C" {
pub fn fputs(__s: *const ::std::os::raw::c_char, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn puts(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn ungetc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe 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;
}
unsafe 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;
}
unsafe extern "C" {
pub fn fread_unlocked(
__ptr: *mut ::std::os::raw::c_void,
__size: usize,
__n: usize,
__stream: *mut FILE,
) -> usize;
}
unsafe extern "C" {
pub fn fwrite_unlocked(
__ptr: *const ::std::os::raw::c_void,
__size: usize,
__n: usize,
__stream: *mut FILE,
) -> usize;
}
unsafe 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;
}
unsafe extern "C" {
pub fn ftell(__stream: *mut FILE) -> ::std::os::raw::c_long;
}
unsafe extern "C" {
pub fn rewind(__stream: *mut FILE);
}
unsafe extern "C" {
pub fn fseeko(
__stream: *mut FILE,
__off: __off_t,
__whence: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn ftello(__stream: *mut FILE) -> __off_t;
}
unsafe extern "C" {
pub fn fgetpos(__stream: *mut FILE, __pos: *mut fpos_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn fsetpos(__stream: *mut FILE, __pos: *const fpos_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn clearerr(__stream: *mut FILE);
}
unsafe extern "C" {
pub fn feof(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn ferror(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn clearerr_unlocked(__stream: *mut FILE);
}
unsafe extern "C" {
pub fn feof_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn ferror_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn perror(__s: *const ::std::os::raw::c_char);
}
unsafe extern "C" {
pub fn fileno(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn fileno_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn pclose(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn popen(
__command: *const ::std::os::raw::c_char,
__modes: *const ::std::os::raw::c_char,
) -> *mut FILE;
}
unsafe extern "C" {
pub fn ctermid(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn flockfile(__stream: *mut FILE);
}
unsafe extern "C" {
pub fn ftrylockfile(__stream: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn funlockfile(__stream: *mut FILE);
}
unsafe extern "C" {
pub fn __uflow(arg1: *mut FILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn __overflow(arg1: *mut FILE, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn __errno_location() -> *mut ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct kstring_t {
pub l: usize,
pub m: usize,
pub s: *mut ::std::os::raw::c_char,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ks_tokaux_t {
pub tab: [u64; 4usize],
pub sep: ::std::os::raw::c_int,
pub finished: ::std::os::raw::c_int,
pub p: *const ::std::os::raw::c_char,
}
unsafe extern "C" {
pub fn kvsprintf(
s: *mut kstring_t,
fmt: *const ::std::os::raw::c_char,
ap: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn ksprintf(
s: *mut kstring_t,
fmt: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn kputd(d: f64, s: *mut kstring_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn ksplit_core(
s: *mut ::std::os::raw::c_char,
delimiter: ::std::os::raw::c_int,
_max: *mut ::std::os::raw::c_int,
_offsets: *mut *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn kstrstr(
str_: *const ::std::os::raw::c_char,
pat: *const ::std::os::raw::c_char,
_prep: *mut *mut ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn kstrnstr(
str_: *const ::std::os::raw::c_char,
pat: *const ::std::os::raw::c_char,
n: ::std::os::raw::c_int,
_prep: *mut *mut ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn kmemmem(
_str: *const ::std::os::raw::c_void,
n: ::std::os::raw::c_int,
_pat: *const ::std::os::raw::c_void,
m: ::std::os::raw::c_int,
_prep: *mut *mut ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn kstrtok(
str_: *const ::std::os::raw::c_char,
sep: *const ::std::os::raw::c_char,
aux: *mut ks_tokaux_t,
) -> *mut ::std::os::raw::c_char;
}
pub type kgets_func = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut ::std::os::raw::c_char,
arg2: ::std::os::raw::c_int,
arg3: *mut ::std::os::raw::c_void,
) -> *mut ::std::os::raw::c_char,
>;
unsafe extern "C" {
pub fn kgetline(
s: *mut kstring_t,
fgets_fn: kgets_func,
fp: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
pub type kgets_func2 = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut ::std::os::raw::c_char,
arg2: usize,
arg3: *mut ::std::os::raw::c_void,
) -> isize,
>;
unsafe extern "C" {
pub fn kgetline2(
s: *mut kstring_t,
fgets_fn: kgets_func2,
fp: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cram_fd {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct hts_tpool {
_unused: [u8; 0],
}
unsafe extern "C" {
pub fn hts_resize_array_(
arg1: usize,
arg2: usize,
arg3: usize,
arg4: *mut ::std::os::raw::c_void,
arg5: *mut *mut ::std::os::raw::c_void,
arg6: ::std::os::raw::c_int,
arg7: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_lib_shutdown();
}
unsafe extern "C" {
pub fn hts_free(ptr: *mut ::std::os::raw::c_void);
}
pub const htsFormatCategory_unknown_category: htsFormatCategory = 0;
pub const htsFormatCategory_sequence_data: htsFormatCategory = 1;
pub const htsFormatCategory_variant_data: htsFormatCategory = 2;
pub const htsFormatCategory_index_file: htsFormatCategory = 3;
pub const htsFormatCategory_region_list: htsFormatCategory = 4;
pub const htsFormatCategory_category_maximum: htsFormatCategory = 32767;
pub type htsFormatCategory = ::std::os::raw::c_uint;
pub const htsExactFormat_unknown_format: htsExactFormat = 0;
pub const htsExactFormat_binary_format: htsExactFormat = 1;
pub const htsExactFormat_text_format: htsExactFormat = 2;
pub const htsExactFormat_sam: htsExactFormat = 3;
pub const htsExactFormat_bam: htsExactFormat = 4;
pub const htsExactFormat_bai: htsExactFormat = 5;
pub const htsExactFormat_cram: htsExactFormat = 6;
pub const htsExactFormat_crai: htsExactFormat = 7;
pub const htsExactFormat_vcf: htsExactFormat = 8;
pub const htsExactFormat_bcf: htsExactFormat = 9;
pub const htsExactFormat_csi: htsExactFormat = 10;
pub const htsExactFormat_gzi: htsExactFormat = 11;
pub const htsExactFormat_tbi: htsExactFormat = 12;
pub const htsExactFormat_bed: htsExactFormat = 13;
pub const htsExactFormat_htsget: htsExactFormat = 14;
pub const htsExactFormat_json: htsExactFormat = 14;
pub const htsExactFormat_empty_format: htsExactFormat = 15;
pub const htsExactFormat_fasta_format: htsExactFormat = 16;
pub const htsExactFormat_fastq_format: htsExactFormat = 17;
pub const htsExactFormat_fai_format: htsExactFormat = 18;
pub const htsExactFormat_fqi_format: htsExactFormat = 19;
pub const htsExactFormat_hts_crypt4gh_format: htsExactFormat = 20;
pub const htsExactFormat_d4_format: htsExactFormat = 21;
pub const htsExactFormat_format_maximum: htsExactFormat = 32767;
pub type htsExactFormat = ::std::os::raw::c_uint;
pub const htsCompression_no_compression: htsCompression = 0;
pub const htsCompression_gzip: htsCompression = 1;
pub const htsCompression_bgzf: htsCompression = 2;
pub const htsCompression_custom: htsCompression = 3;
pub const htsCompression_bzip2_compression: htsCompression = 4;
pub const htsCompression_razf_compression: htsCompression = 5;
pub const htsCompression_xz_compression: htsCompression = 6;
pub const htsCompression_zstd_compression: htsCompression = 7;
pub const htsCompression_compression_maximum: htsCompression = 32767;
pub type htsCompression = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct htsFormat {
pub category: htsFormatCategory,
pub format: htsExactFormat,
pub version: htsFormat__bindgen_ty_1,
pub compression: htsCompression,
pub compression_level: ::std::os::raw::c_short,
pub specific: *mut ::std::os::raw::c_void,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct htsFormat__bindgen_ty_1 {
pub major: ::std::os::raw::c_short,
pub minor: ::std::os::raw::c_short,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct hts_idx_t {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct hts_filter_t {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct htsFile {
pub _bitfield_align_1: [u32; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
pub lineno: i64,
pub line: kstring_t,
pub fn_: *mut ::std::os::raw::c_char,
pub fn_aux: *mut ::std::os::raw::c_char,
pub fp: htsFile__bindgen_ty_1,
pub state: *mut ::std::os::raw::c_void,
pub format: htsFormat,
pub idx: *mut hts_idx_t,
pub fnidx: *const ::std::os::raw::c_char,
pub bam_header: *mut sam_hdr_t,
pub filter: *mut hts_filter_t,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union htsFile__bindgen_ty_1 {
pub bgzf: *mut BGZF,
pub cram: *mut cram_fd,
pub hfile: *mut hFILE,
}
impl htsFile {
#[inline]
pub fn is_bin(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_bin(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(0usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_bin_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
0usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_bin_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
0usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_write(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_write(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(1usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_write_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
1usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_write_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
1usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_be(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_be(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(2usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_be_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
2usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_be_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
2usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_cram(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_cram(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(3usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_cram_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
3usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_cram_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
3usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_bgzf(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_bgzf(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(4usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_bgzf_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
4usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_bgzf_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
4usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn dummy(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(5usize, 27u8) as u32) }
}
#[inline]
pub fn set_dummy(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(5usize, 27u8, val as u64)
}
}
#[inline]
pub unsafe fn dummy_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
5usize,
27u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_dummy_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
5usize,
27u8,
val as u64,
)
}
}
#[inline]
pub fn new_bitfield_1(
is_bin: u32,
is_write: u32,
is_be: u32,
is_cram: u32,
is_bgzf: u32,
dummy: u32,
) -> __BindgenBitfieldUnit<[u8; 4usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 1u8, {
let is_bin: u32 = unsafe { ::std::mem::transmute(is_bin) };
is_bin as u64
});
__bindgen_bitfield_unit.set(1usize, 1u8, {
let is_write: u32 = unsafe { ::std::mem::transmute(is_write) };
is_write as u64
});
__bindgen_bitfield_unit.set(2usize, 1u8, {
let is_be: u32 = unsafe { ::std::mem::transmute(is_be) };
is_be as u64
});
__bindgen_bitfield_unit.set(3usize, 1u8, {
let is_cram: u32 = unsafe { ::std::mem::transmute(is_cram) };
is_cram as u64
});
__bindgen_bitfield_unit.set(4usize, 1u8, {
let is_bgzf: u32 = unsafe { ::std::mem::transmute(is_bgzf) };
is_bgzf as u64
});
__bindgen_bitfield_unit.set(5usize, 27u8, {
let dummy: u32 = unsafe { ::std::mem::transmute(dummy) };
dummy as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct htsThreadPool {
pub pool: *mut hts_tpool,
pub qsize: ::std::os::raw::c_int,
}
pub const sam_fields_SAM_QNAME: sam_fields = 1;
pub const sam_fields_SAM_FLAG: sam_fields = 2;
pub const sam_fields_SAM_RNAME: sam_fields = 4;
pub const sam_fields_SAM_POS: sam_fields = 8;
pub const sam_fields_SAM_MAPQ: sam_fields = 16;
pub const sam_fields_SAM_CIGAR: sam_fields = 32;
pub const sam_fields_SAM_RNEXT: sam_fields = 64;
pub const sam_fields_SAM_PNEXT: sam_fields = 128;
pub const sam_fields_SAM_TLEN: sam_fields = 256;
pub const sam_fields_SAM_SEQ: sam_fields = 512;
pub const sam_fields_SAM_QUAL: sam_fields = 1024;
pub const sam_fields_SAM_AUX: sam_fields = 2048;
pub const sam_fields_SAM_RGAUX: sam_fields = 4096;
pub type sam_fields = ::std::os::raw::c_uint;
pub const hts_fmt_option_CRAM_OPT_DECODE_MD: hts_fmt_option = 0;
pub const hts_fmt_option_CRAM_OPT_PREFIX: hts_fmt_option = 1;
pub const hts_fmt_option_CRAM_OPT_VERBOSITY: hts_fmt_option = 2;
pub const hts_fmt_option_CRAM_OPT_SEQS_PER_SLICE: hts_fmt_option = 3;
pub const hts_fmt_option_CRAM_OPT_SLICES_PER_CONTAINER: hts_fmt_option = 4;
pub const hts_fmt_option_CRAM_OPT_RANGE: hts_fmt_option = 5;
pub const hts_fmt_option_CRAM_OPT_VERSION: hts_fmt_option = 6;
pub const hts_fmt_option_CRAM_OPT_EMBED_REF: hts_fmt_option = 7;
pub const hts_fmt_option_CRAM_OPT_IGNORE_MD5: hts_fmt_option = 8;
pub const hts_fmt_option_CRAM_OPT_REFERENCE: hts_fmt_option = 9;
pub const hts_fmt_option_CRAM_OPT_MULTI_SEQ_PER_SLICE: hts_fmt_option = 10;
pub const hts_fmt_option_CRAM_OPT_NO_REF: hts_fmt_option = 11;
pub const hts_fmt_option_CRAM_OPT_USE_BZIP2: hts_fmt_option = 12;
pub const hts_fmt_option_CRAM_OPT_SHARED_REF: hts_fmt_option = 13;
pub const hts_fmt_option_CRAM_OPT_NTHREADS: hts_fmt_option = 14;
pub const hts_fmt_option_CRAM_OPT_THREAD_POOL: hts_fmt_option = 15;
pub const hts_fmt_option_CRAM_OPT_USE_LZMA: hts_fmt_option = 16;
pub const hts_fmt_option_CRAM_OPT_USE_RANS: hts_fmt_option = 17;
pub const hts_fmt_option_CRAM_OPT_REQUIRED_FIELDS: hts_fmt_option = 18;
pub const hts_fmt_option_CRAM_OPT_LOSSY_NAMES: hts_fmt_option = 19;
pub const hts_fmt_option_CRAM_OPT_BASES_PER_SLICE: hts_fmt_option = 20;
pub const hts_fmt_option_CRAM_OPT_STORE_MD: hts_fmt_option = 21;
pub const hts_fmt_option_CRAM_OPT_STORE_NM: hts_fmt_option = 22;
pub const hts_fmt_option_CRAM_OPT_RANGE_NOSEEK: hts_fmt_option = 23;
pub const hts_fmt_option_CRAM_OPT_USE_TOK: hts_fmt_option = 24;
pub const hts_fmt_option_CRAM_OPT_USE_FQZ: hts_fmt_option = 25;
pub const hts_fmt_option_CRAM_OPT_USE_ARITH: hts_fmt_option = 26;
pub const hts_fmt_option_CRAM_OPT_POS_DELTA: hts_fmt_option = 27;
pub const hts_fmt_option_HTS_OPT_COMPRESSION_LEVEL: hts_fmt_option = 100;
pub const hts_fmt_option_HTS_OPT_NTHREADS: hts_fmt_option = 101;
pub const hts_fmt_option_HTS_OPT_THREAD_POOL: hts_fmt_option = 102;
pub const hts_fmt_option_HTS_OPT_CACHE_SIZE: hts_fmt_option = 103;
pub const hts_fmt_option_HTS_OPT_BLOCK_SIZE: hts_fmt_option = 104;
pub const hts_fmt_option_HTS_OPT_FILTER: hts_fmt_option = 105;
pub const hts_fmt_option_HTS_OPT_PROFILE: hts_fmt_option = 106;
pub const hts_fmt_option_FASTQ_OPT_CASAVA: hts_fmt_option = 1000;
pub const hts_fmt_option_FASTQ_OPT_AUX: hts_fmt_option = 1001;
pub const hts_fmt_option_FASTQ_OPT_RNUM: hts_fmt_option = 1002;
pub const hts_fmt_option_FASTQ_OPT_BARCODE: hts_fmt_option = 1003;
pub const hts_fmt_option_FASTQ_OPT_NAME2: hts_fmt_option = 1004;
pub type hts_fmt_option = ::std::os::raw::c_uint;
pub const hts_profile_option_HTS_PROFILE_FAST: hts_profile_option = 0;
pub const hts_profile_option_HTS_PROFILE_NORMAL: hts_profile_option = 1;
pub const hts_profile_option_HTS_PROFILE_SMALL: hts_profile_option = 2;
pub const hts_profile_option_HTS_PROFILE_ARCHIVE: hts_profile_option = 3;
pub type hts_profile_option = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct hts_opt {
pub arg: *mut ::std::os::raw::c_char,
pub opt: hts_fmt_option,
pub val: hts_opt__bindgen_ty_1,
pub next: *mut hts_opt,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union hts_opt__bindgen_ty_1 {
pub i: ::std::os::raw::c_int,
pub s: *mut ::std::os::raw::c_char,
}
unsafe extern "C" {
pub fn hts_opt_add(
opts: *mut *mut hts_opt,
c_arg: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_opt_apply(fp: *mut htsFile, opts: *mut hts_opt) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_opt_free(opts: *mut hts_opt);
}
unsafe extern "C" {
pub fn hts_parse_format(
opt: *mut htsFormat,
str_: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_parse_opt_list(
opt: *mut htsFormat,
str_: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub static seq_nt16_table: [::std::os::raw::c_uchar; 256usize];
}
unsafe extern "C" {
pub static seq_nt16_str: [::std::os::raw::c_char; 0usize];
}
unsafe extern "C" {
pub static seq_nt16_int: [::std::os::raw::c_int; 0usize];
}
unsafe extern "C" {
pub fn hts_version() -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn hts_features() -> ::std::os::raw::c_uint;
}
unsafe extern "C" {
pub fn hts_test_feature(id: ::std::os::raw::c_uint) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn hts_feature_string() -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn hts_detect_format(fp: *mut hFILE, fmt: *mut htsFormat) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_detect_format2(
fp: *mut hFILE,
fname: *const ::std::os::raw::c_char,
fmt: *mut htsFormat,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_format_description(format: *const htsFormat) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn hts_open(
fn_: *const ::std::os::raw::c_char,
mode: *const ::std::os::raw::c_char,
) -> *mut htsFile;
}
unsafe extern "C" {
pub fn hts_open_format(
fn_: *const ::std::os::raw::c_char,
mode: *const ::std::os::raw::c_char,
fmt: *const htsFormat,
) -> *mut htsFile;
}
unsafe extern "C" {
pub fn hts_hopen(
fp: *mut hFILE,
fn_: *const ::std::os::raw::c_char,
mode: *const ::std::os::raw::c_char,
) -> *mut htsFile;
}
unsafe extern "C" {
pub fn hts_flush(fp: *mut htsFile) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_close(fp: *mut htsFile) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_get_format(fp: *mut htsFile) -> *const htsFormat;
}
unsafe extern "C" {
pub fn hts_format_file_extension(format: *const htsFormat) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn hts_set_opt(fp: *mut htsFile, opt: hts_fmt_option, ...) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_getline(
fp: *mut htsFile,
delimiter: ::std::os::raw::c_int,
str_: *mut kstring_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_readlines(
fn_: *const ::std::os::raw::c_char,
_n: *mut ::std::os::raw::c_int,
) -> *mut *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn hts_readlist(
fn_: *const ::std::os::raw::c_char,
is_file: ::std::os::raw::c_int,
_n: *mut ::std::os::raw::c_int,
) -> *mut *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn hts_set_threads(fp: *mut htsFile, n: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_set_thread_pool(fp: *mut htsFile, p: *mut htsThreadPool) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_set_cache_size(fp: *mut htsFile, n: ::std::os::raw::c_int);
}
unsafe extern "C" {
pub fn hts_set_fai_filename(
fp: *mut htsFile,
fn_aux: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_set_filter_expression(
fp: *mut htsFile,
expr: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_check_EOF(fp: *mut htsFile) -> ::std::os::raw::c_int;
}
pub type hts_pos_t = i64;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct hts_pair_pos_t {
pub beg: hts_pos_t,
pub end: hts_pos_t,
}
pub type hts_pair32_t = hts_pair_pos_t;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct hts_pair64_t {
pub u: u64,
pub v: u64,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct hts_pair64_max_t {
pub u: u64,
pub v: u64,
pub max: u64,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct hts_reglist_t {
pub reg: *const ::std::os::raw::c_char,
pub intervals: *mut hts_pair_pos_t,
pub tid: ::std::os::raw::c_int,
pub count: u32,
pub min_beg: hts_pos_t,
pub max_end: hts_pos_t,
}
pub type hts_readrec_func = ::std::option::Option<
unsafe extern "C" fn(
fp: *mut BGZF,
data: *mut ::std::os::raw::c_void,
r: *mut ::std::os::raw::c_void,
tid: *mut ::std::os::raw::c_int,
beg: *mut hts_pos_t,
end: *mut hts_pos_t,
) -> ::std::os::raw::c_int,
>;
pub type hts_seek_func = ::std::option::Option<
unsafe extern "C" fn(
fp: *mut ::std::os::raw::c_void,
offset: i64,
where_: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int,
>;
pub type hts_tell_func =
::std::option::Option<unsafe extern "C" fn(fp: *mut ::std::os::raw::c_void) -> i64>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct hts_itr_t {
pub _bitfield_align_1: [u32; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
pub tid: ::std::os::raw::c_int,
pub n_off: ::std::os::raw::c_int,
pub i: ::std::os::raw::c_int,
pub n_reg: ::std::os::raw::c_int,
pub beg: hts_pos_t,
pub end: hts_pos_t,
pub reg_list: *mut hts_reglist_t,
pub curr_tid: ::std::os::raw::c_int,
pub curr_reg: ::std::os::raw::c_int,
pub curr_intv: ::std::os::raw::c_int,
pub curr_beg: hts_pos_t,
pub curr_end: hts_pos_t,
pub curr_off: u64,
pub nocoor_off: u64,
pub off: *mut hts_pair64_max_t,
pub readrec: hts_readrec_func,
pub seek: hts_seek_func,
pub tell: hts_tell_func,
pub bins: hts_itr_t__bindgen_ty_1,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct hts_itr_t__bindgen_ty_1 {
pub n: ::std::os::raw::c_int,
pub m: ::std::os::raw::c_int,
pub a: *mut ::std::os::raw::c_int,
}
impl hts_itr_t {
#[inline]
pub fn read_rest(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
}
#[inline]
pub fn set_read_rest(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(0usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn read_rest_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
0usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_read_rest_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
0usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn finished(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
}
#[inline]
pub fn set_finished(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(1usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn finished_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
1usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_finished_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
1usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_cram(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_cram(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(2usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_cram_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
2usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_cram_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
2usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn nocoor(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
}
#[inline]
pub fn set_nocoor(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(3usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn nocoor_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
3usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_nocoor_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
3usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn multi(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
}
#[inline]
pub fn set_multi(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(4usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn multi_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
4usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_multi_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
4usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn dummy(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(5usize, 27u8) as u32) }
}
#[inline]
pub fn set_dummy(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(5usize, 27u8, val as u64)
}
}
#[inline]
pub unsafe fn dummy_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
5usize,
27u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_dummy_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
5usize,
27u8,
val as u64,
)
}
}
#[inline]
pub fn new_bitfield_1(
read_rest: u32,
finished: u32,
is_cram: u32,
nocoor: u32,
multi: u32,
dummy: u32,
) -> __BindgenBitfieldUnit<[u8; 4usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 1u8, {
let read_rest: u32 = unsafe { ::std::mem::transmute(read_rest) };
read_rest as u64
});
__bindgen_bitfield_unit.set(1usize, 1u8, {
let finished: u32 = unsafe { ::std::mem::transmute(finished) };
finished as u64
});
__bindgen_bitfield_unit.set(2usize, 1u8, {
let is_cram: u32 = unsafe { ::std::mem::transmute(is_cram) };
is_cram as u64
});
__bindgen_bitfield_unit.set(3usize, 1u8, {
let nocoor: u32 = unsafe { ::std::mem::transmute(nocoor) };
nocoor as u64
});
__bindgen_bitfield_unit.set(4usize, 1u8, {
let multi: u32 = unsafe { ::std::mem::transmute(multi) };
multi as u64
});
__bindgen_bitfield_unit.set(5usize, 27u8, {
let dummy: u32 = unsafe { ::std::mem::transmute(dummy) };
dummy as u64
});
__bindgen_bitfield_unit
}
}
pub type hts_itr_multi_t = hts_itr_t;
unsafe extern "C" {
pub fn hts_idx_init(
n: ::std::os::raw::c_int,
fmt: ::std::os::raw::c_int,
offset0: u64,
min_shift: ::std::os::raw::c_int,
n_lvls: ::std::os::raw::c_int,
) -> *mut hts_idx_t;
}
unsafe extern "C" {
pub fn hts_idx_destroy(idx: *mut hts_idx_t);
}
unsafe extern "C" {
pub fn hts_idx_push(
idx: *mut hts_idx_t,
tid: ::std::os::raw::c_int,
beg: hts_pos_t,
end: hts_pos_t,
offset: u64,
is_mapped: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_idx_finish(idx: *mut hts_idx_t, final_offset: u64) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_idx_fmt(idx: *mut hts_idx_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_idx_tbi_name(
idx: *mut hts_idx_t,
tid: ::std::os::raw::c_int,
name: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_idx_save(
idx: *const hts_idx_t,
fn_: *const ::std::os::raw::c_char,
fmt: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_idx_save_as(
idx: *const hts_idx_t,
fn_: *const ::std::os::raw::c_char,
fnidx: *const ::std::os::raw::c_char,
fmt: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_idx_load(
fn_: *const ::std::os::raw::c_char,
fmt: ::std::os::raw::c_int,
) -> *mut hts_idx_t;
}
unsafe extern "C" {
pub fn hts_idx_load2(
fn_: *const ::std::os::raw::c_char,
fnidx: *const ::std::os::raw::c_char,
) -> *mut hts_idx_t;
}
unsafe extern "C" {
pub fn hts_idx_load3(
fn_: *const ::std::os::raw::c_char,
fnidx: *const ::std::os::raw::c_char,
fmt: ::std::os::raw::c_int,
flags: ::std::os::raw::c_int,
) -> *mut hts_idx_t;
}
pub type hts_id2name_f = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut ::std::os::raw::c_void,
arg2: ::std::os::raw::c_int,
) -> *const ::std::os::raw::c_char,
>;
unsafe extern "C" {
pub fn hts_idx_get_meta(idx: *mut hts_idx_t, l_meta: *mut u32) -> *mut u8;
}
unsafe extern "C" {
pub fn hts_idx_set_meta(
idx: *mut hts_idx_t,
l_meta: u32,
meta: *mut u8,
is_copy: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_idx_get_stat(
idx: *const hts_idx_t,
tid: ::std::os::raw::c_int,
mapped: *mut u64,
unmapped: *mut u64,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_idx_get_n_no_coor(idx: *const hts_idx_t) -> u64;
}
unsafe extern "C" {
pub fn hts_idx_seqnames(
idx: *const hts_idx_t,
n: *mut ::std::os::raw::c_int,
getid: hts_id2name_f,
hdr: *mut ::std::os::raw::c_void,
) -> *mut *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn hts_idx_nseq(idx: *const hts_idx_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_parse_decimal(
str_: *const ::std::os::raw::c_char,
strend: *mut *mut ::std::os::raw::c_char,
flags: ::std::os::raw::c_int,
) -> ::std::os::raw::c_longlong;
}
pub type hts_name2id_f = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut ::std::os::raw::c_void,
arg2: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int,
>;
unsafe extern "C" {
pub fn hts_parse_reg64(
str_: *const ::std::os::raw::c_char,
beg: *mut hts_pos_t,
end: *mut hts_pos_t,
) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn hts_parse_reg(
str_: *const ::std::os::raw::c_char,
beg: *mut ::std::os::raw::c_int,
end: *mut ::std::os::raw::c_int,
) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn hts_parse_region(
s: *const ::std::os::raw::c_char,
tid: *mut ::std::os::raw::c_int,
beg: *mut hts_pos_t,
end: *mut hts_pos_t,
getid: hts_name2id_f,
hdr: *mut ::std::os::raw::c_void,
flags: ::std::os::raw::c_int,
) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn hts_itr_query(
idx: *const hts_idx_t,
tid: ::std::os::raw::c_int,
beg: hts_pos_t,
end: hts_pos_t,
readrec: hts_readrec_func,
) -> *mut hts_itr_t;
}
unsafe extern "C" {
pub fn hts_itr_destroy(iter: *mut hts_itr_t);
}
pub type hts_itr_query_func = ::std::option::Option<
unsafe extern "C" fn(
idx: *const hts_idx_t,
tid: ::std::os::raw::c_int,
beg: hts_pos_t,
end: hts_pos_t,
readrec: hts_readrec_func,
) -> *mut hts_itr_t,
>;
unsafe extern "C" {
pub fn hts_itr_querys(
idx: *const hts_idx_t,
reg: *const ::std::os::raw::c_char,
getid: hts_name2id_f,
hdr: *mut ::std::os::raw::c_void,
itr_query: hts_itr_query_func,
readrec: hts_readrec_func,
) -> *mut hts_itr_t;
}
unsafe extern "C" {
pub fn hts_itr_next(
fp: *mut BGZF,
iter: *mut hts_itr_t,
r: *mut ::std::os::raw::c_void,
data: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
pub type hts_itr_multi_query_func = ::std::option::Option<
unsafe extern "C" fn(idx: *const hts_idx_t, itr: *mut hts_itr_t) -> ::std::os::raw::c_int,
>;
unsafe extern "C" {
pub fn hts_itr_multi_bam(idx: *const hts_idx_t, iter: *mut hts_itr_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_itr_multi_cram(idx: *const hts_idx_t, iter: *mut hts_itr_t)
-> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_itr_regions(
idx: *const hts_idx_t,
reglist: *mut hts_reglist_t,
count: ::std::os::raw::c_int,
getid: hts_name2id_f,
hdr: *mut ::std::os::raw::c_void,
itr_specific: hts_itr_multi_query_func,
readrec: hts_readrec_func,
seek: hts_seek_func,
tell: hts_tell_func,
) -> *mut hts_itr_t;
}
unsafe extern "C" {
pub fn hts_itr_multi_next(
fd: *mut htsFile,
iter: *mut hts_itr_t,
r: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_reglist_create(
argv: *mut *mut ::std::os::raw::c_char,
argc: ::std::os::raw::c_int,
r_count: *mut ::std::os::raw::c_int,
hdr: *mut ::std::os::raw::c_void,
getid: hts_name2id_f,
) -> *mut hts_reglist_t;
}
unsafe extern "C" {
pub fn hts_reglist_free(reglist: *mut hts_reglist_t, count: ::std::os::raw::c_int);
}
unsafe extern "C" {
pub fn hts_file_type(fname: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct errmod_t {
_unused: [u8; 0],
}
unsafe extern "C" {
pub fn errmod_init(depcorr: f64) -> *mut errmod_t;
}
unsafe extern "C" {
pub fn errmod_destroy(em: *mut errmod_t);
}
unsafe extern "C" {
pub fn errmod_cal(
em: *const errmod_t,
n: ::std::os::raw::c_int,
m: ::std::os::raw::c_int,
bases: *mut u16,
q: *mut f32,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct probaln_par_t {
pub d: f32,
pub e: f32,
pub bw: ::std::os::raw::c_int,
}
unsafe extern "C" {
pub fn probaln_glocal(
ref_: *const u8,
l_ref: ::std::os::raw::c_int,
query: *const u8,
l_query: ::std::os::raw::c_int,
iqual: *const u8,
c: *const probaln_par_t,
state: *mut ::std::os::raw::c_int,
q: *mut u8,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct hts_md5_context {
_unused: [u8; 0],
}
unsafe extern "C" {
pub fn hts_md5_init() -> *mut hts_md5_context;
}
unsafe extern "C" {
pub fn hts_md5_update(
ctx: *mut hts_md5_context,
data: *const ::std::os::raw::c_void,
size: ::std::os::raw::c_ulong,
);
}
unsafe extern "C" {
pub fn hts_md5_final(digest: *mut ::std::os::raw::c_uchar, ctx: *mut hts_md5_context);
}
unsafe extern "C" {
pub fn hts_md5_reset(ctx: *mut hts_md5_context);
}
unsafe extern "C" {
pub fn hts_md5_hex(hex: *mut ::std::os::raw::c_char, digest: *const ::std::os::raw::c_uchar);
}
unsafe extern "C" {
pub fn hts_md5_destroy(ctx: *mut hts_md5_context);
}
pub type uint16_u = u16;
pub type uint32_u = u32;
pub type uint64_u = u64;
unsafe extern "C" {
pub fn __assert_fail(
__assertion: *const ::std::os::raw::c_char,
__file: *const ::std::os::raw::c_char,
__line: ::std::os::raw::c_uint,
__function: *const ::std::os::raw::c_char,
) -> !;
}
unsafe extern "C" {
pub fn __assert_perror_fail(
__errnum: ::std::os::raw::c_int,
__file: *const ::std::os::raw::c_char,
__line: ::std::os::raw::c_uint,
__function: *const ::std::os::raw::c_char,
) -> !;
}
unsafe extern "C" {
pub fn __assert(
__assertion: *const ::std::os::raw::c_char,
__file: *const ::std::os::raw::c_char,
__line: ::std::os::raw::c_int,
) -> !;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bcf_hrec_t {
pub type_: ::std::os::raw::c_int,
pub key: *mut ::std::os::raw::c_char,
pub value: *mut ::std::os::raw::c_char,
pub nkeys: ::std::os::raw::c_int,
pub keys: *mut *mut ::std::os::raw::c_char,
pub vals: *mut *mut ::std::os::raw::c_char,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bcf_idinfo_t {
pub info: [u64; 3usize],
pub hrec: [*mut bcf_hrec_t; 3usize],
pub id: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bcf_idpair_t {
pub key: *const ::std::os::raw::c_char,
pub val: *const bcf_idinfo_t,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bcf_hdr_t {
pub n: [i32; 3usize],
pub id: [*mut bcf_idpair_t; 3usize],
pub dict: [*mut ::std::os::raw::c_void; 3usize],
pub samples: *mut *mut ::std::os::raw::c_char,
pub hrec: *mut *mut bcf_hrec_t,
pub nhrec: ::std::os::raw::c_int,
pub dirty: ::std::os::raw::c_int,
pub ntransl: ::std::os::raw::c_int,
pub transl: [*mut ::std::os::raw::c_int; 2usize],
pub nsamples_ori: ::std::os::raw::c_int,
pub keep_samples: *mut u8,
pub mem: kstring_t,
pub m: [i32; 3usize],
}
unsafe extern "C" {
pub static mut bcf_type_shift: [u8; 0usize];
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bcf_variant_t {
pub type_: ::std::os::raw::c_int,
pub n: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bcf_fmt_t {
pub id: ::std::os::raw::c_int,
pub n: ::std::os::raw::c_int,
pub size: ::std::os::raw::c_int,
pub type_: ::std::os::raw::c_int,
pub p: *mut u8,
pub p_len: u32,
pub _bitfield_align_1: [u32; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
}
impl bcf_fmt_t {
#[inline]
pub fn p_off(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 31u8) as u32) }
}
#[inline]
pub fn set_p_off(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(0usize, 31u8, val as u64)
}
}
#[inline]
pub unsafe fn p_off_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
0usize,
31u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_p_off_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
0usize,
31u8,
val as u64,
)
}
}
#[inline]
pub fn p_free(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(31usize, 1u8) as u32) }
}
#[inline]
pub fn set_p_free(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(31usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn p_free_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
31usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_p_free_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
31usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn new_bitfield_1(p_off: u32, p_free: u32) -> __BindgenBitfieldUnit<[u8; 4usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 31u8, {
let p_off: u32 = unsafe { ::std::mem::transmute(p_off) };
p_off as u64
});
__bindgen_bitfield_unit.set(31usize, 1u8, {
let p_free: u32 = unsafe { ::std::mem::transmute(p_free) };
p_free as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct bcf_info_t {
pub key: ::std::os::raw::c_int,
pub type_: ::std::os::raw::c_int,
pub v1: bcf_info_t__bindgen_ty_1,
pub vptr: *mut u8,
pub vptr_len: u32,
pub _bitfield_align_1: [u32; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
pub len: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union bcf_info_t__bindgen_ty_1 {
pub i: i64,
pub f: f32,
}
impl bcf_info_t {
#[inline]
pub fn vptr_off(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 31u8) as u32) }
}
#[inline]
pub fn set_vptr_off(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(0usize, 31u8, val as u64)
}
}
#[inline]
pub unsafe fn vptr_off_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
0usize,
31u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_vptr_off_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
0usize,
31u8,
val as u64,
)
}
}
#[inline]
pub fn vptr_free(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(31usize, 1u8) as u32) }
}
#[inline]
pub fn set_vptr_free(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(31usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn vptr_free_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
31usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_vptr_free_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
31usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn new_bitfield_1(vptr_off: u32, vptr_free: u32) -> __BindgenBitfieldUnit<[u8; 4usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 31u8, {
let vptr_off: u32 = unsafe { ::std::mem::transmute(vptr_off) };
vptr_off as u64
});
__bindgen_bitfield_unit.set(31usize, 1u8, {
let vptr_free: u32 = unsafe { ::std::mem::transmute(vptr_free) };
vptr_free as u64
});
__bindgen_bitfield_unit
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bcf_dec_t {
pub m_fmt: ::std::os::raw::c_int,
pub m_info: ::std::os::raw::c_int,
pub m_id: ::std::os::raw::c_int,
pub m_als: ::std::os::raw::c_int,
pub m_allele: ::std::os::raw::c_int,
pub m_flt: ::std::os::raw::c_int,
pub n_flt: ::std::os::raw::c_int,
pub flt: *mut ::std::os::raw::c_int,
pub id: *mut ::std::os::raw::c_char,
pub als: *mut ::std::os::raw::c_char,
pub allele: *mut *mut ::std::os::raw::c_char,
pub info: *mut bcf_info_t,
pub fmt: *mut bcf_fmt_t,
pub var: *mut bcf_variant_t,
pub n_var: ::std::os::raw::c_int,
pub var_type: ::std::os::raw::c_int,
pub shared_dirty: ::std::os::raw::c_int,
pub indiv_dirty: ::std::os::raw::c_int,
}
unsafe extern "C" {
pub fn bcf_strerror(
errorcode: ::std::os::raw::c_int,
buffer: *mut ::std::os::raw::c_char,
maxbuffer: usize,
) -> *const ::std::os::raw::c_char;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bcf1_t {
pub pos: hts_pos_t,
pub rlen: hts_pos_t,
pub rid: i32,
pub qual: f32,
pub _bitfield_align_1: [u32; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
pub shared: kstring_t,
pub indiv: kstring_t,
pub d: bcf_dec_t,
pub max_unpack: ::std::os::raw::c_int,
pub unpacked: ::std::os::raw::c_int,
pub unpack_size: [::std::os::raw::c_int; 3usize],
pub errcode: ::std::os::raw::c_int,
}
impl bcf1_t {
#[inline]
pub fn n_info(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) }
}
#[inline]
pub fn set_n_info(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(0usize, 16u8, val as u64)
}
}
#[inline]
pub unsafe fn n_info_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
0usize,
16u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_n_info_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
0usize,
16u8,
val as u64,
)
}
}
#[inline]
pub fn n_allele(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) }
}
#[inline]
pub fn set_n_allele(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(16usize, 16u8, val as u64)
}
}
#[inline]
pub unsafe fn n_allele_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
16usize,
16u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_n_allele_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
16usize,
16u8,
val as u64,
)
}
}
#[inline]
pub fn n_fmt(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(32usize, 8u8) as u32) }
}
#[inline]
pub fn set_n_fmt(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(32usize, 8u8, val as u64)
}
}
#[inline]
pub unsafe fn n_fmt_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
32usize,
8u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_n_fmt_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
32usize,
8u8,
val as u64,
)
}
}
#[inline]
pub fn n_sample(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(40usize, 24u8) as u32) }
}
#[inline]
pub fn set_n_sample(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(40usize, 24u8, val as u64)
}
}
#[inline]
pub unsafe fn n_sample_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 8usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
40usize,
24u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_n_sample_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 8usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
40usize,
24u8,
val as u64,
)
}
}
#[inline]
pub fn new_bitfield_1(
n_info: u32,
n_allele: u32,
n_fmt: u32,
n_sample: u32,
) -> __BindgenBitfieldUnit<[u8; 8usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 16u8, {
let n_info: u32 = unsafe { ::std::mem::transmute(n_info) };
n_info as u64
});
__bindgen_bitfield_unit.set(16usize, 16u8, {
let n_allele: u32 = unsafe { ::std::mem::transmute(n_allele) };
n_allele as u64
});
__bindgen_bitfield_unit.set(32usize, 8u8, {
let n_fmt: u32 = unsafe { ::std::mem::transmute(n_fmt) };
n_fmt as u64
});
__bindgen_bitfield_unit.set(40usize, 24u8, {
let n_sample: u32 = unsafe { ::std::mem::transmute(n_sample) };
n_sample as u64
});
__bindgen_bitfield_unit
}
}
unsafe extern "C" {
pub fn bcf_hdr_init(mode: *const ::std::os::raw::c_char) -> *mut bcf_hdr_t;
}
unsafe extern "C" {
pub fn bcf_hdr_destroy(h: *mut bcf_hdr_t);
}
unsafe extern "C" {
pub fn bcf_init() -> *mut bcf1_t;
}
unsafe extern "C" {
pub fn bcf_destroy(v: *mut bcf1_t);
}
unsafe extern "C" {
pub fn bcf_empty(v: *mut bcf1_t);
}
unsafe extern "C" {
pub fn bcf_clear(v: *mut bcf1_t);
}
pub type vcfFile = htsFile;
unsafe extern "C" {
pub fn bcf_hdr_read(fp: *mut htsFile) -> *mut bcf_hdr_t;
}
unsafe extern "C" {
pub fn bcf_hdr_set_samples(
hdr: *mut bcf_hdr_t,
samples: *const ::std::os::raw::c_char,
is_file: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_subset_format(hdr: *const bcf_hdr_t, rec: *mut bcf1_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_hdr_write(fp: *mut htsFile, h: *mut bcf_hdr_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn vcf_parse(
s: *mut kstring_t,
h: *const bcf_hdr_t,
v: *mut bcf1_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn vcf_open_mode(
mode: *mut ::std::os::raw::c_char,
fn_: *const ::std::os::raw::c_char,
format: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn vcf_format(
h: *const bcf_hdr_t,
v: *const bcf1_t,
s: *mut kstring_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_read(fp: *mut htsFile, h: *const bcf_hdr_t, v: *mut bcf1_t)
-> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_unpack(b: *mut bcf1_t, which: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_dup(src: *mut bcf1_t) -> *mut bcf1_t;
}
unsafe extern "C" {
pub fn bcf_copy(dst: *mut bcf1_t, src: *mut bcf1_t) -> *mut bcf1_t;
}
unsafe extern "C" {
pub fn bcf_write(fp: *mut htsFile, h: *mut bcf_hdr_t, v: *mut bcf1_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn vcf_hdr_read(fp: *mut htsFile) -> *mut bcf_hdr_t;
}
unsafe extern "C" {
pub fn vcf_hdr_write(fp: *mut htsFile, h: *const bcf_hdr_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn vcf_read(fp: *mut htsFile, h: *const bcf_hdr_t, v: *mut bcf1_t)
-> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn vcf_write(
fp: *mut htsFile,
h: *const bcf_hdr_t,
v: *mut bcf1_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_readrec(
fp: *mut BGZF,
null: *mut ::std::os::raw::c_void,
v: *mut ::std::os::raw::c_void,
tid: *mut ::std::os::raw::c_int,
beg: *mut hts_pos_t,
end: *mut hts_pos_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn vcf_write_line(fp: *mut htsFile, line: *mut kstring_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_hdr_dup(hdr: *const bcf_hdr_t) -> *mut bcf_hdr_t;
}
unsafe extern "C" {
pub fn bcf_hdr_combine(dst: *mut bcf_hdr_t, src: *const bcf_hdr_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_hdr_merge(dst: *mut bcf_hdr_t, src: *const bcf_hdr_t) -> *mut bcf_hdr_t;
}
unsafe extern "C" {
pub fn bcf_hdr_add_sample(
hdr: *mut bcf_hdr_t,
sample: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_hdr_set(
hdr: *mut bcf_hdr_t,
fname: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_hdr_format(
hdr: *const bcf_hdr_t,
is_bcf: ::std::os::raw::c_int,
str_: *mut kstring_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_hdr_fmt_text(
hdr: *const bcf_hdr_t,
is_bcf: ::std::os::raw::c_int,
len: *mut ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn bcf_hdr_append(
h: *mut bcf_hdr_t,
line: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_hdr_printf(
h: *mut bcf_hdr_t,
format: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_hdr_get_version(hdr: *const bcf_hdr_t) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn bcf_hdr_set_version(
hdr: *mut bcf_hdr_t,
version: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_hdr_remove(
h: *mut bcf_hdr_t,
type_: ::std::os::raw::c_int,
key: *const ::std::os::raw::c_char,
);
}
unsafe extern "C" {
pub fn bcf_hdr_subset(
h0: *const bcf_hdr_t,
n: ::std::os::raw::c_int,
samples: *const *mut ::std::os::raw::c_char,
imap: *mut ::std::os::raw::c_int,
) -> *mut bcf_hdr_t;
}
unsafe extern "C" {
pub fn bcf_hdr_seqnames(
h: *const bcf_hdr_t,
nseqs: *mut ::std::os::raw::c_int,
) -> *mut *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn bcf_hdr_parse(
hdr: *mut bcf_hdr_t,
htxt: *mut ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_hdr_sync(h: *mut bcf_hdr_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_hdr_parse_line(
h: *const bcf_hdr_t,
line: *const ::std::os::raw::c_char,
len: *mut ::std::os::raw::c_int,
) -> *mut bcf_hrec_t;
}
unsafe extern "C" {
pub fn bcf_hrec_format(hrec: *const bcf_hrec_t, str_: *mut kstring_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_hdr_add_hrec(hdr: *mut bcf_hdr_t, hrec: *mut bcf_hrec_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_hdr_get_hrec(
hdr: *const bcf_hdr_t,
type_: ::std::os::raw::c_int,
key: *const ::std::os::raw::c_char,
value: *const ::std::os::raw::c_char,
str_class: *const ::std::os::raw::c_char,
) -> *mut bcf_hrec_t;
}
unsafe extern "C" {
pub fn bcf_hrec_dup(hrec: *mut bcf_hrec_t) -> *mut bcf_hrec_t;
}
unsafe extern "C" {
pub fn bcf_hrec_add_key(
hrec: *mut bcf_hrec_t,
str_: *const ::std::os::raw::c_char,
len: usize,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_hrec_set_val(
hrec: *mut bcf_hrec_t,
i: ::std::os::raw::c_int,
str_: *const ::std::os::raw::c_char,
len: usize,
is_quoted: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_hrec_find_key(
hrec: *mut bcf_hrec_t,
key: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hrec_add_idx(hrec: *mut bcf_hrec_t, idx: ::std::os::raw::c_int)
-> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_hrec_destroy(hrec: *mut bcf_hrec_t);
}
unsafe extern "C" {
pub fn bcf_subset(
h: *const bcf_hdr_t,
v: *mut bcf1_t,
n: ::std::os::raw::c_int,
imap: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_translate(
dst_hdr: *const bcf_hdr_t,
src_hdr: *mut bcf_hdr_t,
src_line: *mut bcf1_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_get_variant_types(rec: *mut bcf1_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_get_variant_type(
rec: *mut bcf1_t,
ith_allele: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
pub const bcf_variant_match_bcf_match_exact: bcf_variant_match = 0;
pub const bcf_variant_match_bcf_match_overlap: bcf_variant_match = 1;
pub const bcf_variant_match_bcf_match_subset: bcf_variant_match = 2;
pub type bcf_variant_match = ::std::os::raw::c_uint;
unsafe extern "C" {
pub fn bcf_has_variant_types(
rec: *mut bcf1_t,
bitmask: u32,
mode: bcf_variant_match,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_has_variant_type(
rec: *mut bcf1_t,
ith_allele: ::std::os::raw::c_int,
bitmask: u32,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_variant_length(
rec: *mut bcf1_t,
ith_allele: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_is_snp(v: *mut bcf1_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_update_filter(
hdr: *const bcf_hdr_t,
line: *mut bcf1_t,
flt_ids: *mut ::std::os::raw::c_int,
n: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_add_filter(
hdr: *const bcf_hdr_t,
line: *mut bcf1_t,
flt_id: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_remove_filter(
hdr: *const bcf_hdr_t,
line: *mut bcf1_t,
flt_id: ::std::os::raw::c_int,
pass: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_has_filter(
hdr: *const bcf_hdr_t,
line: *mut bcf1_t,
filter: *mut ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_update_alleles(
hdr: *const bcf_hdr_t,
line: *mut bcf1_t,
alleles: *mut *const ::std::os::raw::c_char,
nals: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_update_alleles_str(
hdr: *const bcf_hdr_t,
line: *mut bcf1_t,
alleles_string: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_update_id(
hdr: *const bcf_hdr_t,
line: *mut bcf1_t,
id: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_add_id(
hdr: *const bcf_hdr_t,
line: *mut bcf1_t,
id: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_update_info(
hdr: *const bcf_hdr_t,
line: *mut bcf1_t,
key: *const ::std::os::raw::c_char,
values: *const ::std::os::raw::c_void,
n: ::std::os::raw::c_int,
type_: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_update_format_string(
hdr: *const bcf_hdr_t,
line: *mut bcf1_t,
key: *const ::std::os::raw::c_char,
values: *mut *const ::std::os::raw::c_char,
n: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_update_format(
hdr: *const bcf_hdr_t,
line: *mut bcf1_t,
key: *const ::std::os::raw::c_char,
values: *const ::std::os::raw::c_void,
n: ::std::os::raw::c_int,
type_: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_get_fmt(
hdr: *const bcf_hdr_t,
line: *mut bcf1_t,
key: *const ::std::os::raw::c_char,
) -> *mut bcf_fmt_t;
}
unsafe extern "C" {
pub fn bcf_get_info(
hdr: *const bcf_hdr_t,
line: *mut bcf1_t,
key: *const ::std::os::raw::c_char,
) -> *mut bcf_info_t;
}
unsafe extern "C" {
pub fn bcf_get_fmt_id(line: *mut bcf1_t, id: ::std::os::raw::c_int) -> *mut bcf_fmt_t;
}
unsafe extern "C" {
pub fn bcf_get_info_id(line: *mut bcf1_t, id: ::std::os::raw::c_int) -> *mut bcf_info_t;
}
unsafe extern "C" {
pub fn bcf_get_info_values(
hdr: *const bcf_hdr_t,
line: *mut bcf1_t,
tag: *const ::std::os::raw::c_char,
dst: *mut *mut ::std::os::raw::c_void,
ndst: *mut ::std::os::raw::c_int,
type_: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_get_format_string(
hdr: *const bcf_hdr_t,
line: *mut bcf1_t,
tag: *const ::std::os::raw::c_char,
dst: *mut *mut *mut ::std::os::raw::c_char,
ndst: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_get_format_values(
hdr: *const bcf_hdr_t,
line: *mut bcf1_t,
tag: *const ::std::os::raw::c_char,
dst: *mut *mut ::std::os::raw::c_void,
ndst: *mut ::std::os::raw::c_int,
type_: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_hdr_id2int(
hdr: *const bcf_hdr_t,
type_: ::std::os::raw::c_int,
id: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_fmt_array(
s: *mut kstring_t,
n: ::std::os::raw::c_int,
type_: ::std::os::raw::c_int,
data: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_fmt_sized_array(s: *mut kstring_t, ptr: *mut u8) -> *mut u8;
}
unsafe extern "C" {
pub fn bcf_enc_vchar(
s: *mut kstring_t,
l: ::std::os::raw::c_int,
a: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_enc_vint(
s: *mut kstring_t,
n: ::std::os::raw::c_int,
a: *mut i32,
wsize: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_enc_vfloat(
s: *mut kstring_t,
n: ::std::os::raw::c_int,
a: *mut f32,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_index_load2(
fn_: *const ::std::os::raw::c_char,
fnidx: *const ::std::os::raw::c_char,
) -> *mut hts_idx_t;
}
unsafe extern "C" {
pub fn bcf_index_load3(
fn_: *const ::std::os::raw::c_char,
fnidx: *const ::std::os::raw::c_char,
flags: ::std::os::raw::c_int,
) -> *mut hts_idx_t;
}
unsafe extern "C" {
pub fn bcf_index_build(
fn_: *const ::std::os::raw::c_char,
min_shift: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_index_build2(
fn_: *const ::std::os::raw::c_char,
fnidx: *const ::std::os::raw::c_char,
min_shift: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_index_build3(
fn_: *const ::std::os::raw::c_char,
fnidx: *const ::std::os::raw::c_char,
min_shift: ::std::os::raw::c_int,
n_threads: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_idx_init(
fp: *mut htsFile,
h: *mut bcf_hdr_t,
min_shift: ::std::os::raw::c_int,
fnidx: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_idx_save(fp: *mut htsFile) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub static mut bcf_float_vector_end: u32;
}
unsafe extern "C" {
pub static mut bcf_float_missing: u32;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct sam_hrecs_t {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct sam_hdr_t {
pub n_targets: i32,
pub ignore_sam_err: i32,
pub l_text: usize,
pub target_len: *mut u32,
pub cigar_tab: *const i8,
pub target_name: *mut *mut ::std::os::raw::c_char,
pub text: *mut ::std::os::raw::c_char,
pub sdict: *mut ::std::os::raw::c_void,
pub hrecs: *mut sam_hrecs_t,
pub ref_count: u32,
}
pub type bam_hdr_t = sam_hdr_t;
unsafe extern "C" {
pub static bam_cigar_table: [i8; 256usize];
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bam1_core_t {
pub pos: hts_pos_t,
pub tid: i32,
pub bin: u16,
pub qual: u8,
pub l_extranul: u8,
pub flag: u16,
pub l_qname: u16,
pub n_cigar: u32,
pub l_qseq: i32,
pub mtid: i32,
pub mpos: hts_pos_t,
pub isize_: hts_pos_t,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bam1_t {
pub core: bam1_core_t,
pub id: u64,
pub data: *mut u8,
pub l_data: ::std::os::raw::c_int,
pub m_data: u32,
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
pub __bindgen_padding_0: u32,
}
impl bam1_t {
#[inline]
pub fn mempolicy(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 2u8) as u32) }
}
#[inline]
pub fn set_mempolicy(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(0usize, 2u8, val as u64)
}
}
#[inline]
pub unsafe fn mempolicy_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
0usize,
2u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_mempolicy_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
0usize,
2u8,
val as u64,
)
}
}
#[inline]
pub fn new_bitfield_1(mempolicy: u32) -> __BindgenBitfieldUnit<[u8; 4usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 2u8, {
let mempolicy: u32 = unsafe { ::std::mem::transmute(mempolicy) };
mempolicy as u64
});
__bindgen_bitfield_unit
}
}
unsafe extern "C" {
pub fn sam_hdr_init() -> *mut sam_hdr_t;
}
unsafe extern "C" {
pub fn bam_hdr_read(fp: *mut BGZF) -> *mut sam_hdr_t;
}
unsafe extern "C" {
pub fn bam_hdr_write(fp: *mut BGZF, h: *const sam_hdr_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_destroy(h: *mut sam_hdr_t);
}
unsafe extern "C" {
pub fn sam_hdr_dup(h0: *const sam_hdr_t) -> *mut sam_hdr_t;
}
pub type samFile = htsFile;
unsafe extern "C" {
pub fn sam_hdr_parse(l_text: usize, text: *const ::std::os::raw::c_char) -> *mut sam_hdr_t;
}
unsafe extern "C" {
pub fn sam_hdr_read(fp: *mut samFile) -> *mut sam_hdr_t;
}
unsafe extern "C" {
pub fn sam_hdr_write(fp: *mut samFile, h: *const sam_hdr_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_length(h: *mut sam_hdr_t) -> usize;
}
unsafe extern "C" {
pub fn sam_hdr_str(h: *mut sam_hdr_t) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn sam_hdr_nref(h: *const sam_hdr_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_add_lines(
h: *mut sam_hdr_t,
lines: *const ::std::os::raw::c_char,
len: usize,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_add_line(
h: *mut sam_hdr_t,
type_: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_find_line_id(
h: *mut sam_hdr_t,
type_: *const ::std::os::raw::c_char,
ID_key: *const ::std::os::raw::c_char,
ID_val: *const ::std::os::raw::c_char,
ks: *mut kstring_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_find_line_pos(
h: *mut sam_hdr_t,
type_: *const ::std::os::raw::c_char,
pos: ::std::os::raw::c_int,
ks: *mut kstring_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_remove_line_id(
h: *mut sam_hdr_t,
type_: *const ::std::os::raw::c_char,
ID_key: *const ::std::os::raw::c_char,
ID_value: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_remove_line_pos(
h: *mut sam_hdr_t,
type_: *const ::std::os::raw::c_char,
position: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_update_line(
h: *mut sam_hdr_t,
type_: *const ::std::os::raw::c_char,
ID_key: *const ::std::os::raw::c_char,
ID_value: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_remove_except(
h: *mut sam_hdr_t,
type_: *const ::std::os::raw::c_char,
ID_key: *const ::std::os::raw::c_char,
ID_value: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_remove_lines(
h: *mut sam_hdr_t,
type_: *const ::std::os::raw::c_char,
id: *const ::std::os::raw::c_char,
rh: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_count_lines(
h: *mut sam_hdr_t,
type_: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_line_index(
bh: *mut sam_hdr_t,
type_: *const ::std::os::raw::c_char,
key: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_line_name(
bh: *mut sam_hdr_t,
type_: *const ::std::os::raw::c_char,
pos: ::std::os::raw::c_int,
) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn sam_hdr_find_tag_id(
h: *mut sam_hdr_t,
type_: *const ::std::os::raw::c_char,
ID_key: *const ::std::os::raw::c_char,
ID_value: *const ::std::os::raw::c_char,
key: *const ::std::os::raw::c_char,
ks: *mut kstring_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_find_tag_pos(
h: *mut sam_hdr_t,
type_: *const ::std::os::raw::c_char,
pos: ::std::os::raw::c_int,
key: *const ::std::os::raw::c_char,
ks: *mut kstring_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_remove_tag_id(
h: *mut sam_hdr_t,
type_: *const ::std::os::raw::c_char,
ID_key: *const ::std::os::raw::c_char,
ID_value: *const ::std::os::raw::c_char,
key: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_name2tid(
h: *mut sam_hdr_t,
ref_: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_hdr_tid2name(
h: *const sam_hdr_t,
tid: ::std::os::raw::c_int,
) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn sam_hdr_tid2len(h: *const sam_hdr_t, tid: ::std::os::raw::c_int) -> hts_pos_t;
}
unsafe extern "C" {
pub fn sam_hdr_pg_id(
h: *mut sam_hdr_t,
name: *const ::std::os::raw::c_char,
) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn sam_hdr_add_pg(
h: *mut sam_hdr_t,
name: *const ::std::os::raw::c_char,
...
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn stringify_argv(
argc: ::std::os::raw::c_int,
argv: *mut *mut ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn sam_hdr_incr_ref(h: *mut sam_hdr_t);
}
unsafe extern "C" {
pub fn bam_init1() -> *mut bam1_t;
}
unsafe extern "C" {
pub fn bam_destroy1(b: *mut bam1_t);
}
unsafe extern "C" {
pub fn bam_read1(fp: *mut BGZF, b: *mut bam1_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_write1(fp: *mut BGZF, b: *const bam1_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_copy1(bdst: *mut bam1_t, bsrc: *const bam1_t) -> *mut bam1_t;
}
unsafe extern "C" {
pub fn bam_dup1(bsrc: *const bam1_t) -> *mut bam1_t;
}
unsafe extern "C" {
pub fn bam_set1(
bam: *mut bam1_t,
l_qname: usize,
qname: *const ::std::os::raw::c_char,
flag: u16,
tid: i32,
pos: hts_pos_t,
mapq: u8,
n_cigar: usize,
cigar: *const u32,
mtid: i32,
mpos: hts_pos_t,
isize_: hts_pos_t,
l_seq: usize,
seq: *const ::std::os::raw::c_char,
qual: *const ::std::os::raw::c_char,
l_aux: usize,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_cigar2qlen(n_cigar: ::std::os::raw::c_int, cigar: *const u32) -> hts_pos_t;
}
unsafe extern "C" {
pub fn bam_cigar2rlen(n_cigar: ::std::os::raw::c_int, cigar: *const u32) -> hts_pos_t;
}
unsafe extern "C" {
pub fn bam_endpos(b: *const bam1_t) -> hts_pos_t;
}
unsafe extern "C" {
pub fn bam_str2flag(str_: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_flag2str(flag: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn bam_set_qname(
b: *mut bam1_t,
qname: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_parse_cigar(
in_: *const ::std::os::raw::c_char,
end: *mut *mut ::std::os::raw::c_char,
a_cigar: *mut *mut u32,
a_mem: *mut usize,
) -> isize;
}
unsafe extern "C" {
pub fn bam_parse_cigar(
in_: *const ::std::os::raw::c_char,
end: *mut *mut ::std::os::raw::c_char,
b: *mut bam1_t,
) -> isize;
}
unsafe extern "C" {
pub fn sam_idx_init(
fp: *mut htsFile,
h: *mut sam_hdr_t,
min_shift: ::std::os::raw::c_int,
fnidx: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_idx_save(fp: *mut htsFile) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_index_load(fp: *mut htsFile, fn_: *const ::std::os::raw::c_char) -> *mut hts_idx_t;
}
unsafe extern "C" {
pub fn sam_index_load2(
fp: *mut htsFile,
fn_: *const ::std::os::raw::c_char,
fnidx: *const ::std::os::raw::c_char,
) -> *mut hts_idx_t;
}
unsafe extern "C" {
pub fn sam_index_load3(
fp: *mut htsFile,
fn_: *const ::std::os::raw::c_char,
fnidx: *const ::std::os::raw::c_char,
flags: ::std::os::raw::c_int,
) -> *mut hts_idx_t;
}
unsafe extern "C" {
pub fn sam_index_build(
fn_: *const ::std::os::raw::c_char,
min_shift: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_index_build2(
fn_: *const ::std::os::raw::c_char,
fnidx: *const ::std::os::raw::c_char,
min_shift: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_index_build3(
fn_: *const ::std::os::raw::c_char,
fnidx: *const ::std::os::raw::c_char,
min_shift: ::std::os::raw::c_int,
nthreads: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_itr_queryi(
idx: *const hts_idx_t,
tid: ::std::os::raw::c_int,
beg: hts_pos_t,
end: hts_pos_t,
) -> *mut hts_itr_t;
}
unsafe extern "C" {
pub fn sam_itr_querys(
idx: *const hts_idx_t,
hdr: *mut sam_hdr_t,
region: *const ::std::os::raw::c_char,
) -> *mut hts_itr_t;
}
unsafe extern "C" {
pub fn sam_itr_regions(
idx: *const hts_idx_t,
hdr: *mut sam_hdr_t,
reglist: *mut hts_reglist_t,
regcount: ::std::os::raw::c_uint,
) -> *mut hts_itr_t;
}
unsafe extern "C" {
pub fn sam_itr_regarray(
idx: *const hts_idx_t,
hdr: *mut sam_hdr_t,
regarray: *mut *mut ::std::os::raw::c_char,
regcount: ::std::os::raw::c_uint,
) -> *mut hts_itr_t;
}
unsafe extern "C" {
pub fn sam_parse_region(
h: *mut sam_hdr_t,
s: *const ::std::os::raw::c_char,
tid: *mut ::std::os::raw::c_int,
beg: *mut hts_pos_t,
end: *mut hts_pos_t,
flags: ::std::os::raw::c_int,
) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn sam_open_mode(
mode: *mut ::std::os::raw::c_char,
fn_: *const ::std::os::raw::c_char,
format: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_open_mode_opts(
fn_: *const ::std::os::raw::c_char,
mode: *const ::std::os::raw::c_char,
format: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn sam_hdr_change_HD(
h: *mut sam_hdr_t,
key: *const ::std::os::raw::c_char,
val: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_parse1(
s: *mut kstring_t,
h: *mut sam_hdr_t,
b: *mut bam1_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_format1(
h: *const sam_hdr_t,
b: *const bam1_t,
str_: *mut kstring_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_read1(fp: *mut samFile, h: *mut sam_hdr_t, b: *mut bam1_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_write1(
fp: *mut samFile,
h: *const sam_hdr_t,
b: *const bam1_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn sam_passes_filter(
h: *const sam_hdr_t,
b: *const bam1_t,
filt: *mut hts_filter_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_aux_first(b: *const bam1_t) -> *mut u8;
}
unsafe extern "C" {
pub fn bam_aux_next(b: *const bam1_t, s: *const u8) -> *mut u8;
}
unsafe extern "C" {
pub fn bam_aux_get(b: *const bam1_t, tag: *const ::std::os::raw::c_char) -> *mut u8;
}
unsafe extern "C" {
pub fn bam_aux2i(s: *const u8) -> i64;
}
unsafe extern "C" {
pub fn bam_aux2f(s: *const u8) -> f64;
}
unsafe extern "C" {
pub fn bam_aux2A(s: *const u8) -> ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn bam_aux2Z(s: *const u8) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn bam_auxB_len(s: *const u8) -> u32;
}
unsafe extern "C" {
pub fn bam_auxB2i(s: *const u8, idx: u32) -> i64;
}
unsafe extern "C" {
pub fn bam_auxB2f(s: *const u8, idx: u32) -> f64;
}
unsafe extern "C" {
pub fn bam_aux_append(
b: *mut bam1_t,
tag: *const ::std::os::raw::c_char,
type_: ::std::os::raw::c_char,
len: ::std::os::raw::c_int,
data: *const u8,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_aux_del(b: *mut bam1_t, s: *mut u8) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_aux_remove(b: *mut bam1_t, s: *mut u8) -> *mut u8;
}
unsafe extern "C" {
pub fn bam_aux_update_str(
b: *mut bam1_t,
tag: *const ::std::os::raw::c_char,
len: ::std::os::raw::c_int,
data: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_aux_update_int(
b: *mut bam1_t,
tag: *const ::std::os::raw::c_char,
val: i64,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_aux_update_float(
b: *mut bam1_t,
tag: *const ::std::os::raw::c_char,
val: f32,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_aux_update_array(
b: *mut bam1_t,
tag: *const ::std::os::raw::c_char,
type_: u8,
items: u32,
data: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union bam_pileup_cd {
pub p: *mut ::std::os::raw::c_void,
pub i: i64,
pub f: f64,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct bam_pileup1_t {
pub b: *mut bam1_t,
pub qpos: i32,
pub indel: ::std::os::raw::c_int,
pub level: ::std::os::raw::c_int,
pub _bitfield_align_1: [u32; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
pub cd: bam_pileup_cd,
pub cigar_ind: ::std::os::raw::c_int,
}
impl bam_pileup1_t {
#[inline]
pub fn is_del(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_del(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(0usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_del_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
0usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_del_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
0usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_head(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_head(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(1usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_head_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
1usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_head_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
1usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_tail(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_tail(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(2usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_tail_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
2usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_tail_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
2usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_refskip(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_refskip(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(3usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_refskip_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
3usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_refskip_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
3usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn aux(&self) -> u32 {
unsafe { ::std::mem::transmute(self._bitfield_1.get(5usize, 27u8) as u32) }
}
#[inline]
pub fn set_aux(&mut self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(5usize, 27u8, val as u64)
}
}
#[inline]
pub unsafe fn aux_raw(this: *const Self) -> u32 {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
5usize,
27u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_aux_raw(this: *mut Self, val: u32) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
5usize,
27u8,
val as u64,
)
}
}
#[inline]
pub fn new_bitfield_1(
is_del: u32,
is_head: u32,
is_tail: u32,
is_refskip: u32,
aux: u32,
) -> __BindgenBitfieldUnit<[u8; 4usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 1u8, {
let is_del: u32 = unsafe { ::std::mem::transmute(is_del) };
is_del as u64
});
__bindgen_bitfield_unit.set(1usize, 1u8, {
let is_head: u32 = unsafe { ::std::mem::transmute(is_head) };
is_head as u64
});
__bindgen_bitfield_unit.set(2usize, 1u8, {
let is_tail: u32 = unsafe { ::std::mem::transmute(is_tail) };
is_tail as u64
});
__bindgen_bitfield_unit.set(3usize, 1u8, {
let is_refskip: u32 = unsafe { ::std::mem::transmute(is_refskip) };
is_refskip as u64
});
__bindgen_bitfield_unit.set(5usize, 27u8, {
let aux: u32 = unsafe { ::std::mem::transmute(aux) };
aux as u64
});
__bindgen_bitfield_unit
}
}
pub type bam_plp_auto_f = ::std::option::Option<
unsafe extern "C" fn(
data: *mut ::std::os::raw::c_void,
b: *mut bam1_t,
) -> ::std::os::raw::c_int,
>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bam_plp_s {
_unused: [u8; 0],
}
pub type bam_plp_t = *mut bam_plp_s;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bam_mplp_s {
_unused: [u8; 0],
}
pub type bam_mplp_t = *mut bam_mplp_s;
unsafe extern "C" {
pub fn bam_plp_init(func: bam_plp_auto_f, data: *mut ::std::os::raw::c_void) -> bam_plp_t;
}
unsafe extern "C" {
pub fn bam_plp_destroy(iter: bam_plp_t);
}
unsafe extern "C" {
pub fn bam_plp_push(iter: bam_plp_t, b: *const bam1_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_plp_next(
iter: bam_plp_t,
_tid: *mut ::std::os::raw::c_int,
_pos: *mut ::std::os::raw::c_int,
_n_plp: *mut ::std::os::raw::c_int,
) -> *const bam_pileup1_t;
}
unsafe extern "C" {
pub fn bam_plp_auto(
iter: bam_plp_t,
_tid: *mut ::std::os::raw::c_int,
_pos: *mut ::std::os::raw::c_int,
_n_plp: *mut ::std::os::raw::c_int,
) -> *const bam_pileup1_t;
}
unsafe extern "C" {
pub fn bam_plp64_next(
iter: bam_plp_t,
_tid: *mut ::std::os::raw::c_int,
_pos: *mut hts_pos_t,
_n_plp: *mut ::std::os::raw::c_int,
) -> *const bam_pileup1_t;
}
unsafe extern "C" {
pub fn bam_plp64_auto(
iter: bam_plp_t,
_tid: *mut ::std::os::raw::c_int,
_pos: *mut hts_pos_t,
_n_plp: *mut ::std::os::raw::c_int,
) -> *const bam_pileup1_t;
}
unsafe extern "C" {
pub fn bam_plp_set_maxcnt(iter: bam_plp_t, maxcnt: ::std::os::raw::c_int);
}
unsafe extern "C" {
pub fn bam_plp_reset(iter: bam_plp_t);
}
unsafe extern "C" {
pub fn bam_plp_constructor(
plp: bam_plp_t,
func: ::std::option::Option<
unsafe extern "C" fn(
data: *mut ::std::os::raw::c_void,
b: *const bam1_t,
cd: *mut bam_pileup_cd,
) -> ::std::os::raw::c_int,
>,
);
}
unsafe extern "C" {
pub fn bam_plp_destructor(
plp: bam_plp_t,
func: ::std::option::Option<
unsafe extern "C" fn(
data: *mut ::std::os::raw::c_void,
b: *const bam1_t,
cd: *mut bam_pileup_cd,
) -> ::std::os::raw::c_int,
>,
);
}
unsafe extern "C" {
pub fn bam_plp_insertion(
p: *const bam_pileup1_t,
ins: *mut kstring_t,
del_len: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct hts_base_mod_state {
_unused: [u8; 0],
}
unsafe extern "C" {
pub fn bam_plp_insertion_mod(
p: *const bam_pileup1_t,
m: *mut hts_base_mod_state,
ins: *mut kstring_t,
del_len: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_mplp_init(
n: ::std::os::raw::c_int,
func: bam_plp_auto_f,
data: *mut *mut ::std::os::raw::c_void,
) -> bam_mplp_t;
}
unsafe extern "C" {
pub fn bam_mplp_init_overlaps(iter: bam_mplp_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_mplp_destroy(iter: bam_mplp_t);
}
unsafe extern "C" {
pub fn bam_mplp_set_maxcnt(iter: bam_mplp_t, maxcnt: ::std::os::raw::c_int);
}
unsafe extern "C" {
pub fn bam_mplp_auto(
iter: bam_mplp_t,
_tid: *mut ::std::os::raw::c_int,
_pos: *mut ::std::os::raw::c_int,
n_plp: *mut ::std::os::raw::c_int,
plp: *mut *const bam_pileup1_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_mplp64_auto(
iter: bam_mplp_t,
_tid: *mut ::std::os::raw::c_int,
_pos: *mut hts_pos_t,
n_plp: *mut ::std::os::raw::c_int,
plp: *mut *const bam_pileup1_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_mplp_reset(iter: bam_mplp_t);
}
unsafe extern "C" {
pub fn bam_mplp_constructor(
iter: bam_mplp_t,
func: ::std::option::Option<
unsafe extern "C" fn(
data: *mut ::std::os::raw::c_void,
b: *const bam1_t,
cd: *mut bam_pileup_cd,
) -> ::std::os::raw::c_int,
>,
);
}
unsafe extern "C" {
pub fn bam_mplp_destructor(
iter: bam_mplp_t,
func: ::std::option::Option<
unsafe extern "C" fn(
data: *mut ::std::os::raw::c_void,
b: *const bam1_t,
cd: *mut bam_pileup_cd,
) -> ::std::os::raw::c_int,
>,
);
}
unsafe extern "C" {
pub fn sam_cap_mapq(
b: *mut bam1_t,
ref_: *const ::std::os::raw::c_char,
ref_len: hts_pos_t,
thres: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
pub const htsRealnFlags_BAQ_APPLY: htsRealnFlags = 1;
pub const htsRealnFlags_BAQ_EXTEND: htsRealnFlags = 2;
pub const htsRealnFlags_BAQ_REDO: htsRealnFlags = 4;
pub const htsRealnFlags_BAQ_AUTO: htsRealnFlags = 0;
pub const htsRealnFlags_BAQ_ILLUMINA: htsRealnFlags = 8;
pub const htsRealnFlags_BAQ_PACBIOCCS: htsRealnFlags = 16;
pub const htsRealnFlags_BAQ_PACBIO: htsRealnFlags = 24;
pub const htsRealnFlags_BAQ_ONT: htsRealnFlags = 32;
pub const htsRealnFlags_BAQ_GENAPSYS: htsRealnFlags = 40;
pub type htsRealnFlags = ::std::os::raw::c_uint;
unsafe extern "C" {
pub fn sam_prob_realn(
b: *mut bam1_t,
ref_: *const ::std::os::raw::c_char,
ref_len: hts_pos_t,
flag: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct hts_base_mod {
pub modified_base: ::std::os::raw::c_int,
pub canonical_base: ::std::os::raw::c_int,
pub strand: ::std::os::raw::c_int,
pub qual: ::std::os::raw::c_int,
}
unsafe extern "C" {
pub fn hts_base_mod_state_alloc() -> *mut hts_base_mod_state;
}
unsafe extern "C" {
pub fn hts_base_mod_state_free(state: *mut hts_base_mod_state);
}
unsafe extern "C" {
pub fn bam_parse_basemod(
b: *const bam1_t,
state: *mut hts_base_mod_state,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_parse_basemod2(
b: *const bam1_t,
state: *mut hts_base_mod_state,
flags: u32,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_mods_at_next_pos(
b: *const bam1_t,
state: *mut hts_base_mod_state,
mods: *mut hts_base_mod,
n_mods: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_next_basemod(
b: *const bam1_t,
state: *mut hts_base_mod_state,
mods: *mut hts_base_mod,
n_mods: ::std::os::raw::c_int,
pos: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_mods_at_qpos(
b: *const bam1_t,
qpos: ::std::os::raw::c_int,
state: *mut hts_base_mod_state,
mods: *mut hts_base_mod,
n_mods: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_mods_query_type(
state: *mut hts_base_mod_state,
code: ::std::os::raw::c_int,
strand: *mut ::std::os::raw::c_int,
implicit: *mut ::std::os::raw::c_int,
canonical: *mut ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_mods_queryi(
state: *mut hts_base_mod_state,
i: ::std::os::raw::c_int,
strand: *mut ::std::os::raw::c_int,
implicit: *mut ::std::os::raw::c_int,
canonical: *mut ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bam_mods_recorded(
state: *mut hts_base_mod_state,
ntype: *mut ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct hFILE_backend {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct hFILE {
pub buffer: *mut ::std::os::raw::c_char,
pub begin: *mut ::std::os::raw::c_char,
pub end: *mut ::std::os::raw::c_char,
pub limit: *mut ::std::os::raw::c_char,
pub backend: *const hFILE_backend,
pub offset: off_t,
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
pub has_errno: ::std::os::raw::c_int,
}
impl hFILE {
#[inline]
pub fn at_eof(&self) -> ::std::os::raw::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
}
#[inline]
pub fn set_at_eof(&mut self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(0usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn at_eof_raw(this: *const Self) -> ::std::os::raw::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
0usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_at_eof_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
0usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn mobile(&self) -> ::std::os::raw::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
}
#[inline]
pub fn set_mobile(&mut self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(1usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn mobile_raw(this: *const Self) -> ::std::os::raw::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
1usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_mobile_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
1usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn readonly(&self) -> ::std::os::raw::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
}
#[inline]
pub fn set_readonly(&mut self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(2usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn readonly_raw(this: *const Self) -> ::std::os::raw::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
2usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_readonly_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
2usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn preserve(&self) -> ::std::os::raw::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
}
#[inline]
pub fn set_preserve(&mut self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(3usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn preserve_raw(this: *const Self) -> ::std::os::raw::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
3usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_preserve_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
3usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn new_bitfield_1(
at_eof: ::std::os::raw::c_uint,
mobile: ::std::os::raw::c_uint,
readonly: ::std::os::raw::c_uint,
preserve: ::std::os::raw::c_uint,
) -> __BindgenBitfieldUnit<[u8; 1usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 1u8, {
let at_eof: u32 = unsafe { ::std::mem::transmute(at_eof) };
at_eof as u64
});
__bindgen_bitfield_unit.set(1usize, 1u8, {
let mobile: u32 = unsafe { ::std::mem::transmute(mobile) };
mobile as u64
});
__bindgen_bitfield_unit.set(2usize, 1u8, {
let readonly: u32 = unsafe { ::std::mem::transmute(readonly) };
readonly as u64
});
__bindgen_bitfield_unit.set(3usize, 1u8, {
let preserve: u32 = unsafe { ::std::mem::transmute(preserve) };
preserve as u64
});
__bindgen_bitfield_unit
}
}
unsafe extern "C" {
pub fn hopen(
filename: *const ::std::os::raw::c_char,
mode: *const ::std::os::raw::c_char,
...
) -> *mut hFILE;
}
unsafe extern "C" {
pub fn hdopen(fd: ::std::os::raw::c_int, mode: *const ::std::os::raw::c_char) -> *mut hFILE;
}
unsafe extern "C" {
pub fn hisremote(filename: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn haddextension(
buffer: *mut kstring_t,
filename: *const ::std::os::raw::c_char,
replace: ::std::os::raw::c_int,
extension: *const ::std::os::raw::c_char,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn hclose(fp: *mut hFILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hclose_abruptly(fp: *mut hFILE);
}
unsafe extern "C" {
pub fn hseek(fp: *mut hFILE, offset: off_t, whence: ::std::os::raw::c_int) -> off_t;
}
unsafe extern "C" {
pub fn hgetdelim(
buffer: *mut ::std::os::raw::c_char,
size: usize,
delim: ::std::os::raw::c_int,
fp: *mut hFILE,
) -> isize;
}
unsafe extern "C" {
pub fn hgets(
buffer: *mut ::std::os::raw::c_char,
size: ::std::os::raw::c_int,
fp: *mut hFILE,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn hpeek(fp: *mut hFILE, buffer: *mut ::std::os::raw::c_void, nbytes: usize) -> isize;
}
unsafe extern "C" {
pub fn hflush(fp: *mut hFILE) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hfile_mem_get_buffer(
file: *mut hFILE,
length: *mut usize,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn hfile_mem_steal_buffer(
file: *mut hFILE,
length: *mut usize,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn hfile_list_schemes(
plugin: *const ::std::os::raw::c_char,
sc_list: *mut *const ::std::os::raw::c_char,
nschemes: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hfile_list_plugins(
plist: *mut *const ::std::os::raw::c_char,
nplugins: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hfile_has_plugin(name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
pub const cram_block_method_CRAM_COMP_UNKNOWN: cram_block_method = -1;
pub const cram_block_method_CRAM_COMP_RAW: cram_block_method = 0;
pub const cram_block_method_CRAM_COMP_GZIP: cram_block_method = 1;
pub const cram_block_method_CRAM_COMP_BZIP2: cram_block_method = 2;
pub const cram_block_method_CRAM_COMP_LZMA: cram_block_method = 3;
pub const cram_block_method_CRAM_COMP_RANS4x8: cram_block_method = 4;
pub const cram_block_method_CRAM_COMP_RANSNx16: cram_block_method = 5;
pub const cram_block_method_CRAM_COMP_ARITH: cram_block_method = 6;
pub const cram_block_method_CRAM_COMP_FQZ: cram_block_method = 7;
pub const cram_block_method_CRAM_COMP_TOK3: cram_block_method = 8;
pub type cram_block_method = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cram_method_details {
pub method: cram_block_method,
pub level: ::std::os::raw::c_int,
pub order: ::std::os::raw::c_int,
pub rle: ::std::os::raw::c_int,
pub pack: ::std::os::raw::c_int,
pub stripe: ::std::os::raw::c_int,
pub cat: ::std::os::raw::c_int,
pub nosz: ::std::os::raw::c_int,
pub Nway: ::std::os::raw::c_int,
pub ext: ::std::os::raw::c_int,
}
pub const cram_content_type_CT_ERROR: cram_content_type = -1;
pub const cram_content_type_FILE_HEADER: cram_content_type = 0;
pub const cram_content_type_COMPRESSION_HEADER: cram_content_type = 1;
pub const cram_content_type_MAPPED_SLICE: cram_content_type = 2;
pub const cram_content_type_UNMAPPED_SLICE: cram_content_type = 3;
pub const cram_content_type_EXTERNAL: cram_content_type = 4;
pub const cram_content_type_CORE: cram_content_type = 5;
pub type cram_content_type = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cram_file_def {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cram_container {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cram_block {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cram_slice {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cram_metrics {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cram_block_slice_hdr {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cram_block_compression_hdr {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cram_codec {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct refs_t {
_unused: [u8; 0],
}
unsafe extern "C" {
pub fn cram_fd_get_header(fd: *mut cram_fd) -> *mut sam_hdr_t;
}
unsafe extern "C" {
pub fn cram_fd_set_header(fd: *mut cram_fd, hdr: *mut sam_hdr_t);
}
unsafe extern "C" {
pub fn cram_fd_get_version(fd: *mut cram_fd) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_fd_set_version(fd: *mut cram_fd, vers: ::std::os::raw::c_int);
}
unsafe extern "C" {
pub fn cram_major_vers(fd: *mut cram_fd) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_minor_vers(fd: *mut cram_fd) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_fd_get_fp(fd: *mut cram_fd) -> *mut hFILE;
}
unsafe extern "C" {
pub fn cram_fd_set_fp(fd: *mut cram_fd, fp: *mut hFILE);
}
unsafe extern "C" {
pub fn cram_container_get_length(c: *mut cram_container) -> i32;
}
unsafe extern "C" {
pub fn cram_container_set_length(c: *mut cram_container, length: i32);
}
unsafe extern "C" {
pub fn cram_container_get_num_blocks(c: *mut cram_container) -> i32;
}
unsafe extern "C" {
pub fn cram_container_set_num_blocks(c: *mut cram_container, num_blocks: i32);
}
unsafe extern "C" {
pub fn cram_container_get_landmarks(
c: *mut cram_container,
num_landmarks: *mut i32,
) -> *mut i32;
}
unsafe extern "C" {
pub fn cram_container_set_landmarks(
c: *mut cram_container,
num_landmarks: i32,
landmarks: *mut i32,
);
}
unsafe extern "C" {
pub fn cram_container_get_num_records(c: *mut cram_container) -> i32;
}
unsafe extern "C" {
pub fn cram_container_get_num_bases(c: *mut cram_container) -> i64;
}
unsafe extern "C" {
pub fn cram_container_is_empty(fd: *mut cram_fd) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_block_get_content_id(b: *mut cram_block) -> i32;
}
unsafe extern "C" {
pub fn cram_block_get_comp_size(b: *mut cram_block) -> i32;
}
unsafe extern "C" {
pub fn cram_block_get_uncomp_size(b: *mut cram_block) -> i32;
}
unsafe extern "C" {
pub fn cram_block_get_crc32(b: *mut cram_block) -> i32;
}
unsafe extern "C" {
pub fn cram_block_get_data(b: *mut cram_block) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn cram_block_get_content_type(b: *mut cram_block) -> cram_content_type;
}
unsafe extern "C" {
pub fn cram_block_get_method(b: *mut cram_block) -> cram_block_method;
}
unsafe extern "C" {
pub fn cram_expand_method(
data: *mut u8,
size: i32,
comp: cram_block_method,
) -> *mut cram_method_details;
}
unsafe extern "C" {
pub fn cram_block_set_content_id(b: *mut cram_block, id: i32);
}
unsafe extern "C" {
pub fn cram_block_set_comp_size(b: *mut cram_block, size: i32);
}
unsafe extern "C" {
pub fn cram_block_set_uncomp_size(b: *mut cram_block, size: i32);
}
unsafe extern "C" {
pub fn cram_block_set_crc32(b: *mut cram_block, crc: i32);
}
unsafe extern "C" {
pub fn cram_block_set_data(b: *mut cram_block, data: *mut ::std::os::raw::c_void);
}
unsafe extern "C" {
pub fn cram_block_append(
b: *mut cram_block,
data: *const ::std::os::raw::c_void,
size: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_block_update_size(b: *mut cram_block);
}
unsafe extern "C" {
pub fn cram_block_get_offset(b: *mut cram_block) -> usize;
}
unsafe extern "C" {
pub fn cram_block_set_offset(b: *mut cram_block, offset: usize);
}
unsafe extern "C" {
pub fn cram_block_size(b: *mut cram_block) -> u32;
}
unsafe extern "C" {
pub fn cram_codec_get_content_ids(c: *mut cram_codec, ids: *mut ::std::os::raw::c_int);
}
unsafe extern "C" {
pub fn cram_codec_describe(c: *mut cram_codec, ks: *mut kstring_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_transcode_rg(
in_: *mut cram_fd,
out: *mut cram_fd,
c: *mut cram_container,
nrg: ::std::os::raw::c_int,
in_rg: *mut ::std::os::raw::c_int,
out_rg: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_copy_slice(
in_: *mut cram_fd,
out: *mut cram_fd,
num_slice: i32,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_decode_compression_header(
fd: *mut cram_fd,
b: *mut cram_block,
) -> *mut cram_block_compression_hdr;
}
unsafe extern "C" {
pub fn cram_free_compression_header(hdr: *mut cram_block_compression_hdr);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct cram_cid2ds_t {
_unused: [u8; 0],
}
unsafe extern "C" {
pub fn cram_update_cid2ds_map(
hdr: *mut cram_block_compression_hdr,
cid2ds: *mut cram_cid2ds_t,
) -> *mut cram_cid2ds_t;
}
unsafe extern "C" {
pub fn cram_cid2ds_query(
c2d: *mut cram_cid2ds_t,
content_id: ::std::os::raw::c_int,
n: *mut ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_cid2ds_free(cid2ds: *mut cram_cid2ds_t);
}
unsafe extern "C" {
pub fn cram_describe_encodings(
hdr: *mut cram_block_compression_hdr,
ks: *mut kstring_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_slice_hdr_get_num_blocks(hdr: *mut cram_block_slice_hdr) -> i32;
}
unsafe extern "C" {
pub fn cram_slice_hdr_get_embed_ref_id(h: *mut cram_block_slice_hdr) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_slice_hdr_get_coords(
h: *mut cram_block_slice_hdr,
refid: *mut ::std::os::raw::c_int,
start: *mut hts_pos_t,
span: *mut hts_pos_t,
);
}
unsafe extern "C" {
pub fn cram_decode_slice_header(
fd: *mut cram_fd,
b: *mut cram_block,
) -> *mut cram_block_slice_hdr;
}
unsafe extern "C" {
pub fn cram_free_slice_header(hdr: *mut cram_block_slice_hdr);
}
unsafe extern "C" {
pub fn cram_new_block(
content_type: cram_content_type,
content_id: ::std::os::raw::c_int,
) -> *mut cram_block;
}
unsafe extern "C" {
pub fn cram_read_block(fd: *mut cram_fd) -> *mut cram_block;
}
unsafe extern "C" {
pub fn cram_write_block(fd: *mut cram_fd, b: *mut cram_block) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_free_block(b: *mut cram_block);
}
unsafe extern "C" {
pub fn cram_uncompress_block(b: *mut cram_block) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_compress_block(
fd: *mut cram_fd,
b: *mut cram_block,
metrics: *mut cram_metrics,
method: ::std::os::raw::c_int,
level: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_compress_block2(
fd: *mut cram_fd,
s: *mut cram_slice,
b: *mut cram_block,
metrics: *mut cram_metrics,
method: ::std::os::raw::c_int,
level: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_new_container(
nrec: ::std::os::raw::c_int,
nslice: ::std::os::raw::c_int,
) -> *mut cram_container;
}
unsafe extern "C" {
pub fn cram_free_container(c: *mut cram_container);
}
unsafe extern "C" {
pub fn cram_read_container(fd: *mut cram_fd) -> *mut cram_container;
}
unsafe extern "C" {
pub fn cram_write_container(fd: *mut cram_fd, h: *mut cram_container) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_store_container(
fd: *mut cram_fd,
c: *mut cram_container,
dat: *mut ::std::os::raw::c_char,
size: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_container_size(c: *mut cram_container) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_open(
filename: *const ::std::os::raw::c_char,
mode: *const ::std::os::raw::c_char,
) -> *mut cram_fd;
}
unsafe extern "C" {
pub fn cram_dopen(
fp: *mut hFILE,
filename: *const ::std::os::raw::c_char,
mode: *const ::std::os::raw::c_char,
) -> *mut cram_fd;
}
unsafe extern "C" {
pub fn cram_close(fd: *mut cram_fd) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_seek(
fd: *mut cram_fd,
offset: off_t,
whence: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_flush(fd: *mut cram_fd) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_eof(fd: *mut cram_fd) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_set_option(fd: *mut cram_fd, opt: hts_fmt_option, ...) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_set_voption(
fd: *mut cram_fd,
opt: hts_fmt_option,
args: *mut __va_list_tag,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_set_header(fd: *mut cram_fd, hdr: *mut sam_hdr_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn cram_check_EOF(fd: *mut cram_fd) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn int32_put_blk(b: *mut cram_block, val: i32) -> ::std::os::raw::c_int;
}
pub type SAM_hdr = sam_hdr_t;
unsafe extern "C" {
pub fn cram_get_refs(fd: *mut htsFile) -> *mut refs_t;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bgzf_mtaux_t {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bgzidx_t {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bgzf_cache_t {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct z_stream_s {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct BGZF {
pub _bitfield_align_1: [u16; 0],
pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
pub cache_size: ::std::os::raw::c_int,
pub block_length: ::std::os::raw::c_int,
pub block_clength: ::std::os::raw::c_int,
pub block_offset: ::std::os::raw::c_int,
pub block_address: i64,
pub uncompressed_address: i64,
pub uncompressed_block: *mut ::std::os::raw::c_void,
pub compressed_block: *mut ::std::os::raw::c_void,
pub cache: *mut bgzf_cache_t,
pub fp: *mut hFILE,
pub mt: *mut bgzf_mtaux_t,
pub idx: *mut bgzidx_t,
pub idx_build_otf: ::std::os::raw::c_int,
pub gz_stream: *mut z_stream_s,
pub seeked: i64,
}
impl BGZF {
#[inline]
pub fn errcode(&self) -> ::std::os::raw::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) }
}
#[inline]
pub fn set_errcode(&mut self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(0usize, 16u8, val as u64)
}
}
#[inline]
pub unsafe fn errcode_raw(this: *const Self) -> ::std::os::raw::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
0usize,
16u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_errcode_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
0usize,
16u8,
val as u64,
)
}
}
#[inline]
pub fn reserved(&self) -> ::std::os::raw::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 1u8) as u32) }
}
#[inline]
pub fn set_reserved(&mut self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(16usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn reserved_raw(this: *const Self) -> ::std::os::raw::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
16usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_reserved_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
16usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_write(&self) -> ::std::os::raw::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(17usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_write(&mut self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(17usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_write_raw(this: *const Self) -> ::std::os::raw::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
17usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_write_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
17usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn no_eof_block(&self) -> ::std::os::raw::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(18usize, 1u8) as u32) }
}
#[inline]
pub fn set_no_eof_block(&mut self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(18usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn no_eof_block_raw(this: *const Self) -> ::std::os::raw::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
18usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_no_eof_block_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
18usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_be(&self) -> ::std::os::raw::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(19usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_be(&mut self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(19usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_be_raw(this: *const Self) -> ::std::os::raw::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
19usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_be_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
19usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn compress_level(&self) -> ::std::os::raw::c_int {
unsafe { ::std::mem::transmute(self._bitfield_1.get(20usize, 9u8) as u32) }
}
#[inline]
pub fn set_compress_level(&mut self, val: ::std::os::raw::c_int) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(20usize, 9u8, val as u64)
}
}
#[inline]
pub unsafe fn compress_level_raw(this: *const Self) -> ::std::os::raw::c_int {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
20usize,
9u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_compress_level_raw(this: *mut Self, val: ::std::os::raw::c_int) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
20usize,
9u8,
val as u64,
)
}
}
#[inline]
pub fn last_block_eof(&self) -> ::std::os::raw::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(29usize, 1u8) as u32) }
}
#[inline]
pub fn set_last_block_eof(&mut self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(29usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn last_block_eof_raw(this: *const Self) -> ::std::os::raw::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
29usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_last_block_eof_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
29usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_compressed(&self) -> ::std::os::raw::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(30usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_compressed(&mut self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(30usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_compressed_raw(this: *const Self) -> ::std::os::raw::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
30usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_compressed_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
30usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn is_gzip(&self) -> ::std::os::raw::c_uint {
unsafe { ::std::mem::transmute(self._bitfield_1.get(31usize, 1u8) as u32) }
}
#[inline]
pub fn set_is_gzip(&mut self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
self._bitfield_1.set(31usize, 1u8, val as u64)
}
}
#[inline]
pub unsafe fn is_gzip_raw(this: *const Self) -> ::std::os::raw::c_uint {
unsafe {
::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(
::std::ptr::addr_of!((*this)._bitfield_1),
31usize,
1u8,
) as u32)
}
}
#[inline]
pub unsafe fn set_is_gzip_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
unsafe {
let val: u32 = ::std::mem::transmute(val);
<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(
::std::ptr::addr_of_mut!((*this)._bitfield_1),
31usize,
1u8,
val as u64,
)
}
}
#[inline]
pub fn new_bitfield_1(
errcode: ::std::os::raw::c_uint,
reserved: ::std::os::raw::c_uint,
is_write: ::std::os::raw::c_uint,
no_eof_block: ::std::os::raw::c_uint,
is_be: ::std::os::raw::c_uint,
compress_level: ::std::os::raw::c_int,
last_block_eof: ::std::os::raw::c_uint,
is_compressed: ::std::os::raw::c_uint,
is_gzip: ::std::os::raw::c_uint,
) -> __BindgenBitfieldUnit<[u8; 4usize]> {
let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
__bindgen_bitfield_unit.set(0usize, 16u8, {
let errcode: u32 = unsafe { ::std::mem::transmute(errcode) };
errcode as u64
});
__bindgen_bitfield_unit.set(16usize, 1u8, {
let reserved: u32 = unsafe { ::std::mem::transmute(reserved) };
reserved as u64
});
__bindgen_bitfield_unit.set(17usize, 1u8, {
let is_write: u32 = unsafe { ::std::mem::transmute(is_write) };
is_write as u64
});
__bindgen_bitfield_unit.set(18usize, 1u8, {
let no_eof_block: u32 = unsafe { ::std::mem::transmute(no_eof_block) };
no_eof_block as u64
});
__bindgen_bitfield_unit.set(19usize, 1u8, {
let is_be: u32 = unsafe { ::std::mem::transmute(is_be) };
is_be as u64
});
__bindgen_bitfield_unit.set(20usize, 9u8, {
let compress_level: u32 = unsafe { ::std::mem::transmute(compress_level) };
compress_level as u64
});
__bindgen_bitfield_unit.set(29usize, 1u8, {
let last_block_eof: u32 = unsafe { ::std::mem::transmute(last_block_eof) };
last_block_eof as u64
});
__bindgen_bitfield_unit.set(30usize, 1u8, {
let is_compressed: u32 = unsafe { ::std::mem::transmute(is_compressed) };
is_compressed as u64
});
__bindgen_bitfield_unit.set(31usize, 1u8, {
let is_gzip: u32 = unsafe { ::std::mem::transmute(is_gzip) };
is_gzip as u64
});
__bindgen_bitfield_unit
}
}
unsafe extern "C" {
pub fn bgzf_dopen(fd: ::std::os::raw::c_int, mode: *const ::std::os::raw::c_char) -> *mut BGZF;
}
unsafe extern "C" {
pub fn bgzf_open(
path: *const ::std::os::raw::c_char,
mode: *const ::std::os::raw::c_char,
) -> *mut BGZF;
}
unsafe extern "C" {
pub fn bgzf_hopen(fp: *mut hFILE, mode: *const ::std::os::raw::c_char) -> *mut BGZF;
}
unsafe extern "C" {
pub fn bgzf_close(fp: *mut BGZF) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_read(fp: *mut BGZF, data: *mut ::std::os::raw::c_void, length: usize) -> isize;
}
unsafe extern "C" {
pub fn bgzf_write(fp: *mut BGZF, data: *const ::std::os::raw::c_void, length: usize) -> isize;
}
unsafe extern "C" {
pub fn bgzf_block_write(
fp: *mut BGZF,
data: *const ::std::os::raw::c_void,
length: usize,
) -> isize;
}
unsafe extern "C" {
pub fn bgzf_peek(fp: *mut BGZF) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_raw_read(fp: *mut BGZF, data: *mut ::std::os::raw::c_void, length: usize) -> isize;
}
unsafe extern "C" {
pub fn bgzf_raw_write(
fp: *mut BGZF,
data: *const ::std::os::raw::c_void,
length: usize,
) -> isize;
}
unsafe extern "C" {
pub fn bgzf_flush(fp: *mut BGZF) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_seek(fp: *mut BGZF, pos: i64, whence: ::std::os::raw::c_int) -> i64;
}
unsafe extern "C" {
pub fn bgzf_check_EOF(fp: *mut BGZF) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_compression(fp: *mut BGZF) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_is_bgzf(fn_: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_set_cache_size(fp: *mut BGZF, size: ::std::os::raw::c_int);
}
unsafe extern "C" {
pub fn bgzf_flush_try(fp: *mut BGZF, size: isize) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_getc(fp: *mut BGZF) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_getline(
fp: *mut BGZF,
delim: ::std::os::raw::c_int,
str_: *mut kstring_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_read_block(fp: *mut BGZF) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_thread_pool(
fp: *mut BGZF,
pool: *mut hts_tpool,
qsize: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_mt(
fp: *mut BGZF,
n_threads: ::std::os::raw::c_int,
n_sub_blks: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_compress(
dst: *mut ::std::os::raw::c_void,
dlen: *mut usize,
src: *const ::std::os::raw::c_void,
slen: usize,
level: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_useek(
fp: *mut BGZF,
uoffset: off_t,
where_: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_utell(fp: *mut BGZF) -> off_t;
}
unsafe extern "C" {
pub fn bgzf_index_build_init(fp: *mut BGZF) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_index_load(
fp: *mut BGZF,
bname: *const ::std::os::raw::c_char,
suffix: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_index_load_hfile(
fp: *mut BGZF,
idx: *mut hFILE,
name: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_index_dump(
fp: *mut BGZF,
bname: *const ::std::os::raw::c_char,
suffix: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bgzf_index_dump_hfile(
fp: *mut BGZF,
idx: *mut hFILE,
name: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_trim_alleles(header: *const bcf_hdr_t, line: *mut bcf1_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_remove_alleles(
header: *const bcf_hdr_t,
line: *mut bcf1_t,
mask: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_remove_allele_set(
header: *const bcf_hdr_t,
line: *mut bcf1_t,
rm_set: *const kbitset_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_calc_ac(
header: *const bcf_hdr_t,
line: *mut bcf1_t,
ac: *mut ::std::os::raw::c_int,
which: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_gt_type(
fmt_ptr: *mut bcf_fmt_t,
isample: ::std::os::raw::c_int,
ial: *mut ::std::os::raw::c_int,
jal: *mut ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct tbx_conf_t {
pub preset: i32,
pub sc: i32,
pub bc: i32,
pub ec: i32,
pub meta_char: i32,
pub line_skip: i32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct tbx_t {
pub conf: tbx_conf_t,
pub idx: *mut hts_idx_t,
pub dict: *mut ::std::os::raw::c_void,
}
unsafe extern "C" {
pub static tbx_conf_gff: tbx_conf_t;
}
unsafe extern "C" {
pub static tbx_conf_bed: tbx_conf_t;
}
unsafe extern "C" {
pub static tbx_conf_psltbl: tbx_conf_t;
}
unsafe extern "C" {
pub static tbx_conf_sam: tbx_conf_t;
}
unsafe extern "C" {
pub static tbx_conf_vcf: tbx_conf_t;
}
unsafe extern "C" {
pub fn tbx_name2id(tbx: *mut tbx_t, ss: *const ::std::os::raw::c_char)
-> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_get_bgzfp(fp: *mut htsFile) -> *mut BGZF;
}
unsafe extern "C" {
pub fn tbx_readrec(
fp: *mut BGZF,
tbxv: *mut ::std::os::raw::c_void,
sv: *mut ::std::os::raw::c_void,
tid: *mut ::std::os::raw::c_int,
beg: *mut hts_pos_t,
end: *mut hts_pos_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn tbx_index(
fp: *mut BGZF,
min_shift: ::std::os::raw::c_int,
conf: *const tbx_conf_t,
) -> *mut tbx_t;
}
unsafe extern "C" {
pub fn tbx_index_build(
fn_: *const ::std::os::raw::c_char,
min_shift: ::std::os::raw::c_int,
conf: *const tbx_conf_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn tbx_index_build2(
fn_: *const ::std::os::raw::c_char,
fnidx: *const ::std::os::raw::c_char,
min_shift: ::std::os::raw::c_int,
conf: *const tbx_conf_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn tbx_index_build3(
fn_: *const ::std::os::raw::c_char,
fnidx: *const ::std::os::raw::c_char,
min_shift: ::std::os::raw::c_int,
n_threads: ::std::os::raw::c_int,
conf: *const tbx_conf_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn tbx_index_load(fn_: *const ::std::os::raw::c_char) -> *mut tbx_t;
}
unsafe extern "C" {
pub fn tbx_index_load2(
fn_: *const ::std::os::raw::c_char,
fnidx: *const ::std::os::raw::c_char,
) -> *mut tbx_t;
}
unsafe extern "C" {
pub fn tbx_index_load3(
fn_: *const ::std::os::raw::c_char,
fnidx: *const ::std::os::raw::c_char,
flags: ::std::os::raw::c_int,
) -> *mut tbx_t;
}
unsafe extern "C" {
pub fn tbx_seqnames(
tbx: *mut tbx_t,
n: *mut ::std::os::raw::c_int,
) -> *mut *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn tbx_destroy(tbx: *mut tbx_t);
}
pub const bcf_sr_opt_t_BCF_SR_REQUIRE_IDX: bcf_sr_opt_t = 0;
pub const bcf_sr_opt_t_BCF_SR_PAIR_LOGIC: bcf_sr_opt_t = 1;
pub const bcf_sr_opt_t_BCF_SR_ALLOW_NO_IDX: bcf_sr_opt_t = 2;
pub const bcf_sr_opt_t_BCF_SR_REGIONS_OVERLAP: bcf_sr_opt_t = 3;
pub const bcf_sr_opt_t_BCF_SR_TARGETS_OVERLAP: bcf_sr_opt_t = 4;
pub type bcf_sr_opt_t = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bcf_sr_region_t {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bcf_sr_regions_t {
pub tbx: *mut tbx_t,
pub itr: *mut hts_itr_t,
pub line: kstring_t,
pub file: *mut htsFile,
pub fname: *mut ::std::os::raw::c_char,
pub is_bin: ::std::os::raw::c_int,
pub als: *mut *mut ::std::os::raw::c_char,
pub als_str: kstring_t,
pub nals: ::std::os::raw::c_int,
pub mals: ::std::os::raw::c_int,
pub als_type: ::std::os::raw::c_int,
pub missed_reg_handler: ::std::option::Option<
unsafe extern "C" fn(arg1: *mut bcf_sr_regions_t, arg2: *mut ::std::os::raw::c_void),
>,
pub missed_reg_data: *mut ::std::os::raw::c_void,
pub regs: *mut bcf_sr_region_t,
pub seq_hash: *mut ::std::os::raw::c_void,
pub seq_names: *mut *mut ::std::os::raw::c_char,
pub nseqs: ::std::os::raw::c_int,
pub iseq: ::std::os::raw::c_int,
pub start: hts_pos_t,
pub end: hts_pos_t,
pub prev_seq: ::std::os::raw::c_int,
pub prev_start: hts_pos_t,
pub prev_end: hts_pos_t,
pub overlap: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bcf_sr_t {
pub file: *mut htsFile,
pub tbx_idx: *mut tbx_t,
pub bcf_idx: *mut hts_idx_t,
pub header: *mut bcf_hdr_t,
pub itr: *mut hts_itr_t,
pub fname: *mut ::std::os::raw::c_char,
pub buffer: *mut *mut bcf1_t,
pub nbuffer: ::std::os::raw::c_int,
pub mbuffer: ::std::os::raw::c_int,
pub nfilter_ids: ::std::os::raw::c_int,
pub filter_ids: *mut ::std::os::raw::c_int,
pub samples: *mut ::std::os::raw::c_int,
pub n_smpl: ::std::os::raw::c_int,
}
pub const bcf_sr_error_open_failed: bcf_sr_error = 0;
pub const bcf_sr_error_not_bgzf: bcf_sr_error = 1;
pub const bcf_sr_error_idx_load_failed: bcf_sr_error = 2;
pub const bcf_sr_error_file_type_error: bcf_sr_error = 3;
pub const bcf_sr_error_api_usage_error: bcf_sr_error = 4;
pub const bcf_sr_error_header_error: bcf_sr_error = 5;
pub const bcf_sr_error_no_eof: bcf_sr_error = 6;
pub const bcf_sr_error_no_memory: bcf_sr_error = 7;
pub const bcf_sr_error_vcf_parse_error: bcf_sr_error = 8;
pub const bcf_sr_error_bcf_read_error: bcf_sr_error = 9;
pub const bcf_sr_error_noidx_error: bcf_sr_error = 10;
pub type bcf_sr_error = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bcf_srs_t {
pub collapse: ::std::os::raw::c_int,
pub apply_filters: *mut ::std::os::raw::c_char,
pub require_index: ::std::os::raw::c_int,
pub max_unpack: ::std::os::raw::c_int,
pub has_line: *mut ::std::os::raw::c_int,
pub errnum: bcf_sr_error,
pub readers: *mut bcf_sr_t,
pub nreaders: ::std::os::raw::c_int,
pub streaming: ::std::os::raw::c_int,
pub explicit_regs: ::std::os::raw::c_int,
pub samples: *mut *mut ::std::os::raw::c_char,
pub regions: *mut bcf_sr_regions_t,
pub targets: *mut bcf_sr_regions_t,
pub targets_als: ::std::os::raw::c_int,
pub targets_exclude: ::std::os::raw::c_int,
pub tmps: kstring_t,
pub n_smpl: ::std::os::raw::c_int,
pub n_threads: ::std::os::raw::c_int,
pub p: *mut htsThreadPool,
pub aux: *mut ::std::os::raw::c_void,
}
unsafe extern "C" {
pub fn bcf_sr_init() -> *mut bcf_srs_t;
}
unsafe extern "C" {
pub fn bcf_sr_destroy(readers: *mut bcf_srs_t);
}
unsafe extern "C" {
pub fn bcf_sr_strerror(errnum: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn bcf_sr_set_opt(readers: *mut bcf_srs_t, opt: bcf_sr_opt_t, ...)
-> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_sr_set_threads(
files: *mut bcf_srs_t,
n_threads: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_sr_destroy_threads(files: *mut bcf_srs_t);
}
unsafe extern "C" {
pub fn bcf_sr_add_reader(
readers: *mut bcf_srs_t,
fname: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_sr_remove_reader(files: *mut bcf_srs_t, i: ::std::os::raw::c_int);
}
unsafe extern "C" {
pub fn bcf_sr_next_line(readers: *mut bcf_srs_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_sr_seek(
readers: *mut bcf_srs_t,
seq: *const ::std::os::raw::c_char,
pos: hts_pos_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_sr_set_samples(
readers: *mut bcf_srs_t,
samples: *const ::std::os::raw::c_char,
is_file: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_sr_set_targets(
readers: *mut bcf_srs_t,
targets: *const ::std::os::raw::c_char,
is_file: ::std::os::raw::c_int,
alleles: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_sr_set_regions(
readers: *mut bcf_srs_t,
regions: *const ::std::os::raw::c_char,
is_file: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_sr_regions_init(
regions: *const ::std::os::raw::c_char,
is_file: ::std::os::raw::c_int,
chr: ::std::os::raw::c_int,
from: ::std::os::raw::c_int,
to: ::std::os::raw::c_int,
) -> *mut bcf_sr_regions_t;
}
unsafe extern "C" {
pub fn bcf_sr_regions_destroy(regions: *mut bcf_sr_regions_t);
}
unsafe extern "C" {
pub fn bcf_sr_regions_seek(
regions: *mut bcf_sr_regions_t,
chr: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_sr_regions_next(reg: *mut bcf_sr_regions_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_sr_regions_overlap(
reg: *mut bcf_sr_regions_t,
seq: *const ::std::os::raw::c_char,
start: hts_pos_t,
end: hts_pos_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn bcf_sr_regions_flush(regs: *mut bcf_sr_regions_t) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct kbitset_t {
pub n: usize,
pub n_max: usize,
pub b: [::std::os::raw::c_ulong; 1usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct kbitset_iter_t {
pub mask: ::std::os::raw::c_ulong,
pub elt: usize,
pub i: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct faidx_t {
_unused: [u8; 0],
}
pub const fai_format_options_FAI_NONE: fai_format_options = 0;
pub const fai_format_options_FAI_FASTA: fai_format_options = 1;
pub const fai_format_options_FAI_FASTQ: fai_format_options = 2;
pub type fai_format_options = ::std::os::raw::c_uint;
unsafe extern "C" {
pub fn fai_build3(
fn_: *const ::std::os::raw::c_char,
fnfai: *const ::std::os::raw::c_char,
fngzi: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn fai_build(fn_: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn fai_destroy(fai: *mut faidx_t);
}
pub const fai_load_options_FAI_CREATE: fai_load_options = 1;
pub type fai_load_options = ::std::os::raw::c_uint;
unsafe extern "C" {
pub fn fai_load3(
fn_: *const ::std::os::raw::c_char,
fnfai: *const ::std::os::raw::c_char,
fngzi: *const ::std::os::raw::c_char,
flags: ::std::os::raw::c_int,
) -> *mut faidx_t;
}
unsafe extern "C" {
pub fn fai_load(fn_: *const ::std::os::raw::c_char) -> *mut faidx_t;
}
unsafe extern "C" {
pub fn fai_load3_format(
fn_: *const ::std::os::raw::c_char,
fnfai: *const ::std::os::raw::c_char,
fngzi: *const ::std::os::raw::c_char,
flags: ::std::os::raw::c_int,
format: fai_format_options,
) -> *mut faidx_t;
}
unsafe extern "C" {
pub fn fai_load_format(
fn_: *const ::std::os::raw::c_char,
format: fai_format_options,
) -> *mut faidx_t;
}
unsafe extern "C" {
pub fn fai_fetch(
fai: *const faidx_t,
reg: *const ::std::os::raw::c_char,
len: *mut ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn fai_fetch64(
fai: *const faidx_t,
reg: *const ::std::os::raw::c_char,
len: *mut hts_pos_t,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn fai_line_length(fai: *const faidx_t, reg: *const ::std::os::raw::c_char) -> hts_pos_t;
}
unsafe extern "C" {
pub fn fai_fetchqual(
fai: *const faidx_t,
reg: *const ::std::os::raw::c_char,
len: *mut ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn fai_fetchqual64(
fai: *const faidx_t,
reg: *const ::std::os::raw::c_char,
len: *mut hts_pos_t,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn faidx_fetch_nseq(fai: *const faidx_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn faidx_fetch_seq(
fai: *const faidx_t,
c_name: *const ::std::os::raw::c_char,
p_beg_i: ::std::os::raw::c_int,
p_end_i: ::std::os::raw::c_int,
len: *mut ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn faidx_fetch_seq64(
fai: *const faidx_t,
c_name: *const ::std::os::raw::c_char,
p_beg_i: hts_pos_t,
p_end_i: hts_pos_t,
len: *mut hts_pos_t,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn faidx_fetch_qual(
fai: *const faidx_t,
c_name: *const ::std::os::raw::c_char,
p_beg_i: ::std::os::raw::c_int,
p_end_i: ::std::os::raw::c_int,
len: *mut ::std::os::raw::c_int,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn faidx_fetch_qual64(
fai: *const faidx_t,
c_name: *const ::std::os::raw::c_char,
p_beg_i: hts_pos_t,
p_end_i: hts_pos_t,
len: *mut hts_pos_t,
) -> *mut ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn faidx_has_seq(
fai: *const faidx_t,
seq: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn faidx_nseq(fai: *const faidx_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn faidx_iseq(
fai: *const faidx_t,
i: ::std::os::raw::c_int,
) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn faidx_seq_len64(fai: *const faidx_t, seq: *const ::std::os::raw::c_char) -> hts_pos_t;
}
unsafe extern "C" {
pub fn faidx_seq_len(
fai: *const faidx_t,
seq: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn fai_parse_region(
fai: *const faidx_t,
s: *const ::std::os::raw::c_char,
tid: *mut ::std::os::raw::c_int,
beg: *mut hts_pos_t,
end: *mut hts_pos_t,
flags: ::std::os::raw::c_int,
) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
pub fn fai_adjust_region(
fai: *const faidx_t,
tid: ::std::os::raw::c_int,
beg: *mut hts_pos_t,
end: *mut hts_pos_t,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn fai_set_cache_size(fai: *mut faidx_t, cache_size: ::std::os::raw::c_int);
}
unsafe extern "C" {
pub fn fai_thread_pool(
fai: *mut faidx_t,
pool: *mut hts_tpool,
qsize: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn fai_path(fa: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct hts_tpool_process {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct hts_tpool_result {
_unused: [u8; 0],
}
unsafe extern "C" {
pub fn hts_tpool_init(n: ::std::os::raw::c_int) -> *mut hts_tpool;
}
unsafe extern "C" {
pub fn hts_tpool_size(p: *mut hts_tpool) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_tpool_dispatch(
p: *mut hts_tpool,
q: *mut hts_tpool_process,
func: ::std::option::Option<
unsafe extern "C" fn(arg: *mut ::std::os::raw::c_void) -> *mut ::std::os::raw::c_void,
>,
arg: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_tpool_dispatch2(
p: *mut hts_tpool,
q: *mut hts_tpool_process,
func: ::std::option::Option<
unsafe extern "C" fn(arg: *mut ::std::os::raw::c_void) -> *mut ::std::os::raw::c_void,
>,
arg: *mut ::std::os::raw::c_void,
nonblock: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_tpool_dispatch3(
p: *mut hts_tpool,
q: *mut hts_tpool_process,
exec_func: ::std::option::Option<
unsafe extern "C" fn(arg: *mut ::std::os::raw::c_void) -> *mut ::std::os::raw::c_void,
>,
arg: *mut ::std::os::raw::c_void,
job_cleanup: ::std::option::Option<unsafe extern "C" fn(arg: *mut ::std::os::raw::c_void)>,
result_cleanup: ::std::option::Option<
unsafe extern "C" fn(data: *mut ::std::os::raw::c_void),
>,
nonblock: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_tpool_wake_dispatch(q: *mut hts_tpool_process);
}
unsafe extern "C" {
pub fn hts_tpool_process_flush(q: *mut hts_tpool_process) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_tpool_process_reset(
q: *mut hts_tpool_process,
free_results: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_tpool_process_qsize(q: *mut hts_tpool_process) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_tpool_destroy(p: *mut hts_tpool);
}
unsafe extern "C" {
pub fn hts_tpool_kill(p: *mut hts_tpool);
}
unsafe extern "C" {
pub fn hts_tpool_next_result(q: *mut hts_tpool_process) -> *mut hts_tpool_result;
}
unsafe extern "C" {
pub fn hts_tpool_next_result_wait(q: *mut hts_tpool_process) -> *mut hts_tpool_result;
}
unsafe extern "C" {
pub fn hts_tpool_delete_result(r: *mut hts_tpool_result, free_data: ::std::os::raw::c_int);
}
unsafe extern "C" {
pub fn hts_tpool_result_data(r: *mut hts_tpool_result) -> *mut ::std::os::raw::c_void;
}
unsafe extern "C" {
pub fn hts_tpool_process_init(
p: *mut hts_tpool,
qsize: ::std::os::raw::c_int,
in_only: ::std::os::raw::c_int,
) -> *mut hts_tpool_process;
}
unsafe extern "C" {
pub fn hts_tpool_process_destroy(q: *mut hts_tpool_process);
}
unsafe extern "C" {
pub fn hts_tpool_process_empty(q: *mut hts_tpool_process) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_tpool_process_len(q: *mut hts_tpool_process) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_tpool_process_sz(q: *mut hts_tpool_process) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_tpool_process_shutdown(q: *mut hts_tpool_process);
}
unsafe extern "C" {
pub fn hts_tpool_process_is_shutdown(q: *mut hts_tpool_process) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
pub fn hts_tpool_process_attach(p: *mut hts_tpool, q: *mut hts_tpool_process);
}
unsafe extern "C" {
pub fn hts_tpool_process_detach(p: *mut hts_tpool, q: *mut hts_tpool_process);
}
unsafe extern "C" {
pub fn hts_tpool_process_ref_incr(q: *mut hts_tpool_process);
}
unsafe extern "C" {
pub fn hts_tpool_process_ref_decr(q: *mut hts_tpool_process);
}
unsafe extern "C" {
#[link_name = "\u{1}wrap_kbs_init2"]
pub fn kbs_init2(ni: usize, fill: ::std::os::raw::c_int) -> *mut kbitset_t;
}
unsafe extern "C" {
#[link_name = "\u{1}wrap_kbs_init"]
pub fn kbs_init(ni: usize) -> *mut kbitset_t;
}
unsafe extern "C" {
#[link_name = "\u{1}wrap_kbs_insert"]
pub fn kbs_insert(bs: *mut kbitset_t, i: ::std::os::raw::c_int);
}
unsafe extern "C" {
#[link_name = "\u{1}wrap_kbs_destroy"]
pub fn kbs_destroy(bs: *mut kbitset_t);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __locale_data {
pub _address: u8,
}
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,
}