#![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 astc_enc_settings {
pub block_width: i32,
pub block_height: i32,
pub channels: i32,
pub fastSkipThreshold: i32,
pub refineIterations: i32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct astc_enc_context {
pub width: i32,
pub height: i32,
pub channels: i32,
pub dual_plane: bool,
pub partitions: i32,
pub color_endpoint_pairs: i32,
}
unsafe extern "C" {
pub fn get_programCount() -> i32;
}
unsafe extern "C" {
pub fn astc_rank_ispc(
src: *mut rgba_surface,
xx: i32,
yy: i32,
mode_buffer: *mut u32,
settings: *mut astc_enc_settings,
);
}
unsafe extern "C" {
pub fn astc_encode_ispc(
src: *mut rgba_surface,
block_scores: *mut f32,
dst: *mut u8,
list: *mut u64,
list_context: *mut astc_enc_context,
settings: *mut astc_enc_settings,
);
}