#![allow(non_camel_case_types, non_snake_case, dead_code)]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct rgba_surface {
pub ptr: *mut u8,
pub width: i32,
pub height: i32,
pub stride: i32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bc6h_enc_settings {
pub slow_mode: bool,
pub fast_mode: bool,
pub refineIterations_1p: i32,
pub refineIterations_2p: i32,
pub fastSkipThreshold: i32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bc7_enc_settings {
pub mode_selection: [bool; 4usize],
pub refineIterations: [i32; 8usize],
pub skip_mode2: bool,
pub fastSkipThreshold_mode1: i32,
pub fastSkipThreshold_mode3: i32,
pub fastSkipThreshold_mode7: i32,
pub mode45_channel0: i32,
pub refineIterations_channel: i32,
pub channels: i32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct etc_enc_settings {
pub fastSkipThreshold: i32,
}
unsafe extern "C" {
pub fn CompressBlocksBC1_ispc(src: *mut rgba_surface, dst: *mut u8);
}
unsafe extern "C" {
pub fn CompressBlocksBC3_ispc(src: *mut rgba_surface, dst: *mut u8);
}
unsafe extern "C" {
pub fn CompressBlocksBC4_ispc(src: *mut rgba_surface, dst: *mut u8);
}
unsafe extern "C" {
pub fn CompressBlocksBC5_ispc(src: *mut rgba_surface, dst: *mut u8);
}
unsafe extern "C" {
pub fn CompressBlocksBC6H_ispc(
src: *mut rgba_surface,
dst: *mut u8,
settings: *mut bc6h_enc_settings,
);
}
unsafe extern "C" {
pub fn CompressBlocksBC7_ispc(
src: *mut rgba_surface,
dst: *mut u8,
settings: *mut bc7_enc_settings,
);
}
unsafe extern "C" {
pub fn CompressBlocksETC1_ispc(
src: *mut rgba_surface,
dst: *mut u8,
settings: *mut etc_enc_settings,
);
}