From 90716ee069dd0f400a60896ae438c13745531dba Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Sat, 24 Sep 2016 03:18:42 +0200 Subject: rename files --- usb_darwin.go | 98 ----------------------------------------------------------- 1 file changed, 98 deletions(-) delete mode 100644 usb_darwin.go (limited to 'usb_darwin.go') diff --git a/usb_darwin.go b/usb_darwin.go deleted file mode 100644 index e0b1503..0000000 --- a/usb_darwin.go +++ /dev/null @@ -1,98 +0,0 @@ -package robo - -import ( - "errors" - "io" - - "github.com/kylelemons/gousb/usb" -) - -type USB struct { - ctx *usb.Context - dev *usb.Device - w io.Writer - r io.Reader -} - -var ( - graphtec = usb.ID(0x0b4d) - craftrobo = usb.ID(0x110a) - craftrobolite = usb.ID(0x111a) - silhouette = usb.ID(0x111c) - silhouette_sd = usb.ID(0x111d) - silhouette_cameo = usb.ID(0x1121) - silhouette_portrait = usb.ID(0x1123) -) - -func init() { - // bump timeouts - usb.DefaultReadTimeout *= 60 - usb.DefaultWriteTimeout *= 300 -} - -func match(desc *usb.Descriptor) bool { - if desc.Vendor == graphtec { - switch desc.Product { - case craftrobo, craftrobolite, - silhouette, silhouette_sd, - silhouette_cameo, silhouette_portrait: - return true - } - } - return false -} - -func NewUSB() (USB, error) { - u := USB{} - u.ctx = usb.NewContext() - devs, err := u.ctx.ListDevices(match) - if err != nil { - return USB{}, err - } - if len(devs) != 1 { - for _, dev := range devs { - dev.Close() - } - return USB{}, errors.New("Cannot find Craft ROBO") - } - u.dev = devs[0] - - for _, c := range u.dev.Configs { - for _, i := range c.Interfaces { - for _, s := range i.Setups { - for _, ep := range s.Endpoints { - e, err := u.dev.OpenEndpoint( - c.Config, - i.Number, - s.Number, - ep.Address) - if err != nil { - return USB{}, err - } - switch ep.Direction() { - case usb.ENDPOINT_DIR_OUT: - u.w = e - case usb.ENDPOINT_DIR_IN: - u.r = e - } - } - } - } - } - - return u, nil -} - -func (d USB) Close() error { - d.dev.Close() - d.ctx.Close() - return nil -} - -func (d USB) Read(b []byte) (int, error) { - return d.r.Read(b) -} - -func (d USB) Write(b []byte) (int, error) { - return d.w.Write(b) -} -- cgit v1.2.3