GEIS  2.0
Gesture Engine Interface Support
The Geis API Object

Data Structures

class  Geis
 Represents an instance of the gesture recognition engine. More...
 

Functions

GEIS_VARARG Geis geis_new (GeisString init_arg_name,...)
 Initializes an instance of the GEIS v2.0 API. More...
 
GeisStatus geis_delete (Geis geis)
 Cleans up an instance of the GEIS v2.0 API. More...
 

Standard Initialization Arguments

These initialization arguments are defined by the GEIS v2 specification.
#define GEIS_INIT_SERVICE_PROVIDER
 Enables GEIS to provide a networked service. More...
 
#define GEIS_INIT_TRACK_DEVICES
 Tells GEIS to send input device events. More...
 
#define GEIS_INIT_TRACK_GESTURE_CLASSES
 Tells GEIS to send gesture class events. More...
 
#define GEIS_INIT_SYNCHRONOUS_START
 Performs all setup synchronously: geis_new() will block until all setup has completed successfully or unsuccessfully. More...
 

Vendor-defined Initialization Arguments

These initialization arguments are not a part of the GEIS specification and may change.
#define GEIS_INIT_DBUS_BACKEND
 Uses the DBus back end (default). More...
 
#define GEIS_INIT_GRAIL_BACKEND
 Uses the native grail back end (fallback). More...
 
#define GEIS_INIT_XCB_BACKEND
 Uses the grail-embedded-in-X11 back end. More...
 
#define GEIS_INIT_NO_ATOMIC_GESTURES
 Disables the use of (GEIS v1-style) atomic gestures: only a single gesture is recognized at a time. More...
 
#define GEIS_INIT_SEND_TENTATIVE_EVENTS
 Causes tentative events to be sent. More...
 
#define GEIS_INIT_SEND_SYNCHRONOS_EVENTS
 Causes all gesture events to be sent, even if there is zero apparent time difference between the events. More...
 

Detailed Description

Macro Definition Documentation

#define GEIS_INIT_DBUS_BACKEND

Uses the DBus back end (default).

#define GEIS_INIT_GRAIL_BACKEND

Uses the native grail back end (fallback).

#define GEIS_INIT_NO_ATOMIC_GESTURES

Disables the use of (GEIS v1-style) atomic gestures: only a single gesture is recognized at a time.

#define GEIS_INIT_SEND_SYNCHRONOS_EVENTS

Causes all gesture events to be sent, even if there is zero apparent time difference between the events.

Normally all but the first consecutive event are discarded, since velocity values can not be calculated and multiple events between frame redraws are unlikely do have any value beyong consuming CPU. Setting this init value will give the events to you if you really want them.

#define GEIS_INIT_SEND_TENTATIVE_EVENTS

Causes tentative events to be sent.

Tentative events indicate gestures may possibly be detected soon and allow early rejection if the events occur outside any area of interest.

#define GEIS_INIT_SERVICE_PROVIDER

Enables GEIS to provide a networked service.

This initialization argument takes no parameters.

#define GEIS_INIT_SYNCHRONOUS_START

Performs all setup synchronously: geis_new() will block until all setup has completed successfully or unsuccessfully.

#define GEIS_INIT_TRACK_DEVICES

Tells GEIS to send input device events.

This initialization argument takes no parameters.

#define GEIS_INIT_TRACK_GESTURE_CLASSES

Tells GEIS to send gesture class events.

This initialization argument takes no parameters.

#define GEIS_INIT_XCB_BACKEND

Uses the grail-embedded-in-X11 back end.

Function Documentation

GeisStatus geis_delete ( Geis  geis)

Cleans up an instance of the GEIS v2.0 API.

Parameters
[in]geisAn instance of the GEIS v2.0 API.

Tears down the instance of the API and releases any resources associated with that instance.

GEIS_VARARG Geis geis_new ( GeisString  init_arg_name,
  ... 
)

Initializes an instance of the GEIS v2.0 API.

Parameters
[in]init_arg_nameThe name of an initializaer argument.
[in]...The remaining initializaer arguments.

A NULL-terminated list of zero or more initialization arguments is passed to this function to create and initialize a connection to a gesture recognition engine.

If no initialization arguments are passed, the parameter list consists of a single NULL argument.