Index: [thread] [date] [subject] [author]
  From: Andreas Beck <becka@rz.uni-duesseldorf.de>
  To  : ggi-develop@eskimo.com
  Date: Fri, 23 Jul 1999 02:34:08 +0200

Re: Anybody with IR input for libgii ??

> > > If not, I plan on doing an input module for lirc managed ir input devices.
> > > Given that IR keypads are very similar to keyboards, I think, it should
> > > send kesyms similar to keyboards, but there are a few specificities
> > > (like mute, power...) how do I assign new keysyms ? I just pick new
> > > ones randomly ?

Send them to me and Marcus. We'll check with available sources for other
projects and such and see what suits best.

> I'm thinking about IR devices like a remote control rather than cordless 
> keyboards (for which I don't think there is much to do, it should be done 
> through the keyboard controller, no ??)

Yes. We'll need to add some keysyms for those. Like play, record, etc.

> > > If anybody has knowledge about making libggii input drivers and/or 
> > > want to help, I welcome everything :o)
> > I don't know anything about IR devices, but I'll be happy to answer
> > any questions you may have about LibGII.

So do I.

> The documentation about hacking gii drivers is a bit sparse (even the 
> user doc is sparse on this subject :o)

Yes. It's not too hard actually. Look around a few of the simple inputs to
see how they work. input-pcjoy is simple (though bad style for a joystick
driver) as is input-stdin (probably closer to what you want), and the lk201
driver is an other alternate keyboard driver, which might be similar to what
you are after, as it contains stuff like handling modifiers, translating
scancodes to symbols and such.

> I don't exactly see what the event masks do, 

They basically "mask out" the events that correspond to the unset bits thus
eventually allowing for optimization. If the application tells us, that it
doesn't care for a given event class, we can as well forget about asking all
drivers that can produce only "uninteresting" classes. You don't have to
care much about those.

> and how to send events to the upper layers. 

This is pretty simple. The stdin driver shows it nicely. You just construct
an event using _giiEventBlank(); and some assignments, and then you post it
using _giiEvQueueAdd(inp, &ev);.

CU, Andy

-- 
= Andreas Beck                    |  Email :  <andreas.beck@ggi-project.org> =

Index: [thread] [date] [subject] [author]