mirror of
https://github.com/sxyazi/yazi.git
synced 2026-07-24 16:21:04 +00:00
44 lines
1.2 KiB
Rust
44 lines
1.2 KiB
Rust
use std::ffi::{c_char, c_void};
|
|
|
|
use core_foundation_sys::{array::CFArrayRef, base::CFAllocatorRef, dictionary::CFDictionaryRef, runloop::CFRunLoopRef, string::CFStringRef};
|
|
|
|
#[link(name = "DiskArbitration", kind = "framework")]
|
|
unsafe extern "C" {
|
|
pub fn DASessionCreate(allocator: CFAllocatorRef) -> *const c_void;
|
|
|
|
pub fn DADiskCreateFromBSDName(
|
|
allocator: CFAllocatorRef,
|
|
session: *const c_void,
|
|
path: *const c_char,
|
|
) -> *const c_void;
|
|
|
|
pub fn DADiskCopyDescription(disk: *const c_void) -> CFDictionaryRef;
|
|
|
|
pub fn DARegisterDiskAppearedCallback(
|
|
session: *const c_void,
|
|
r#match: CFDictionaryRef,
|
|
callback: extern "C" fn(disk: *const c_void, context: *mut c_void),
|
|
context: *mut c_void,
|
|
);
|
|
|
|
pub fn DARegisterDiskDescriptionChangedCallback(
|
|
session: *const c_void,
|
|
r#match: CFDictionaryRef,
|
|
watch: CFArrayRef,
|
|
callback: extern "C" fn(disk: *const c_void, keys: CFArrayRef, context: *mut c_void),
|
|
context: *mut c_void,
|
|
);
|
|
|
|
pub fn DARegisterDiskDisappearedCallback(
|
|
session: *const c_void,
|
|
r#match: CFDictionaryRef,
|
|
callback: extern "C" fn(disk: *const c_void, context: *mut c_void),
|
|
context: *mut c_void,
|
|
);
|
|
|
|
pub fn DASessionScheduleWithRunLoop(
|
|
session: *const c_void,
|
|
runLoop: CFRunLoopRef,
|
|
runLoopMode: CFStringRef,
|
|
);
|
|
}
|