#ifndef THIRD_PARTY_LIBUSB_LIBUSB1_LINUX_GOOGLE_H_
#define THIRD_PARTY_LIBUSB_LIBUSB1_LINUX_GOOGLE_H_

struct libusb_context;
struct libusb_device;

/**
 * Returns a USB device currently attached to the system. This is
 * your entry point into connecting to that USB device.
 *
 * This return value of this function indicates whether the device was found or
 * not. Success is a 0, other values indicate failure.
 *
 * \param ctx the context to operate on, or NULL for the default context
 * \param devname SYSFS device name to check
 * \param device output location for the device. Must be later freed with
 * libusb_unref_device().
 * \returns 0 for success.
 * \ref libusb_error according to errors encountered by the backend.
 */
int libusb_ext_get_one_device(libusb_context *ctx, const char* devname,
                              libusb_device **device);

#endif  // THIRD_PARTY_LIBUSB_LIBUSB1_LINUX_GOOGLE_H_
