[plt-scheme] libusb FFI binding
Ray wrote:
> Have made some minimal headway in binding to libusb.
How far have you gotten? It's that I have a quite finished one which I
haven't published because I wanted to polish it a little. Considering
that there seems to be some interest maybe we could use my work? I'm
attaching a file which I'm currently using in my project. Works on Win32
and OS X (untested on Linux yet) with a custom USB device based on
AVRUSB (the software USB implementation).
I would be thankful if anybody could look into it (it's my first
nontrivial Scheme app) and comment on anything (style, good habits, errors).
Known issues:
1. Some less important structs are not yet added.
2. Almost no struct accessors are provided (but some quite cool
functions for finding devices on the bus are so it's usable).
Btw. apropos FFI:
1. PATH_MAX (and maybe some other C constants) could be exported in
%foreign. It would make the bindings more bullet proof.
2. _enum could be more flexible. Currently there is no way to get a
number corresponding to a symbol... Maybe allow for expressions
evaluated with unhygienically added _enum symbols binded to
corresponding numbers. I wanted to pass numbers instead of symbols (for
custom request codes) and had to make a new ctype. Expressions evaled on
function call with enum symbols bound would solve this problem (and some
other too).
--
regards,
Jakub Piotr Cłapa
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: usb.scm
URL: <http://lists.racket-lang.org/users/archive/attachments/20070305/61c49cb7/attachment.ksh>