Developer's Daily | Unix by Example |
main | java | perl | unix | dev directory | web log |
joystick_sethandler, joystick_setdefaulthandler ? set the joystick event handler. |
#include <vgajoystick.h> void joystick_sethandler(int joydev,
__joystick_handler jh); |
By default, each call to joystick_init(3) enables the default handler for the opened joystick. This handler maintains a state table which can be read by the joystick_getaxis(3), joystick_getbutton(3), joystick_button1|2|3|4(3), joystick_getb1|2|3|4(3), joystick_x|y|z(3) and joystick_getx|y|z(3) functions. If you define an own handler, the following parameters are passed: |
event one of the following values: |
JOY_EVENTBUTTONDOWN a button was pressed. |
JOY_EVENTBUTTONUP a button was released. |
JOY_EVENTAXIS the joystick position was changed. |
All other values are reserved for future use. |
number identifies the button or axis to which this event belongs. |
value for axis events the new position in range -128 .. 127.See joystick_getaxis(3) for further comments on the range. |
joydev identifies the joystick affected (this allows to use one handler for many joysticks). |
joydev = -1 modifies the event handler of all currently open joystick devices. |
This function is only available in ELF versions of svgalib. Due to backwards compatibility issues it cannot be used with shared a.out libs. |
svgalib(7), vgagl(7), libvga.config(5), joytest(6), mjoytest(6), joystick_init(3), joystick_close(3), joystick_update(3), joystick_getnumaxes(3), joystick_getnumbuttons(3), joystick_getaxis(3), joystick_getbutton(3), joystick_button1(3), joystick_getb1(3), joystick_x(3), joystick_getx(3). |
The svgalib joystick handler was mostly done by Daniel Engstr\"om <daniel.engstrom@riksnett.no>. Multiple joystick, VC switching support and code to glue it into svgalib by Michael Weller <eowmob@exp-math.uni-essen.de>. Part of the code is based on code from C. Smith and Vojtech Pavlik. |