![]() |
Open Lighting Architecture 0.10.9
|
The base LibUsbAdaptor that passes most calls through to libusb.
Public Member Functions | |
| libusb_device * | RefDevice (libusb_device *dev) |
| Wraps libusb_ref_device. | |
| void | UnrefDevice (libusb_device *dev) |
| Wraps libusb_unref_device. | |
| int | SetConfiguration (libusb_device_handle *dev, int configuration) |
| Wraps libusb_set_configuration. | |
| int | ClaimInterface (libusb_device_handle *dev, int interface_number) |
| Wraps libusb_claim_interface. | |
| int | DetachKernelDriver (libusb_device_handle *dev, int interface_number) |
| Detach a kernel driver. | |
| int | GetDeviceDescriptor (libusb_device *dev, struct libusb_device_descriptor *descriptor) |
| Wraps libusb_get_device_descriptor. | |
| int | GetActiveConfigDescriptor (libusb_device *dev, struct libusb_config_descriptor **config) |
| Wraps libusb_get_active_config_descriptor. | |
| int | GetConfigDescriptor (libusb_device *dev, uint8_t config_index, struct libusb_config_descriptor **config) |
| Wraps libusb_get_config_descriptor. | |
| void | FreeConfigDescriptor (struct libusb_config_descriptor *config) |
| Wraps busb_free_config_descriptor. | |
| bool | GetStringDescriptor (libusb_device_handle *usb_handle, uint8_t descriptor_index, std::string *data) |
| Get the value of a string descriptor. | |
| struct libusb_transfer * | AllocTransfer (int iso_packets) |
| Wraps libusb_alloc_transfer. | |
| void | FreeTransfer (struct libusb_transfer *transfer) |
| Wraps libusb_free_transfer. | |
| int | SubmitTransfer (struct libusb_transfer *transfer) |
| Wraps libusb_submit_transfer. | |
| int | CancelTransfer (struct libusb_transfer *transfer) |
| Wraps libusb_cancel_transfer. | |
| void | FillControlSetup (unsigned char *buffer, uint8_t bmRequestType, uint8_t bRequest, uint16_t wValue, uint16_t wIndex, uint16_t wLength) |
| Wraps libusb_fill_control_setup. | |
| void | FillControlTransfer (struct libusb_transfer *transfer, libusb_device_handle *dev_handle, unsigned char *buffer, libusb_transfer_cb_fn callback, void *user_data, unsigned int timeout) |
| Wraps libusb_fill_control_transfer. | |
| void | FillBulkTransfer (struct libusb_transfer *transfer, libusb_device_handle *dev_handle, unsigned char endpoint, unsigned char *buffer, int length, libusb_transfer_cb_fn callback, void *user_data, unsigned int timeout) |
| Wraps libusb_fill_bulk_transfer. | |
| void | FillInterruptTransfer (struct libusb_transfer *transfer, libusb_device_handle *dev_handle, unsigned char endpoint, unsigned char *buffer, int length, libusb_transfer_cb_fn callback, void *user_data, unsigned int timeout) |
| Wraps libusb_fill_interrupt_transfer. | |
| int | ControlTransfer (libusb_device_handle *dev_handle, uint8_t bmRequestType, uint8_t bRequest, uint16_t wValue, uint16_t wIndex, unsigned char *data, uint16_t wLength, unsigned int timeout) |
| Wraps libusb_control_transfer(). | |
| int | BulkTransfer (struct libusb_device_handle *dev_handle, unsigned char endpoint, unsigned char *data, int length, int *transferred, unsigned int timeout) |
| Wraps libusb_bulk_transfer. | |
| int | InterruptTransfer (libusb_device_handle *dev_handle, unsigned char endpoint, unsigned char *data, int length, int *actual_length, unsigned int timeout) |
| Wraps libusb_interrupt_transfer. | |
| USBDeviceID | GetDeviceId (libusb_device *device) const |
| Get the USBDeviceID for a device. | |
Public Member Functions inherited from ola::usb::LibUsbAdaptor | |
| virtual bool | OpenDevice (libusb_device *usb_device, libusb_device_handle **usb_handle)=0 |
| Open a libusb device. | |
| virtual bool | OpenDeviceAndClaimInterface (libusb_device *usb_device, int interface, libusb_device_handle **usb_handle)=0 |
| Open a libusb device and claim an interface. | |
| virtual void | Close (libusb_device_handle *usb_handle)=0 |
| Close a libusb handle. | |
Additional Inherited Members | |
Static Public Member Functions inherited from ola::usb::LibUsbAdaptor | |
| static bool | Initialize (struct libusb_context **context) |
| Initialize a new libusb context. | |
| static bool | GetDeviceInfo (struct libusb_device *usb_device, const struct libusb_device_descriptor &device_descriptor, DeviceInformation *device_info) |
| Fetch the manufacturer, product and serial strings from a device. | |
| static bool | CheckManufacturer (const std::string &expected, const DeviceInformation &device_info) |
| Check if the manufacturer string matches the expected value. | |
| static bool | CheckProduct (const std::string &expected, const DeviceInformation &device_info) |
| Check if the product string matches the expected value. | |
| static bool | HotplugSupported () |
| Check if this platform supports hotplug. | |
| static std::string | ErrorCodeToString (const int error_code) |
| Try and convert an error code to a string. | |
|
virtual |
Wraps libusb_alloc_transfer.
| iso_packets | number of isochronous packet descriptors to allocate |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps libusb_bulk_transfer.
transferred transferred) Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps libusb_cancel_transfer.
| transfer | the transfer to cancel |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps libusb_claim_interface.
| dev | a device handle |
| interface_number | the bInterfaceNumber of the interface you wish to claim |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps libusb_control_transfer().
| dev_handle | a handle for the device to communicate with | |
| bmRequestType | the request type field for the setup packet | |
| bRequest | the request field for the setup packet | |
| wValue | the value field for the setup packet | |
| wIndex | the index field for the setup packet | |
| [in,out] | data | a suitably-sized data buffer for either input or output (depending on direction bits within bmRequestType) |
| wLength | the length field for the setup packet. The data buffer should be at least this size. | |
| timeout | timeout (in milliseconds) that this function should wait before giving up due to no response being received. For an unlimited timeout, use value 0. |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Detach a kernel driver.
| dev | a device handle |
| interface_number | the interface to detach the driver from |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps libusb_fill_bulk_transfer.
| [out] | transfer | the transfer to populate |
| dev_handle | handle of the device that will handle the transfer | |
| endpoint | address of the endpoint where this transfer will be sent | |
| buffer | data buffer. If provided, this function will interpret the first 8 bytes as a setup packet and infer the transfer length from that. This pointer must be aligned to at least 2 bytes boundary. | |
| length | length of data buffer | |
| callback | callback function to be invoked on transfer completion | |
| user_data | user data to pass to callback function | |
| timeout | timeout for the transfer in milliseconds |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps libusb_fill_control_setup.
| [out] | buffer | buffer to output the setup packet into This pointer must be aligned to at least 2 bytes boundary. |
| bmRequestType | the request type field for the setup packet | |
| bRequest | the request field for the setup packet | |
| wValue | the value field for the setup packet | |
| wIndex | the index field for the setup packet | |
| wLength | the length field for the setup packet. The data buffer should be at least this size. |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps libusb_fill_control_transfer.
| [out] | transfer | the transfer to populate |
| dev_handle | handle of the device that will handle the transfer | |
| buffer | data buffer. If provided, this function will interpret the first 8 bytes as a setup packet and infer the transfer length from that. This pointer must be aligned to at least 2 bytes boundary. | |
| callback | callback function to be invoked on transfer completion | |
| user_data | user data to pass to callback function | |
| timeout | timeout for the transfer in milliseconds |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps libusb_fill_interrupt_transfer.
| [out] | transfer | the transfer to populate |
| dev_handle | handle of the device that will handle the transfer | |
| endpoint | address of the endpoint where this transfer will be sent | |
| buffer | data buffer | |
| length | length of data buffer | |
| callback | callback function to be invoked on transfer completion | |
| user_data | user data to pass to callback function | |
| timeout | timeout for the transfer in milliseconds |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps busb_free_config_descriptor.
| config | the configuration descriptor to free |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps libusb_free_transfer.
| transfer | the transfer to free |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps libusb_get_active_config_descriptor.
| dev | a device | |
| [out] | config | output location for the USB configuration descriptor. Only valid if 0 was returned. Must be freed with libusb_free_config_descriptor() after use. |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps libusb_get_config_descriptor.
| dev | a device | |
| config_index | the index of the configuration you wish to retrieve | |
| [out] | config | output location for the USB configuration descriptor. Only valid if 0 was returned. Must be freed with libusb_free_config_descriptor() after use. |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps libusb_get_device_descriptor.
| dev | a device | |
| [out] | descriptor | The device descriptor. |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Get the USBDeviceID for a device.
| device | The libusb device to get the ID of. |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Get the value of a string descriptor.
| usb_handle | The USB device handle | |
| descriptor_index | The index of the string descriptor to fetch. | |
| [out] | data | The value of the string descriptor. |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps libusb_interrupt_transfer.
transferred Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps libusb_ref_device.
| dev | the device to reference |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps libusb_set_configuration.
| dev | a device handle |
| configuration | the bConfigurationValue of the configuration you wish to activate, or -1 if you wish to put the device in an unconfigured state. |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps libusb_submit_transfer.
| transfer | the transfer to submit |
Implements ola::usb::LibUsbAdaptor.
|
virtual |
Wraps libusb_unref_device.
| dev | the device to unreference. |
Implements ola::usb::LibUsbAdaptor.