Difference between revisions of "Gasync"

From GIMX
Jump to: navigation, search
(Created page with "The gasync (GIMX asynchronous) library is the evolution of the GE (GIMX events) library.<br /> In addition to input devices, gasync also handles the following component...")
 
(GNU/Linux implementation)
Line 25: Line 25:
 
|-
 
|-
 
|}
 
|}
* ghid is not based on [https://www.kernel.org/doc/Documentation/hid/hidraw.txt hidraw] because write() does not support non-blocking mode.
+
* ghid is not based on [https://www.kernel.org/doc/Documentation/hid/hidraw.txt hidraw] because write() does not support non-blocking mode.<br/>
  The libusb claims the HID interface and detaches the kernel driver. guhid is a [https://www.kernel.org/doc/Documentation/hid/uhid.txt uhid] wrapper to allow connecting the device with the kernel.
+
The libusb claims the HID interface and detaches the kernel driver. guhid is a [https://www.kernel.org/doc/Documentation/hid/uhid.txt uhid] wrapper to allow connecting the device with the kernel.
 +
 
 
=Windows implementation=
 
=Windows implementation=
 
{| class="wikitable" style="text-align: center;"
 
{| class="wikitable" style="text-align: center;"

Revision as of 21:42, 10 May 2016

The gasync (GIMX asynchronous) library is the evolution of the GE (GIMX events) library.
In addition to input devices, gasync also handles the following components:

  • serial ports
  • high-resolution timers
  • USB devices
  • HID devices

It also provides a default waiting interface based on poll on GNU/Linux and MsgWaitForMultipleObject on Windows.

GNU/Linux implementation

gpoll ginput gserial gtimer gusb ghid *
poll evdev jsdev X.Org Xi2 termios timerfd libusb
  • ghid is not based on hidraw because write() does not support non-blocking mode.

The libusb claims the HID interface and detaches the kernel driver. guhid is a uhid wrapper to allow connecting the device with the kernel.

Windows implementation

gpoll ginput gserial gtimer gusb ghid
MsgWaitForMultipleObject Raw Input libSDL * COM ports Waitable Timers libusb HID API
  • The libSDL events are processed synchronously.