pub unsafe extern "C" fn libbfio_handle_initialize(
handle: *mut *mut libbfio_handle_t,
io_handle: *mut isize,
free_io_handle: Option<unsafe extern "C" fn(io_handle: *mut *mut isize, error: *mut *mut libbfio_error_t) -> c_int>,
clone_io_handle: Option<unsafe extern "C" fn(destination_io_handle: *mut *mut isize, source_io_handle: *mut isize, error: *mut *mut libbfio_error_t) -> c_int>,
open: Option<unsafe extern "C" fn(io_handle: *mut isize, access_flags: c_int, error: *mut *mut libbfio_error_t) -> c_int>,
close: Option<unsafe extern "C" fn(io_handle: *mut isize, error: *mut *mut libbfio_error_t) -> c_int>,
read: Option<unsafe extern "C" fn(io_handle: *mut isize, buffer: *mut u8, size: usize, error: *mut *mut libbfio_error_t) -> isize>,
write: Option<unsafe extern "C" fn(io_handle: *mut isize, buffer: *const u8, size: usize, error: *mut *mut libbfio_error_t) -> isize>,
seek_offset: Option<unsafe extern "C" fn(io_handle: *mut isize, offset: off64_t, whence: c_int, error: *mut *mut libbfio_error_t) -> off64_t>,
exists: Option<unsafe extern "C" fn(io_handle: *mut isize, error: *mut *mut libbfio_error_t) -> c_int>,
is_open: Option<unsafe extern "C" fn(io_handle: *mut isize, error: *mut *mut libbfio_error_t) -> c_int>,
get_size: Option<unsafe extern "C" fn(io_handle: *mut isize, size: *mut size64_t, error: *mut *mut libbfio_error_t) -> c_int>,
flags: u8,
error: *mut *mut libbfio_error_t
) -> c_int