|
co_usb
|
Namespaces | |
| namespace | detail |
Classes | |
| struct | basic_transfer |
| Base transfer type which provides Capy's ReadStream/WriteStream operations depending on the direction of the endpoint provided. More... | |
| struct | bulk_stream_transfer |
| Transfer type for bulk stream transfers. More... | |
| struct | bulk_transfer |
| Transfer type for bulk transfers. More... | |
| struct | context |
| libusb_context wrapper More... | |
| struct | context< use_service::no > |
| struct | context< use_service::yes > |
| struct | control_transfer |
| Transfer type for control transfers. More... | |
| struct | device_acceptor |
| Accepts devices via hotplug. More... | |
| struct | device_ref |
| Wrapper for nullable libusb_device that increments ref count on ctor and decrements on dtor. More... | |
| struct | device_triplet |
| Aggregate struct to pass to functions requiring device information. More... | |
| struct | endpoint |
| USB endpoint templated on its direction. More... | |
| struct | error_category_t |
| struct | hotplug_awaitable |
| Low-level awaitable primitive for strapping hotplug callbacks to a coroutine ecosystem. More... | |
| struct | interface |
| RAII wrapper than claims interface on ctor and releases on dtor. More... | |
| struct | interrupt_transfer |
| Transfer type for interrupt transfers. More... | |
| struct | isochronous_transfer |
| Transfer type for isochronous transfers. More... | |
| struct | kernel_driver_guard |
| Refcounted RAII guard for managing detachment of a kernel driver for an interface of a device. More... | |
| struct | transfer_awaitable |
| Awaitable for submitting transfers. More... | |
| struct | transfer_status_category_t |
Typedefs | |
| using | dev_handle_deleter_t = std::decay_t< decltype(libusb_close)> |
| using | unique_dev_handle = std::unique_ptr< libusb_device_handle, dev_handle_deleter_t > |
| using | transfer_deleter_t = std::decay_t< decltype(libusb_free_transfer)> |
| using | unique_transfer = std::unique_ptr< libusb_transfer, transfer_deleter_t > |
Enumerations | |
| enum class | use_service { no = 0 , yes } |
| enum class | usb_error : int { success = LIBUSB_SUCCESS , io_error = LIBUSB_ERROR_IO , invalid_param = LIBUSB_ERROR_INVALID_PARAM , access_error = LIBUSB_ERROR_ACCESS , no_device = LIBUSB_ERROR_NO_DEVICE , not_found = LIBUSB_ERROR_NOT_FOUND , resource_busy = LIBUSB_ERROR_BUSY , timed_out = LIBUSB_ERROR_TIMEOUT , overflow = LIBUSB_ERROR_OVERFLOW , broken_pipe = LIBUSB_ERROR_PIPE , interrupted = LIBUSB_ERROR_INTERRUPTED , out_of_memory = LIBUSB_ERROR_NO_MEM , not_supported = LIBUSB_ERROR_NOT_SUPPORTED , unknown = LIBUSB_ERROR_OTHER } |
| enum class | hotplug_event { arrived = LIBUSB_HOTPLUG_EVENT_DEVICE_ARRIVED , left = LIBUSB_HOTPLUG_EVENT_DEVICE_LEFT } |
| enum class wrapper for hotplug events More... | |
| enum class | hotplug_flag { none = LIBUSB_HOTPLUG_NO_FLAGS , enumerate = LIBUSB_HOTPLUG_ENUMERATE } |
| wrapper for hotplug flags More... | |
| enum class | endpoint_type : uint8_t { control = 0 , bulk , interrupt , isochronous , bulk_stream } |
| enum class | ep_direction { out = 0x00 , in = 0x80 , both = 0xFF } |
| enum class | transfer_status { completed = LIBUSB_TRANSFER_COMPLETED , error = LIBUSB_TRANSFER_ERROR , timed_out = LIBUSB_TRANSFER_TIMED_OUT , cancelled = LIBUSB_TRANSFER_CANCELLED , stall = LIBUSB_TRANSFER_STALL , no_device = LIBUSB_TRANSFER_NO_DEVICE , overflow = LIBUSB_TRANSFER_OVERFLOW } |
| Status codes for transfers. More... | |
| using co_usb::dev_handle_deleter_t = typedef std::decay_t<decltype(libusb_close)> |
| using co_usb::transfer_deleter_t = typedef std::decay_t<decltype(libusb_free_transfer)> |
| using co_usb::unique_dev_handle = typedef std::unique_ptr<libusb_device_handle, dev_handle_deleter_t> |
| using co_usb::unique_transfer = typedef std::unique_ptr<libusb_transfer, transfer_deleter_t> |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
Status codes for transfers.
|
strong |
|
strong |
| void co_usb::default_handler | ( | libusb_context * | ctx, |
| std::stop_token | st | ||
| ) |
default handler function for the service
|
noexcept |
Creates an endpoint with an unknown direction.
|
noexcept |
Wrapper around endpoint<co_usb::ep_direction::in>::make_safe.
|
noexcept |
Wrapper around endpoint<co_usb::ep_direction::out>::make_safe.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
inline |
|
inline |