Skip to content

Instantly share code, notes, and snippets.

@saivert
Created May 25, 2021 12:34
Show Gist options
  • Save saivert/8a49b8192d7f5d6a0c15c796238fb9e2 to your computer and use it in GitHub Desktop.
Save saivert/8a49b8192d7f5d6a0c15c796238fb9e2 to your computer and use it in GitHub Desktop.
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct DB_functions_t {
pub vmajor: ::std::os::raw::c_int,
pub vminor: ::std::os::raw::c_int,
pub md5: ::std::option::Option<
unsafe extern "C" fn(
sig: *mut u8,
in_: *const ::std::os::raw::c_char,
len: ::std::os::raw::c_int,
),
>,
pub md5_to_str: ::std::option::Option<
unsafe extern "C" fn(str: *mut ::std::os::raw::c_char, sig: *const u8),
>,
pub md5_init: ::std::option::Option<unsafe extern "C" fn(s: *mut DB_md5_t)>,
pub md5_append: ::std::option::Option<
unsafe extern "C" fn(s: *mut DB_md5_t, data: *const u8, nbytes: ::std::os::raw::c_int),
>,
pub md5_finish: ::std::option::Option<unsafe extern "C" fn(s: *mut DB_md5_t, digest: *mut u8)>,
pub get_output: ::std::option::Option<unsafe extern "C" fn() -> *mut DB_output_s>,
pub playback_get_pos: ::std::option::Option<unsafe extern "C" fn() -> f32>,
pub playback_set_pos: ::std::option::Option<unsafe extern "C" fn(pos: f32)>,
pub streamer_get_playing_track:
::std::option::Option<unsafe extern "C" fn() -> *mut DB_playItem_t>,
pub streamer_get_streaming_track:
::std::option::Option<unsafe extern "C" fn() -> *mut DB_playItem_t>,
pub streamer_get_playpos: ::std::option::Option<unsafe extern "C" fn() -> f32>,
pub streamer_ok_to_read: ::std::option::Option<
unsafe extern "C" fn(len: ::std::os::raw::c_int) -> ::std::os::raw::c_int,
>,
pub streamer_reset: ::std::option::Option<unsafe extern "C" fn(full: ::std::os::raw::c_int)>,
pub streamer_read: ::std::option::Option<
unsafe extern "C" fn(
bytes: *mut ::std::os::raw::c_char,
size: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int,
>,
pub streamer_set_bitrate:
::std::option::Option<unsafe extern "C" fn(bitrate: ::std::os::raw::c_int)>,
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment