From 6caeb9d701bd17beeb10f88865d9b993c4ca9a93 Mon Sep 17 00:00:00 2001 From: Sebastian Zagrodzki Date: Sun, 26 Feb 2017 21:12:18 +0100 Subject: [PATCH] remove transferIntf, instead rely on transfer.go "usbTransfer", but with a fake libusb xfer underneath. --- usb/endpoint.go | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/usb/endpoint.go b/usb/endpoint.go index f942709..ff0a970 100644 --- a/usb/endpoint.go +++ b/usb/endpoint.go @@ -27,12 +27,6 @@ type Endpoint interface { Info() EndpointInfo } -type transferIntf interface { - submit() error - wait() (int, error) - free() error -} - type endpoint struct { h *libusbDevHandle @@ -41,8 +35,6 @@ type endpoint struct { readTimeout time.Duration writeTimeout time.Duration - - newUSBTransfer func([]byte, time.Duration) (transferIntf, error) } func (e *endpoint) Read(buf []byte) (int, error) { @@ -64,16 +56,12 @@ func (e *endpoint) Write(buf []byte) (int, error) { func (e *endpoint) Interface() InterfaceSetup { return e.InterfaceSetup } func (e *endpoint) Info() EndpointInfo { return e.EndpointInfo } -func (e *endpoint) newLibUSBTransfer(buf []byte, timeout time.Duration) (transferIntf, error) { - return newUSBTransfer(e.h, e.EndpointInfo, buf, timeout) -} - func (e *endpoint) transfer(buf []byte, timeout time.Duration) (int, error) { if len(buf) == 0 { return 0, nil } - t, err := e.newUSBTransfer(buf, timeout) + t, err := newUSBTransfer(e.h, e.EndpointInfo, buf, timeout) if err != nil { return 0, err } @@ -91,11 +79,9 @@ func (e *endpoint) transfer(buf []byte, timeout time.Duration) (int, error) { } func newEndpoint(d *Device) *endpoint { - ep := &endpoint{ + return &endpoint{ h: d.handle, readTimeout: d.ReadTimeout, writeTimeout: d.WriteTimeout, } - ep.newUSBTransfer = ep.newLibUSBTransfer - return ep }