pub struct Context { /* private fields */ }
Expand description
A libusb
context.
Implementations§
source§impl Context
impl Context
sourcepub fn with_options(opts: &[UsbOption]) -> Result<Self>
pub fn with_options(opts: &[UsbOption]) -> Result<Self>
Creates a new libusb
context and sets runtime options.
sourcepub unsafe fn from_raw(raw: *mut libusb_context) -> Self
pub unsafe fn from_raw(raw: *mut libusb_context) -> Self
Creates rusb Context from existing libusb context. Note: This transfers ownership of the context to Rust.
§Safety
This is unsafe because it does not check if the context is valid, so the caller must guarantee that libusb_context is created properly.
Trait Implementations§
source§impl PartialEq for Context
impl PartialEq for Context
source§impl UsbContext for Context
impl UsbContext for Context
source§fn as_raw(&self) -> *mut libusb_context
fn as_raw(&self) -> *mut libusb_context
Get the raw libusb_context pointer, for advanced use in unsafe code.
source§fn devices(&self) -> Result<DeviceList<Self>>
fn devices(&self) -> Result<DeviceList<Self>>
Returns a list of the current USB devices.
source§fn open_device_with_vid_pid(
&self,
vendor_id: u16,
product_id: u16
) -> Option<DeviceHandle<Self>>
fn open_device_with_vid_pid( &self, vendor_id: u16, product_id: u16 ) -> Option<DeviceHandle<Self>>
Convenience function to open a device by its vendor ID and product ID. Read more
source§unsafe fn open_device_with_fd(&self, fd: RawFd) -> Result<DeviceHandle<Self>>
unsafe fn open_device_with_fd(&self, fd: RawFd) -> Result<DeviceHandle<Self>>
Opens the device with a pre-opened file descriptor. Read more
source§fn set_log_level(&mut self, level: LogLevel)
fn set_log_level(&mut self, level: LogLevel)
Sets the log level of a
libusb
for context.fn set_log_callback( &mut self, log_callback: Box<dyn Fn(LogLevel, String)>, mode: LogCallbackMode )
source§fn register_callback(
&self,
vendor_id: Option<u16>,
product_id: Option<u16>,
class: Option<u8>,
callback: Box<dyn Hotplug<Self>>
) -> Result<Registration<Self>>
fn register_callback( &self, vendor_id: Option<u16>, product_id: Option<u16>, class: Option<u8>, callback: Box<dyn Hotplug<Self>> ) -> Result<Registration<Self>>
👎Deprecated since 0.9.0: Use HotplugBuilder
Register a callback to be called on hotplug events. The callback’s
Hotplug::device_arrived method is called when a new device is added to
the bus, and Hotplug::device_left is called when it is removed. Read more
source§fn unregister_callback(&self, _reg: Registration<Self>)
fn unregister_callback(&self, _reg: Registration<Self>)
Unregisters the callback corresponding to the given registration. The
same thing can be achieved by dropping the registration.
source§fn handle_events(&self, timeout: Option<Duration>) -> Result<()>
fn handle_events(&self, timeout: Option<Duration>) -> Result<()>
Handle any pending events.
If timeout less then 1 microseconds then this function will handle any already-pending
events and then immediately return in non-blocking style.
If timeout is None then function will handle any pending events in blocking mode.
source§fn interrupt_handle_events(&self)
fn interrupt_handle_events(&self)
Interrupt any active thread that is handling events (for example with
handle_events).
fn next_timeout(&self) -> Result<Option<Duration>>
impl Eq for Context
impl Send for Context
impl StructuralPartialEq for Context
impl Sync for Context
Auto Trait Implementations§
impl Freeze for Context
impl RefUnwindSafe for Context
impl Unpin for Context
impl UnwindSafe for Context
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more