class UsbAdbImpl
Defined at line 2148 of file fidling/gen/sdk/fidl/fuchsia.hardware.adb/fuchsia.hardware.adb/hlcpp/fuchsia/hardware/adb/cpp/fidl.h
USB ADB implementation protocol. The USB ADB driver would start serving this interface on the
server endpoint passed to a driver during Device::Start.
Public Methods
void ~UsbAdbImpl ()
void QueueTx (::std::vector<uint8_t> data, QueueTxCallback callback)
Request transmission of the packet in |data|.
Return status indicates transmission result:
ZX_OK: Packet has been transmitted over USB to the host.
ZX_ERR_INVALID_ARGS: |data| is empty.
ZX_ERR_BAD_STATE: USB ADB device is not in an online or waiting state (e.g. stopping).
ZX_ERR_IO: Low-level transport error submitting request to the USB endpoint.
ZX_ERR_CANCELED: Transmission was canceled prior to completion (e.g. driver reset or teardown).
void Receive (ReceiveCallback callback)
Request to receive data. This method ensures flow control by allowing the client to queue
|Receive| requests proactively. The driver will complete the requests only when data is
available.
Return data or error.
ZX_OK: Success. data is valid.
ZX_ERR_BAD_STATE: Subsequent requests will not succeed as well.
Other error codes are from underlying subsystem and the caller should retry |Receive| in
that case.