diff --git a/src/fu-usb-device.c b/src/fu-usb-device.c index abbc0325a..9ee4a0745 100644 --- a/src/fu-usb-device.c +++ b/src/fu-usb-device.c @@ -118,6 +118,24 @@ fu_usb_device_class_init (FuUsbDeviceClass *klass) g_object_class_install_property (object_class, PROP_USB_DEVICE, pspec); } +/** + * fu_usb_device_is_open: + * @device: A #FuUsbDevice + * + * Finds out if a USB device is currently open. + * + * Returns: %TRUE if the device is open. + * + * Since: 1.0.3 + **/ +gboolean +fu_usb_device_is_open (FuUsbDevice *device) +{ + FuUsbDevicePrivate *priv = GET_PRIVATE (device); + g_return_val_if_fail (FU_IS_USB_DEVICE (device), FALSE); + return priv->usb_device_locker != NULL; +} + /** * fu_usb_device_open: * @device: A #FuUsbDevice diff --git a/src/fu-usb-device.h b/src/fu-usb-device.h index 985c2866c..487e7cec9 100644 --- a/src/fu-usb-device.h +++ b/src/fu-usb-device.h @@ -54,6 +54,7 @@ gboolean fu_usb_device_close (FuUsbDevice *device, GError **error); gboolean fu_usb_device_probe (FuUsbDevice *device, GError **error); +gboolean fu_usb_device_is_open (FuUsbDevice *device); G_END_DECLS