class UsbAdbImpl

Defined at line 1710 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 queue state:

ZX_OK: Packet has been enqueued.

Other: Packet could not be enqueued.

Upon a return of ZX_OK, the packet has been enqueued, but no information is returned as to

the completion state of the transmission itself.

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.