Struct raspberry_pi_sys::libbcm_host::libbcm_host
source · [−]pub struct libbcm_host {Show 124 fields
pub bcm_host_init: unsafe extern "C" fn(),
pub bcm_host_deinit: unsafe extern "C" fn(),
pub graphics_get_display_size: unsafe extern "C" fn(display_number: u16, width: *mut u32, height: *mut u32) -> i32,
pub bcm_host_get_peripheral_address: unsafe extern "C" fn() -> c_uint,
pub bcm_host_get_peripheral_size: unsafe extern "C" fn() -> c_uint,
pub bcm_host_get_sdram_address: unsafe extern "C" fn() -> c_uint,
pub vcos_pthreads_logging_assert: unsafe extern "C" fn(file: *const c_char, func: *const c_char, line: c_uint, fmt: *const c_char, ...),
pub vcos_verify_bkpts_enabled: unsafe extern "C" fn() -> c_int,
pub vcos_verify_bkpts_enable: unsafe extern "C" fn(enable: c_int) -> c_int,
pub vcos_abort: unsafe extern "C" fn(),
pub vcos_backtrace_self: unsafe extern "C" fn(),
pub vcos_generic_event_flags_create: unsafe extern "C" fn(flags: *mut VCOS_EVENT_FLAGS_T, name: *const c_char) -> VCOS_STATUS_T,
pub vcos_generic_event_flags_set: unsafe extern "C" fn(flags: *mut VCOS_EVENT_FLAGS_T, events: VCOS_UNSIGNED, op: VCOS_OPTION),
pub vcos_generic_event_flags_delete: unsafe extern "C" fn(arg1: *mut VCOS_EVENT_FLAGS_T),
pub vcos_generic_event_flags_get: unsafe extern "C" fn(flags: *mut VCOS_EVENT_FLAGS_T, requested_events: VCOS_UNSIGNED, op: VCOS_OPTION, suspend: VCOS_UNSIGNED, retrieved_events: *mut VCOS_UNSIGNED) -> VCOS_STATUS_T,
pub vcos_generic_blockpool_init: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T, num_blocks: VCOS_UNSIGNED, block_size: VCOS_UNSIGNED, start: *mut c_void, pool_size: VCOS_UNSIGNED, align: VCOS_UNSIGNED, flags: VCOS_UNSIGNED, name: *const c_char) -> VCOS_STATUS_T,
pub vcos_generic_blockpool_create_on_heap: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T, num_blocks: VCOS_UNSIGNED, block_size: VCOS_UNSIGNED, align: VCOS_UNSIGNED, flags: VCOS_UNSIGNED, name: *const c_char) -> VCOS_STATUS_T,
pub vcos_generic_blockpool_extend: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T, num_extensions: VCOS_UNSIGNED, num_blocks: VCOS_UNSIGNED) -> VCOS_STATUS_T,
pub vcos_generic_blockpool_alloc: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T) -> *mut c_void,
pub vcos_generic_blockpool_calloc: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T) -> *mut c_void,
pub vcos_generic_blockpool_free: unsafe extern "C" fn(block: *mut c_void),
pub vcos_generic_blockpool_available_count: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T) -> VCOS_UNSIGNED,
pub vcos_generic_blockpool_used_count: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T) -> VCOS_UNSIGNED,
pub vcos_generic_blockpool_delete: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T),
pub vcos_generic_blockpool_elem_to_handle: unsafe extern "C" fn(block: *mut c_void) -> u32,
pub vcos_generic_blockpool_elem_from_handle: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T, handle: u32) -> *mut c_void,
pub vcos_generic_blockpool_is_valid_elem: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T, block: *const c_void) -> u32,
pub vcos_generic_mem_alloc: unsafe extern "C" fn(sz: VCOS_UNSIGNED, desc: *const c_char) -> *mut c_void,
pub vcos_generic_mem_calloc: unsafe extern "C" fn(count: VCOS_UNSIGNED, sz: VCOS_UNSIGNED, descr: *const c_char) -> *mut c_void,
pub vcos_generic_mem_free: unsafe extern "C" fn(ptr: *mut c_void),
pub vcos_generic_mem_alloc_aligned: unsafe extern "C" fn(sz: VCOS_UNSIGNED, align: VCOS_UNSIGNED, desc: *const c_char) -> *mut c_void,
pub vcos_pthreads_map_error: unsafe extern "C" fn(error: c_int) -> VCOS_STATUS_T,
pub vcos_pthreads_map_errno: unsafe extern "C" fn() -> VCOS_STATUS_T,
pub vcos_thread_at_exit: unsafe extern "C" fn(pfn: Option<unsafe extern "C" fn(arg1: *mut c_void)>, cxt: *mut c_void) -> VCOS_STATUS_T,
pub vcos_dummy_thread_create: unsafe extern "C" fn() -> *mut VCOS_THREAD_T,
pub vcos_getmicrosecs64_internal: unsafe extern "C" fn() -> u64,
pub vcos_pthreads_timer_create: unsafe extern "C" fn(timer: *mut VCOS_TIMER_T, name: *const c_char, expiration_routine: Option<unsafe extern "C" fn(context: *mut c_void)>, context: *mut c_void) -> VCOS_STATUS_T,
pub vcos_pthreads_timer_set: unsafe extern "C" fn(timer: *mut VCOS_TIMER_T, delay_ms: VCOS_UNSIGNED),
pub vcos_pthreads_timer_cancel: unsafe extern "C" fn(timer: *mut VCOS_TIMER_T),
pub vcos_pthreads_timer_delete: unsafe extern "C" fn(timer: *mut VCOS_TIMER_T),
pub vcos_generic_reentrant_mutex_create: unsafe extern "C" fn(m: *mut VCOS_REENTRANT_MUTEX_T, name: *const c_char) -> VCOS_STATUS_T,
pub vcos_generic_reentrant_mutex_delete: unsafe extern "C" fn(m: *mut VCOS_REENTRANT_MUTEX_T),
pub vcos_generic_reentrant_mutex_lock: unsafe extern "C" fn(m: *mut VCOS_REENTRANT_MUTEX_T),
pub vcos_generic_reentrant_mutex_unlock: unsafe extern "C" fn(m: *mut VCOS_REENTRANT_MUTEX_T),
pub vcos_generic_named_semaphore_create: unsafe extern "C" fn(sem: *mut VCOS_NAMED_SEMAPHORE_T, name: *const c_char, count: VCOS_UNSIGNED) -> VCOS_STATUS_T,
pub vcos_named_semaphore_delete: unsafe extern "C" fn(sem: *mut VCOS_NAMED_SEMAPHORE_T),
pub vcos_init: unsafe extern "C" fn() -> VCOS_STATUS_T,
pub vcos_deinit: unsafe extern "C" fn(),
pub vcos_global_lock: unsafe extern "C" fn(),
pub vcos_global_unlock: unsafe extern "C" fn(),
pub vcos_set_args: unsafe extern "C" fn(argc: c_int, argv: *mut *const c_char),
pub vcos_get_argc: unsafe extern "C" fn() -> c_int,
pub vcos_get_argv: unsafe extern "C" fn() -> *mut *const c_char,
pub vcos_platform_init: unsafe extern "C" fn() -> VCOS_STATUS_T,
pub vcos_platform_deinit: unsafe extern "C" fn(),
pub vcos_have_rtos: unsafe extern "C" fn() -> c_int,
pub vcos_thread_create: unsafe extern "C" fn(thread: *mut VCOS_THREAD_T, name: *const c_char, attrs: *mut VCOS_THREAD_ATTR_T, entry: VCOS_THREAD_ENTRY_FN_T, arg: *mut c_void) -> VCOS_STATUS_T,
pub vcos_thread_exit: unsafe extern "C" fn(data: *mut c_void),
pub vcos_thread_join: unsafe extern "C" fn(thread: *mut VCOS_THREAD_T, pData: *mut *mut c_void),
pub vcos_thread_create_classic: unsafe extern "C" fn(thread: *mut VCOS_THREAD_T, name: *const c_char, entry: Option<unsafe extern "C" fn(arg: *mut c_void) -> *mut c_void>, arg: *mut c_void, stack: *mut c_void, stacksz: VCOS_UNSIGNED, priaff: VCOS_UNSIGNED, timeslice: VCOS_UNSIGNED, autostart: VCOS_UNSIGNED) -> VCOS_STATUS_T,
pub vcos_thread_get_name: unsafe extern "C" fn(thread: *const VCOS_THREAD_T) -> *const c_char,
pub vcos_log_level_to_string: unsafe extern "C" fn(level: VCOS_LOG_LEVEL_T) -> *const c_char,
pub vcos_string_to_log_level: unsafe extern "C" fn(str_: *const c_char, level: *mut VCOS_LOG_LEVEL_T) -> VCOS_STATUS_T,
pub vcos_log_impl: unsafe extern "C" fn(cat: *const VCOS_LOG_CAT_T, _level: VCOS_LOG_LEVEL_T, fmt: *const c_char, ...),
pub vcos_vlog_impl: unsafe extern "C" fn(cat: *const VCOS_LOG_CAT_T, _level: VCOS_LOG_LEVEL_T, fmt: *const c_char, args: va_list),
pub vcos_set_vlog_impl: unsafe extern "C" fn(vlog_impl_func: VCOS_VLOG_IMPL_FUNC_T),
pub vcos_vlog_default_impl: unsafe extern "C" fn(cat: *const VCOS_LOG_CAT_T, _level: VCOS_LOG_LEVEL_T, fmt: *const c_char, args: va_list),
pub vcos_logging_init: unsafe extern "C" fn(),
pub vcos_log_register: unsafe extern "C" fn(name: *const c_char, category: *mut VCOS_LOG_CAT_T),
pub vcos_log_unregister: unsafe extern "C" fn(category: *mut VCOS_LOG_CAT_T),
pub vcos_log_get_default_category: unsafe extern "C" fn() -> *const VCOS_LOG_CAT_T,
pub vcos_set_log_options: unsafe extern "C" fn(opt: *const c_char),
pub vcos_log_dump_mem_impl: unsafe extern "C" fn(cat: *const VCOS_LOG_CAT_T, label: *const c_char, addr: u32, voidMem: *const c_void, numBytes: size_t),
pub vcos_cmd_error: unsafe extern "C" fn(param: *mut VCOS_CMD_PARAM_T, fmt: *const c_char, ...),
pub vcos_cmd_printf: unsafe extern "C" fn(param: *mut VCOS_CMD_PARAM_T, fmt: *const c_char, ...),
pub vcos_cmd_vprintf: unsafe extern "C" fn(param: *mut VCOS_CMD_PARAM_T, fmt: *const c_char, args: va_list),
pub vcos_cmd_always_log_output: unsafe extern "C" fn(log_category: *mut VCOS_LOG_CAT_T),
pub vcos_cmd_usage: unsafe extern "C" fn(param: *mut VCOS_CMD_PARAM_T),
pub vcos_cmd_register: unsafe extern "C" fn(cmd_entry: *mut VCOS_CMD_T) -> VCOS_STATUS_T,
pub vcos_cmd_register_multiple: unsafe extern "C" fn(cmd_entry: *mut VCOS_CMD_T) -> VCOS_STATUS_T,
pub vcos_cmd_execute: unsafe extern "C" fn(argc: c_int, argv: *mut *mut c_char, result_size: size_t, result_buf: *mut c_char) -> VCOS_STATUS_T,
pub vcos_cmd_shutdown: unsafe extern "C" fn(),
pub vcos_vsnprintf: unsafe extern "C" fn(buf: *mut c_char, buflen: size_t, fmt: *const c_char, ap: va_list) -> c_int,
pub vcos_snprintf: unsafe extern "C" fn(buf: *mut c_char, buflen: size_t, fmt: *const c_char, ...) -> c_int,
pub vcos_safe_vsprintf: unsafe extern "C" fn(buf: *mut c_char, buflen: size_t, offset: size_t, fmt: *const c_char, ap: va_list) -> size_t,
pub vcos_safe_sprintf: unsafe extern "C" fn(buf: *mut c_char, buflen: size_t, offset: size_t, fmt: *const c_char, ...) -> size_t,
pub vcos_safe_strcpy: unsafe extern "C" fn(dst: *mut c_char, src: *const c_char, dstlen: size_t, offset: size_t) -> size_t,
pub vcos_safe_strncpy: unsafe extern "C" fn(dst: *mut c_char, src: *const c_char, srclen: size_t, dstlen: size_t, offset: size_t) -> size_t,
pub vcos_thread_attr_init: unsafe extern "C" fn(attrs: *mut VCOS_THREAD_ATTR_T),
pub vcos_timer_init: unsafe extern "C" fn() -> VCOS_STATUS_T,
pub vcos_once: unsafe extern "C" fn(once_control: *mut VCOS_ONCE_T, init_routine: Option<unsafe extern "C" fn()>) -> VCOS_STATUS_T,
pub vchi_create_connection: unsafe extern "C" fn(function_table: *const VCHI_CONNECTION_API_T, low_level: *const VCHI_MESSAGE_DRIVER_T) -> *mut VCHI_CONNECTION_T,
pub vchi_initialise: unsafe extern "C" fn(instance_handle: *mut VCHI_INSTANCE_T) -> i32,
pub vchi_connect: unsafe extern "C" fn(connections: *mut *mut VCHI_CONNECTION_T, num_connections: u32, instance_handle: VCHI_INSTANCE_T) -> i32,
pub vchi_disconnect: unsafe extern "C" fn(instance_handle: VCHI_INSTANCE_T) -> i32,
pub vchi_service_create: unsafe extern "C" fn(instance_handle: VCHI_INSTANCE_T, setup: *mut SERVICE_CREATION_T, handle: *mut VCHI_SERVICE_HANDLE_T) -> i32,
pub vchi_service_destroy: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T) -> i32,
pub vchi_service_open: unsafe extern "C" fn(instance_handle: VCHI_INSTANCE_T, setup: *mut SERVICE_CREATION_T, handle: *mut VCHI_SERVICE_HANDLE_T) -> i32,
pub vchi_service_close: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T) -> i32,
pub vchi_service_use: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T) -> i32,
pub vchi_service_release: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T) -> i32,
pub vchi_service_set_option: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T, option: VCHI_SERVICE_OPTION_T, value: c_int) -> i32,
pub vchi_msg_queue: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T, data: *const c_void, data_size: u32, flags: VCHI_FLAGS_T, msg_handle: *mut c_void) -> i32,
pub vchi_msg_queuev: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T, vector: *mut VCHI_MSG_VECTOR_T, count: u32, flags: VCHI_FLAGS_T, msg_handle: *mut c_void) -> i32,
pub vchi_msg_dequeue: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T, data: *mut c_void, max_data_size_to_read: u32, actual_msg_size: *mut u32, flags: VCHI_FLAGS_T) -> i32,
pub vchi_msg_peek: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T, data: *mut *mut c_void, msg_size: *mut u32, flags: VCHI_FLAGS_T) -> i32,
pub vchi_msg_remove: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T) -> i32,
pub vchi_msg_hold: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T, data: *mut *mut c_void, msg_size: *mut u32, flags: VCHI_FLAGS_T, message_descriptor: *mut VCHI_HELD_MSG_T) -> i32,
pub vchi_held_msg_release: unsafe extern "C" fn(message: *mut VCHI_HELD_MSG_T) -> i32,
pub vchi_bulk_queue_receive: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T, data_dst: *mut c_void, data_size: u32, flags: VCHI_FLAGS_T, transfer_handle: *mut c_void) -> i32,
pub vchi_bulk_queue_transmit: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T, data_src: *const c_void, data_size: u32, flags: VCHI_FLAGS_T, transfer_handle: *mut c_void) -> i32,
pub vchi_mphi_message_driver_func_table: unsafe extern "C" fn() -> *const VCHI_MESSAGE_DRIVER_T,
pub vc_vchi_gencmd_init: unsafe extern "C" fn(initialise_instance: VCHI_INSTANCE_T, connections: *mut *mut VCHI_CONNECTION_T, num_connections: u32),
pub vc_gencmd_stop: unsafe extern "C" fn(),
pub vc_gencmd_send: unsafe extern "C" fn(format: *const c_char, ...) -> c_int,
pub vc_gencmd_read_response: unsafe extern "C" fn(response: *mut c_char, maxlen: c_int) -> c_int,
pub vc_gencmd_string_property: unsafe extern "C" fn(text: *mut c_char, property: *const c_char, value: *mut *mut c_char, length: *mut c_int) -> c_int,
pub vc_gencmd_number_property: unsafe extern "C" fn(text: *mut c_char, property: *const c_char, number: *mut c_int) -> c_int,
pub vc_gencmd_until: unsafe extern "C" fn(cmd: *mut c_char, property: *const c_char, value: *mut c_char, error_string: *const c_char, timeout: c_int) -> c_int,
pub bcm_host_get_model_type: unsafe extern "C" fn() -> c_int,
pub bcm_host_is_model_pi4: unsafe extern "C" fn() -> c_int,
pub bcm_host_is_fkms_active: unsafe extern "C" fn() -> c_int,
pub bcm_host_is_kms_active: unsafe extern "C" fn() -> c_int,
pub bcm_host_get_processor_id: unsafe extern "C" fn() -> c_int,
/* private fields */
}Fields
bcm_host_init: unsafe extern "C" fn()bcm_host_deinit: unsafe extern "C" fn()graphics_get_display_size: unsafe extern "C" fn(display_number: u16, width: *mut u32, height: *mut u32) -> i32bcm_host_get_peripheral_address: unsafe extern "C" fn() -> c_uintbcm_host_get_peripheral_size: unsafe extern "C" fn() -> c_uintbcm_host_get_sdram_address: unsafe extern "C" fn() -> c_uintvcos_pthreads_logging_assert: unsafe extern "C" fn(file: *const c_char, func: *const c_char, line: c_uint, fmt: *const c_char, ...)vcos_verify_bkpts_enabled: unsafe extern "C" fn() -> c_intvcos_verify_bkpts_enable: unsafe extern "C" fn(enable: c_int) -> c_intvcos_abort: unsafe extern "C" fn()vcos_backtrace_self: unsafe extern "C" fn()vcos_generic_event_flags_create: unsafe extern "C" fn(flags: *mut VCOS_EVENT_FLAGS_T, name: *const c_char) -> VCOS_STATUS_Tvcos_generic_event_flags_set: unsafe extern "C" fn(flags: *mut VCOS_EVENT_FLAGS_T, events: VCOS_UNSIGNED, op: VCOS_OPTION)vcos_generic_event_flags_delete: unsafe extern "C" fn(arg1: *mut VCOS_EVENT_FLAGS_T)vcos_generic_event_flags_get: unsafe extern "C" fn(flags: *mut VCOS_EVENT_FLAGS_T, requested_events: VCOS_UNSIGNED, op: VCOS_OPTION, suspend: VCOS_UNSIGNED, retrieved_events: *mut VCOS_UNSIGNED) -> VCOS_STATUS_Tvcos_generic_blockpool_init: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T, num_blocks: VCOS_UNSIGNED, block_size: VCOS_UNSIGNED, start: *mut c_void, pool_size: VCOS_UNSIGNED, align: VCOS_UNSIGNED, flags: VCOS_UNSIGNED, name: *const c_char) -> VCOS_STATUS_Tvcos_generic_blockpool_create_on_heap: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T, num_blocks: VCOS_UNSIGNED, block_size: VCOS_UNSIGNED, align: VCOS_UNSIGNED, flags: VCOS_UNSIGNED, name: *const c_char) -> VCOS_STATUS_Tvcos_generic_blockpool_extend: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T, num_extensions: VCOS_UNSIGNED, num_blocks: VCOS_UNSIGNED) -> VCOS_STATUS_Tvcos_generic_blockpool_alloc: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T) -> *mut c_voidvcos_generic_blockpool_calloc: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T) -> *mut c_voidvcos_generic_blockpool_free: unsafe extern "C" fn(block: *mut c_void)vcos_generic_blockpool_available_count: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T) -> VCOS_UNSIGNEDvcos_generic_blockpool_used_count: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T) -> VCOS_UNSIGNEDvcos_generic_blockpool_delete: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T)vcos_generic_blockpool_elem_to_handle: unsafe extern "C" fn(block: *mut c_void) -> u32vcos_generic_blockpool_elem_from_handle: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T, handle: u32) -> *mut c_voidvcos_generic_blockpool_is_valid_elem: unsafe extern "C" fn(pool: *mut VCOS_BLOCKPOOL_T, block: *const c_void) -> u32vcos_generic_mem_alloc: unsafe extern "C" fn(sz: VCOS_UNSIGNED, desc: *const c_char) -> *mut c_voidvcos_generic_mem_calloc: unsafe extern "C" fn(count: VCOS_UNSIGNED, sz: VCOS_UNSIGNED, descr: *const c_char) -> *mut c_voidvcos_generic_mem_free: unsafe extern "C" fn(ptr: *mut c_void)vcos_generic_mem_alloc_aligned: unsafe extern "C" fn(sz: VCOS_UNSIGNED, align: VCOS_UNSIGNED, desc: *const c_char) -> *mut c_voidvcos_pthreads_map_error: unsafe extern "C" fn(error: c_int) -> VCOS_STATUS_Tvcos_pthreads_map_errno: unsafe extern "C" fn() -> VCOS_STATUS_Tvcos_thread_at_exit: unsafe extern "C" fn(pfn: Option<unsafe extern "C" fn(arg1: *mut c_void)>, cxt: *mut c_void) -> VCOS_STATUS_Tvcos_dummy_thread_create: unsafe extern "C" fn() -> *mut VCOS_THREAD_Tvcos_getmicrosecs64_internal: unsafe extern "C" fn() -> u64vcos_pthreads_timer_create: unsafe extern "C" fn(timer: *mut VCOS_TIMER_T, name: *const c_char, expiration_routine: Option<unsafe extern "C" fn(context: *mut c_void)>, context: *mut c_void) -> VCOS_STATUS_Tvcos_pthreads_timer_set: unsafe extern "C" fn(timer: *mut VCOS_TIMER_T, delay_ms: VCOS_UNSIGNED)vcos_pthreads_timer_cancel: unsafe extern "C" fn(timer: *mut VCOS_TIMER_T)vcos_pthreads_timer_delete: unsafe extern "C" fn(timer: *mut VCOS_TIMER_T)vcos_generic_reentrant_mutex_create: unsafe extern "C" fn(m: *mut VCOS_REENTRANT_MUTEX_T, name: *const c_char) -> VCOS_STATUS_Tvcos_generic_reentrant_mutex_delete: unsafe extern "C" fn(m: *mut VCOS_REENTRANT_MUTEX_T)vcos_generic_reentrant_mutex_lock: unsafe extern "C" fn(m: *mut VCOS_REENTRANT_MUTEX_T)vcos_generic_reentrant_mutex_unlock: unsafe extern "C" fn(m: *mut VCOS_REENTRANT_MUTEX_T)vcos_generic_named_semaphore_create: unsafe extern "C" fn(sem: *mut VCOS_NAMED_SEMAPHORE_T, name: *const c_char, count: VCOS_UNSIGNED) -> VCOS_STATUS_Tvcos_named_semaphore_delete: unsafe extern "C" fn(sem: *mut VCOS_NAMED_SEMAPHORE_T)vcos_init: unsafe extern "C" fn() -> VCOS_STATUS_Tvcos_deinit: unsafe extern "C" fn()vcos_global_lock: unsafe extern "C" fn()vcos_global_unlock: unsafe extern "C" fn()vcos_set_args: unsafe extern "C" fn(argc: c_int, argv: *mut *const c_char)vcos_get_argc: unsafe extern "C" fn() -> c_intvcos_get_argv: unsafe extern "C" fn() -> *mut *const c_charvcos_platform_init: unsafe extern "C" fn() -> VCOS_STATUS_Tvcos_platform_deinit: unsafe extern "C" fn()vcos_have_rtos: unsafe extern "C" fn() -> c_intvcos_thread_create: unsafe extern "C" fn(thread: *mut VCOS_THREAD_T, name: *const c_char, attrs: *mut VCOS_THREAD_ATTR_T, entry: VCOS_THREAD_ENTRY_FN_T, arg: *mut c_void) -> VCOS_STATUS_Tvcos_thread_exit: unsafe extern "C" fn(data: *mut c_void)vcos_thread_join: unsafe extern "C" fn(thread: *mut VCOS_THREAD_T, pData: *mut *mut c_void)vcos_thread_create_classic: unsafe extern "C" fn(thread: *mut VCOS_THREAD_T, name: *const c_char, entry: Option<unsafe extern "C" fn(arg: *mut c_void) -> *mut c_void>, arg: *mut c_void, stack: *mut c_void, stacksz: VCOS_UNSIGNED, priaff: VCOS_UNSIGNED, timeslice: VCOS_UNSIGNED, autostart: VCOS_UNSIGNED) -> VCOS_STATUS_Tvcos_thread_get_name: unsafe extern "C" fn(thread: *const VCOS_THREAD_T) -> *const c_charvcos_log_level_to_string: unsafe extern "C" fn(level: VCOS_LOG_LEVEL_T) -> *const c_charvcos_string_to_log_level: unsafe extern "C" fn(str_: *const c_char, level: *mut VCOS_LOG_LEVEL_T) -> VCOS_STATUS_Tvcos_log_impl: unsafe extern "C" fn(cat: *const VCOS_LOG_CAT_T, _level: VCOS_LOG_LEVEL_T, fmt: *const c_char, ...)vcos_vlog_impl: unsafe extern "C" fn(cat: *const VCOS_LOG_CAT_T, _level: VCOS_LOG_LEVEL_T, fmt: *const c_char, args: va_list)vcos_set_vlog_impl: unsafe extern "C" fn(vlog_impl_func: VCOS_VLOG_IMPL_FUNC_T)vcos_vlog_default_impl: unsafe extern "C" fn(cat: *const VCOS_LOG_CAT_T, _level: VCOS_LOG_LEVEL_T, fmt: *const c_char, args: va_list)vcos_logging_init: unsafe extern "C" fn()vcos_log_register: unsafe extern "C" fn(name: *const c_char, category: *mut VCOS_LOG_CAT_T)vcos_log_unregister: unsafe extern "C" fn(category: *mut VCOS_LOG_CAT_T)vcos_log_get_default_category: unsafe extern "C" fn() -> *const VCOS_LOG_CAT_Tvcos_set_log_options: unsafe extern "C" fn(opt: *const c_char)vcos_log_dump_mem_impl: unsafe extern "C" fn(cat: *const VCOS_LOG_CAT_T, label: *const c_char, addr: u32, voidMem: *const c_void, numBytes: size_t)vcos_cmd_error: unsafe extern "C" fn(param: *mut VCOS_CMD_PARAM_T, fmt: *const c_char, ...)vcos_cmd_printf: unsafe extern "C" fn(param: *mut VCOS_CMD_PARAM_T, fmt: *const c_char, ...)vcos_cmd_vprintf: unsafe extern "C" fn(param: *mut VCOS_CMD_PARAM_T, fmt: *const c_char, args: va_list)vcos_cmd_always_log_output: unsafe extern "C" fn(log_category: *mut VCOS_LOG_CAT_T)vcos_cmd_usage: unsafe extern "C" fn(param: *mut VCOS_CMD_PARAM_T)vcos_cmd_register: unsafe extern "C" fn(cmd_entry: *mut VCOS_CMD_T) -> VCOS_STATUS_Tvcos_cmd_register_multiple: unsafe extern "C" fn(cmd_entry: *mut VCOS_CMD_T) -> VCOS_STATUS_Tvcos_cmd_execute: unsafe extern "C" fn(argc: c_int, argv: *mut *mut c_char, result_size: size_t, result_buf: *mut c_char) -> VCOS_STATUS_Tvcos_cmd_shutdown: unsafe extern "C" fn()vcos_vsnprintf: unsafe extern "C" fn(buf: *mut c_char, buflen: size_t, fmt: *const c_char, ap: va_list) -> c_intvcos_snprintf: unsafe extern "C" fn(buf: *mut c_char, buflen: size_t, fmt: *const c_char, ...) -> c_intvcos_safe_vsprintf: unsafe extern "C" fn(buf: *mut c_char, buflen: size_t, offset: size_t, fmt: *const c_char, ap: va_list) -> size_tvcos_safe_sprintf: unsafe extern "C" fn(buf: *mut c_char, buflen: size_t, offset: size_t, fmt: *const c_char, ...) -> size_tvcos_safe_strcpy: unsafe extern "C" fn(dst: *mut c_char, src: *const c_char, dstlen: size_t, offset: size_t) -> size_tvcos_safe_strncpy: unsafe extern "C" fn(dst: *mut c_char, src: *const c_char, srclen: size_t, dstlen: size_t, offset: size_t) -> size_tvcos_thread_attr_init: unsafe extern "C" fn(attrs: *mut VCOS_THREAD_ATTR_T)vcos_timer_init: unsafe extern "C" fn() -> VCOS_STATUS_Tvcos_once: unsafe extern "C" fn(once_control: *mut VCOS_ONCE_T, init_routine: Option<unsafe extern "C" fn()>) -> VCOS_STATUS_Tvchi_create_connection: unsafe extern "C" fn(function_table: *const VCHI_CONNECTION_API_T, low_level: *const VCHI_MESSAGE_DRIVER_T) -> *mut VCHI_CONNECTION_Tvchi_initialise: unsafe extern "C" fn(instance_handle: *mut VCHI_INSTANCE_T) -> i32vchi_connect: unsafe extern "C" fn(connections: *mut *mut VCHI_CONNECTION_T, num_connections: u32, instance_handle: VCHI_INSTANCE_T) -> i32vchi_disconnect: unsafe extern "C" fn(instance_handle: VCHI_INSTANCE_T) -> i32vchi_service_create: unsafe extern "C" fn(instance_handle: VCHI_INSTANCE_T, setup: *mut SERVICE_CREATION_T, handle: *mut VCHI_SERVICE_HANDLE_T) -> i32vchi_service_destroy: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T) -> i32vchi_service_open: unsafe extern "C" fn(instance_handle: VCHI_INSTANCE_T, setup: *mut SERVICE_CREATION_T, handle: *mut VCHI_SERVICE_HANDLE_T) -> i32vchi_service_close: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T) -> i32vchi_service_use: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T) -> i32vchi_service_release: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T) -> i32vchi_service_set_option: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T, option: VCHI_SERVICE_OPTION_T, value: c_int) -> i32vchi_msg_queue: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T, data: *const c_void, data_size: u32, flags: VCHI_FLAGS_T, msg_handle: *mut c_void) -> i32vchi_msg_queuev: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T, vector: *mut VCHI_MSG_VECTOR_T, count: u32, flags: VCHI_FLAGS_T, msg_handle: *mut c_void) -> i32vchi_msg_dequeue: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T, data: *mut c_void, max_data_size_to_read: u32, actual_msg_size: *mut u32, flags: VCHI_FLAGS_T) -> i32vchi_msg_peek: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T, data: *mut *mut c_void, msg_size: *mut u32, flags: VCHI_FLAGS_T) -> i32vchi_msg_remove: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T) -> i32vchi_msg_hold: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T, data: *mut *mut c_void, msg_size: *mut u32, flags: VCHI_FLAGS_T, message_descriptor: *mut VCHI_HELD_MSG_T) -> i32vchi_held_msg_release: unsafe extern "C" fn(message: *mut VCHI_HELD_MSG_T) -> i32vchi_bulk_queue_receive: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T, data_dst: *mut c_void, data_size: u32, flags: VCHI_FLAGS_T, transfer_handle: *mut c_void) -> i32vchi_bulk_queue_transmit: unsafe extern "C" fn(handle: VCHI_SERVICE_HANDLE_T, data_src: *const c_void, data_size: u32, flags: VCHI_FLAGS_T, transfer_handle: *mut c_void) -> i32vchi_mphi_message_driver_func_table: unsafe extern "C" fn() -> *const VCHI_MESSAGE_DRIVER_Tvc_vchi_gencmd_init: unsafe extern "C" fn(initialise_instance: VCHI_INSTANCE_T, connections: *mut *mut VCHI_CONNECTION_T, num_connections: u32)vc_gencmd_stop: unsafe extern "C" fn()vc_gencmd_send: unsafe extern "C" fn(format: *const c_char, ...) -> c_intvc_gencmd_read_response: unsafe extern "C" fn(response: *mut c_char, maxlen: c_int) -> c_intvc_gencmd_string_property: unsafe extern "C" fn(text: *mut c_char, property: *const c_char, value: *mut *mut c_char, length: *mut c_int) -> c_intvc_gencmd_number_property: unsafe extern "C" fn(text: *mut c_char, property: *const c_char, number: *mut c_int) -> c_intvc_gencmd_until: unsafe extern "C" fn(cmd: *mut c_char, property: *const c_char, value: *mut c_char, error_string: *const c_char, timeout: c_int) -> c_intbcm_host_get_model_type: unsafe extern "C" fn() -> c_intbcm_host_is_model_pi4: unsafe extern "C" fn() -> c_intbcm_host_is_fkms_active: unsafe extern "C" fn() -> c_intbcm_host_is_kms_active: unsafe extern "C" fn() -> c_intbcm_host_get_processor_id: unsafe extern "C" fn() -> c_intImplementations
sourceimpl libbcm_host
impl libbcm_host
pub unsafe fn new<P>(path: P) -> Result<Self, Error> where
P: AsRef<OsStr>,
pub unsafe fn from_library<L>(library: L) -> Result<Self, Error> where
L: Into<Library>,
pub unsafe fn bcm_host_init(&self)
pub unsafe fn bcm_host_deinit(&self)
pub unsafe fn graphics_get_display_size(
&self,
display_number: u16,
width: *mut u32,
height: *mut u32
) -> i32
pub unsafe fn bcm_host_get_peripheral_address(&self) -> c_uint
pub unsafe fn bcm_host_get_peripheral_size(&self) -> c_uint
pub unsafe fn bcm_host_get_sdram_address(&self) -> c_uint
pub unsafe fn vcos_verify_bkpts_enabled(&self) -> c_int
pub unsafe fn vcos_verify_bkpts_enable(&self, enable: c_int) -> c_int
pub unsafe fn vcos_abort(&self)
pub unsafe fn vcos_backtrace_self(&self)
pub unsafe fn vcos_generic_event_flags_create(
&self,
flags: *mut VCOS_EVENT_FLAGS_T,
name: *const c_char
) -> VCOS_STATUS_T
pub unsafe fn vcos_generic_event_flags_set(
&self,
flags: *mut VCOS_EVENT_FLAGS_T,
events: VCOS_UNSIGNED,
op: VCOS_OPTION
)
pub unsafe fn vcos_generic_event_flags_delete(
&self,
arg1: *mut VCOS_EVENT_FLAGS_T
)
pub unsafe fn vcos_generic_event_flags_get(
&self,
flags: *mut VCOS_EVENT_FLAGS_T,
requested_events: VCOS_UNSIGNED,
op: VCOS_OPTION,
suspend: VCOS_UNSIGNED,
retrieved_events: *mut VCOS_UNSIGNED
) -> VCOS_STATUS_T
pub unsafe fn vcos_generic_blockpool_init(
&self,
pool: *mut VCOS_BLOCKPOOL_T,
num_blocks: VCOS_UNSIGNED,
block_size: VCOS_UNSIGNED,
start: *mut c_void,
pool_size: VCOS_UNSIGNED,
align: VCOS_UNSIGNED,
flags: VCOS_UNSIGNED,
name: *const c_char
) -> VCOS_STATUS_T
pub unsafe fn vcos_generic_blockpool_create_on_heap(
&self,
pool: *mut VCOS_BLOCKPOOL_T,
num_blocks: VCOS_UNSIGNED,
block_size: VCOS_UNSIGNED,
align: VCOS_UNSIGNED,
flags: VCOS_UNSIGNED,
name: *const c_char
) -> VCOS_STATUS_T
pub unsafe fn vcos_generic_blockpool_extend(
&self,
pool: *mut VCOS_BLOCKPOOL_T,
num_extensions: VCOS_UNSIGNED,
num_blocks: VCOS_UNSIGNED
) -> VCOS_STATUS_T
pub unsafe fn vcos_generic_blockpool_alloc(
&self,
pool: *mut VCOS_BLOCKPOOL_T
) -> *mut c_void
pub unsafe fn vcos_generic_blockpool_calloc(
&self,
pool: *mut VCOS_BLOCKPOOL_T
) -> *mut c_void
pub unsafe fn vcos_generic_blockpool_free(&self, block: *mut c_void)
pub unsafe fn vcos_generic_blockpool_available_count(
&self,
pool: *mut VCOS_BLOCKPOOL_T
) -> VCOS_UNSIGNED
pub unsafe fn vcos_generic_blockpool_used_count(
&self,
pool: *mut VCOS_BLOCKPOOL_T
) -> VCOS_UNSIGNED
pub unsafe fn vcos_generic_blockpool_delete(&self, pool: *mut VCOS_BLOCKPOOL_T)
pub unsafe fn vcos_generic_blockpool_elem_to_handle(
&self,
block: *mut c_void
) -> u32
pub unsafe fn vcos_generic_blockpool_elem_from_handle(
&self,
pool: *mut VCOS_BLOCKPOOL_T,
handle: u32
) -> *mut c_void
pub unsafe fn vcos_generic_blockpool_is_valid_elem(
&self,
pool: *mut VCOS_BLOCKPOOL_T,
block: *const c_void
) -> u32
pub unsafe fn vcos_generic_mem_alloc(
&self,
sz: VCOS_UNSIGNED,
desc: *const c_char
) -> *mut c_void
pub unsafe fn vcos_generic_mem_calloc(
&self,
count: VCOS_UNSIGNED,
sz: VCOS_UNSIGNED,
descr: *const c_char
) -> *mut c_void
pub unsafe fn vcos_generic_mem_free(&self, ptr: *mut c_void)
pub unsafe fn vcos_generic_mem_alloc_aligned(
&self,
sz: VCOS_UNSIGNED,
align: VCOS_UNSIGNED,
desc: *const c_char
) -> *mut c_void
pub unsafe fn vcos_pthreads_map_error(&self, error: c_int) -> VCOS_STATUS_T
pub unsafe fn vcos_pthreads_map_errno(&self) -> VCOS_STATUS_T
pub unsafe fn vcos_thread_at_exit(
&self,
pfn: Option<unsafe extern "C" fn(arg1: *mut c_void)>,
cxt: *mut c_void
) -> VCOS_STATUS_T
pub unsafe fn vcos_dummy_thread_create(&self) -> *mut VCOS_THREAD_T
pub unsafe fn vcos_getmicrosecs64_internal(&self) -> u64
pub unsafe fn vcos_pthreads_timer_create(
&self,
timer: *mut VCOS_TIMER_T,
name: *const c_char,
expiration_routine: Option<unsafe extern "C" fn(context: *mut c_void)>,
context: *mut c_void
) -> VCOS_STATUS_T
pub unsafe fn vcos_pthreads_timer_set(
&self,
timer: *mut VCOS_TIMER_T,
delay_ms: VCOS_UNSIGNED
)
pub unsafe fn vcos_pthreads_timer_cancel(&self, timer: *mut VCOS_TIMER_T)
pub unsafe fn vcos_pthreads_timer_delete(&self, timer: *mut VCOS_TIMER_T)
pub unsafe fn vcos_generic_reentrant_mutex_create(
&self,
m: *mut VCOS_REENTRANT_MUTEX_T,
name: *const c_char
) -> VCOS_STATUS_T
pub unsafe fn vcos_generic_reentrant_mutex_delete(
&self,
m: *mut VCOS_REENTRANT_MUTEX_T
)
pub unsafe fn vcos_generic_reentrant_mutex_lock(
&self,
m: *mut VCOS_REENTRANT_MUTEX_T
)
pub unsafe fn vcos_generic_reentrant_mutex_unlock(
&self,
m: *mut VCOS_REENTRANT_MUTEX_T
)
pub unsafe fn vcos_generic_named_semaphore_create(
&self,
sem: *mut VCOS_NAMED_SEMAPHORE_T,
name: *const c_char,
count: VCOS_UNSIGNED
) -> VCOS_STATUS_T
pub unsafe fn vcos_named_semaphore_delete(
&self,
sem: *mut VCOS_NAMED_SEMAPHORE_T
)
pub unsafe fn vcos_init(&self) -> VCOS_STATUS_T
pub unsafe fn vcos_deinit(&self)
pub unsafe fn vcos_global_lock(&self)
pub unsafe fn vcos_global_unlock(&self)
pub unsafe fn vcos_set_args(&self, argc: c_int, argv: *mut *const c_char)
pub unsafe fn vcos_get_argc(&self) -> c_int
pub unsafe fn vcos_get_argv(&self) -> *mut *const c_char
pub unsafe fn vcos_platform_init(&self) -> VCOS_STATUS_T
pub unsafe fn vcos_platform_deinit(&self)
pub unsafe fn vcos_have_rtos(&self) -> c_int
pub unsafe fn vcos_thread_create(
&self,
thread: *mut VCOS_THREAD_T,
name: *const c_char,
attrs: *mut VCOS_THREAD_ATTR_T,
entry: VCOS_THREAD_ENTRY_FN_T,
arg: *mut c_void
) -> VCOS_STATUS_T
pub unsafe fn vcos_thread_exit(&self, data: *mut c_void)
pub unsafe fn vcos_thread_join(
&self,
thread: *mut VCOS_THREAD_T,
pData: *mut *mut c_void
)
pub unsafe fn vcos_thread_create_classic(
&self,
thread: *mut VCOS_THREAD_T,
name: *const c_char,
entry: Option<unsafe extern "C" fn(arg: *mut c_void) -> *mut c_void>,
arg: *mut c_void,
stack: *mut c_void,
stacksz: VCOS_UNSIGNED,
priaff: VCOS_UNSIGNED,
timeslice: VCOS_UNSIGNED,
autostart: VCOS_UNSIGNED
) -> VCOS_STATUS_T
pub unsafe fn vcos_thread_get_name(
&self,
thread: *const VCOS_THREAD_T
) -> *const c_char
pub unsafe fn vcos_log_level_to_string(
&self,
level: VCOS_LOG_LEVEL_T
) -> *const c_char
pub unsafe fn vcos_string_to_log_level(
&self,
str_: *const c_char,
level: *mut VCOS_LOG_LEVEL_T
) -> VCOS_STATUS_T
pub unsafe fn vcos_vlog_impl(
&self,
cat: *const VCOS_LOG_CAT_T,
_level: VCOS_LOG_LEVEL_T,
fmt: *const c_char,
args: va_list
)
pub unsafe fn vcos_set_vlog_impl(&self, vlog_impl_func: VCOS_VLOG_IMPL_FUNC_T)
pub unsafe fn vcos_vlog_default_impl(
&self,
cat: *const VCOS_LOG_CAT_T,
_level: VCOS_LOG_LEVEL_T,
fmt: *const c_char,
args: va_list
)
pub unsafe fn vcos_logging_init(&self)
pub unsafe fn vcos_log_register(
&self,
name: *const c_char,
category: *mut VCOS_LOG_CAT_T
)
pub unsafe fn vcos_log_unregister(&self, category: *mut VCOS_LOG_CAT_T)
pub unsafe fn vcos_log_get_default_category(&self) -> *const VCOS_LOG_CAT_T
pub unsafe fn vcos_set_log_options(&self, opt: *const c_char)
pub unsafe fn vcos_log_dump_mem_impl(
&self,
cat: *const VCOS_LOG_CAT_T,
label: *const c_char,
addr: u32,
voidMem: *const c_void,
numBytes: size_t
)
pub unsafe fn vcos_cmd_vprintf(
&self,
param: *mut VCOS_CMD_PARAM_T,
fmt: *const c_char,
args: va_list
)
pub unsafe fn vcos_cmd_always_log_output(
&self,
log_category: *mut VCOS_LOG_CAT_T
)
pub unsafe fn vcos_cmd_usage(&self, param: *mut VCOS_CMD_PARAM_T)
pub unsafe fn vcos_cmd_register(
&self,
cmd_entry: *mut VCOS_CMD_T
) -> VCOS_STATUS_T
pub unsafe fn vcos_cmd_register_multiple(
&self,
cmd_entry: *mut VCOS_CMD_T
) -> VCOS_STATUS_T
pub unsafe fn vcos_cmd_execute(
&self,
argc: c_int,
argv: *mut *mut c_char,
result_size: size_t,
result_buf: *mut c_char
) -> VCOS_STATUS_T
pub unsafe fn vcos_cmd_shutdown(&self)
pub unsafe fn vcos_vsnprintf(
&self,
buf: *mut c_char,
buflen: size_t,
fmt: *const c_char,
ap: va_list
) -> c_int
pub unsafe fn vcos_safe_vsprintf(
&self,
buf: *mut c_char,
buflen: size_t,
offset: size_t,
fmt: *const c_char,
ap: va_list
) -> size_t
pub unsafe fn vcos_safe_strcpy(
&self,
dst: *mut c_char,
src: *const c_char,
dstlen: size_t,
offset: size_t
) -> size_t
pub unsafe fn vcos_safe_strncpy(
&self,
dst: *mut c_char,
src: *const c_char,
srclen: size_t,
dstlen: size_t,
offset: size_t
) -> size_t
pub unsafe fn vcos_thread_attr_init(&self, attrs: *mut VCOS_THREAD_ATTR_T)
pub unsafe fn vcos_timer_init(&self) -> VCOS_STATUS_T
pub unsafe fn vcos_once(
&self,
once_control: *mut VCOS_ONCE_T,
init_routine: Option<unsafe extern "C" fn()>
) -> VCOS_STATUS_T
pub unsafe fn vchi_create_connection(
&self,
function_table: *const VCHI_CONNECTION_API_T,
low_level: *const VCHI_MESSAGE_DRIVER_T
) -> *mut VCHI_CONNECTION_T
pub unsafe fn vchi_initialise(
&self,
instance_handle: *mut VCHI_INSTANCE_T
) -> i32
pub unsafe fn vchi_connect(
&self,
connections: *mut *mut VCHI_CONNECTION_T,
num_connections: u32,
instance_handle: VCHI_INSTANCE_T
) -> i32
pub unsafe fn vchi_disconnect(&self, instance_handle: VCHI_INSTANCE_T) -> i32
pub unsafe fn vchi_service_create(
&self,
instance_handle: VCHI_INSTANCE_T,
setup: *mut SERVICE_CREATION_T,
handle: *mut VCHI_SERVICE_HANDLE_T
) -> i32
pub unsafe fn vchi_service_destroy(&self, handle: VCHI_SERVICE_HANDLE_T) -> i32
pub unsafe fn vchi_service_open(
&self,
instance_handle: VCHI_INSTANCE_T,
setup: *mut SERVICE_CREATION_T,
handle: *mut VCHI_SERVICE_HANDLE_T
) -> i32
pub unsafe fn vchi_service_close(&self, handle: VCHI_SERVICE_HANDLE_T) -> i32
pub unsafe fn vchi_service_use(&self, handle: VCHI_SERVICE_HANDLE_T) -> i32
pub unsafe fn vchi_service_release(&self, handle: VCHI_SERVICE_HANDLE_T) -> i32
pub unsafe fn vchi_service_set_option(
&self,
handle: VCHI_SERVICE_HANDLE_T,
option: VCHI_SERVICE_OPTION_T,
value: c_int
) -> i32
pub unsafe fn vchi_msg_queue(
&self,
handle: VCHI_SERVICE_HANDLE_T,
data: *const c_void,
data_size: u32,
flags: VCHI_FLAGS_T,
msg_handle: *mut c_void
) -> i32
pub unsafe fn vchi_msg_queuev(
&self,
handle: VCHI_SERVICE_HANDLE_T,
vector: *mut VCHI_MSG_VECTOR_T,
count: u32,
flags: VCHI_FLAGS_T,
msg_handle: *mut c_void
) -> i32
pub unsafe fn vchi_msg_dequeue(
&self,
handle: VCHI_SERVICE_HANDLE_T,
data: *mut c_void,
max_data_size_to_read: u32,
actual_msg_size: *mut u32,
flags: VCHI_FLAGS_T
) -> i32
pub unsafe fn vchi_msg_peek(
&self,
handle: VCHI_SERVICE_HANDLE_T,
data: *mut *mut c_void,
msg_size: *mut u32,
flags: VCHI_FLAGS_T
) -> i32
pub unsafe fn vchi_msg_remove(&self, handle: VCHI_SERVICE_HANDLE_T) -> i32
pub unsafe fn vchi_msg_hold(
&self,
handle: VCHI_SERVICE_HANDLE_T,
data: *mut *mut c_void,
msg_size: *mut u32,
flags: VCHI_FLAGS_T,
message_descriptor: *mut VCHI_HELD_MSG_T
) -> i32
pub unsafe fn vchi_held_msg_release(&self, message: *mut VCHI_HELD_MSG_T) -> i32
pub unsafe fn vchi_bulk_queue_receive(
&self,
handle: VCHI_SERVICE_HANDLE_T,
data_dst: *mut c_void,
data_size: u32,
flags: VCHI_FLAGS_T,
transfer_handle: *mut c_void
) -> i32
pub unsafe fn vchi_bulk_queue_transmit(
&self,
handle: VCHI_SERVICE_HANDLE_T,
data_src: *const c_void,
data_size: u32,
flags: VCHI_FLAGS_T,
transfer_handle: *mut c_void
) -> i32
pub unsafe fn vchi_mphi_message_driver_func_table(
&self
) -> *const VCHI_MESSAGE_DRIVER_T
pub unsafe fn vc_vchi_gencmd_init(
&self,
initialise_instance: VCHI_INSTANCE_T,
connections: *mut *mut VCHI_CONNECTION_T,
num_connections: u32
)
pub unsafe fn vc_gencmd_stop(&self)
pub unsafe fn vc_gencmd_read_response(
&self,
response: *mut c_char,
maxlen: c_int
) -> c_int
pub unsafe fn vc_gencmd_string_property(
&self,
text: *mut c_char,
property: *const c_char,
value: *mut *mut c_char,
length: *mut c_int
) -> c_int
pub unsafe fn vc_gencmd_number_property(
&self,
text: *mut c_char,
property: *const c_char,
number: *mut c_int
) -> c_int
pub unsafe fn vc_gencmd_until(
&self,
cmd: *mut c_char,
property: *const c_char,
value: *mut c_char,
error_string: *const c_char,
timeout: c_int
) -> c_int
pub unsafe fn bcm_host_get_model_type(&self) -> c_int
pub unsafe fn bcm_host_is_model_pi4(&self) -> c_int
pub unsafe fn bcm_host_is_fkms_active(&self) -> c_int
pub unsafe fn bcm_host_is_kms_active(&self) -> c_int
pub unsafe fn bcm_host_get_processor_id(&self) -> c_int
Auto Trait Implementations
impl RefUnwindSafe for libbcm_host
impl Send for libbcm_host
impl Sync for libbcm_host
impl Unpin for libbcm_host
impl UnwindSafe for libbcm_host
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more