[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Comment on "Making Hardware Just Work"

Hash: SHA1


I originally sent this to Havoc Pennington in response to the article at 
He suggested that I should send it here, so here goes...

(text of original mail follows)
I think that you're generally on the right track with the ideas in that
article. There's one thing I'd like to mention though, about the way device
functionality is accessed.

Instead of defining the functionality of a device in terms of its general
type, it could be defined in terms of interfaces.
There would be a basic interface for enabling/disabling a device that
virtually every device supported.
A plain old CD-ROM drive would support a "filesystem" interface and an
"eject/load" interface on top of that. A CDR would also support a "burn"
Now the digital camera would support the "filesystem" interface, too (it
should be clear now where the idea for interfaces comes from). This could
allow all sorts of nice things, e.g. one could browse the photos on the
digital camera using any image-aware desktop application without explicitly
downloading them.
The digital camera could also support aninterface to control the camera
functions directly, i.e. trigger the camera via PC software.

These interfaces also lend themselves to a very straightforward (IMHO) API.
Basically, there's a function to list the interface types a device supports
(perhaps returned as an array of strings, or a string with whitespace
seperated tokens).

Every interface then defines its own entry point(s) to provide access to
 its functionality.

This could be done in a way that is very similar to the way OpenGL or X
extensions are implemented.

Version: GnuPG v1.2.3 (GNU/Linux)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]