GEIS  2.0
Gesture Engine Interface Support

Data Structures

class  GeisFilter
 Selects a subset of possible gestures in a subscription. More...
 

Typedefs

typedef enum _GeisFilterFacility GeisFilterFacility
 Indicates the type of filter. More...
 
typedef enum _GeisFilterOperation GeisFilterOperation
 Indicates the type of filter operation. More...
 

Enumerations

enum  _GeisFilterFacility { GEIS_FILTER_DEVICE, GEIS_FILTER_CLASS, GEIS_FILTER_REGION, GEIS_FILTER_SPECIAL }
 Indicates the type of filter. More...
 
enum  _GeisFilterOperation {
  GEIS_FILTER_OP_EQ, GEIS_FILTER_OP_NE, GEIS_FILTER_OP_GT, GEIS_FILTER_OP_GE,
  GEIS_FILTER_OP_LT, GEIS_FILTER_OP_LE
}
 Indicates the type of filter operation. More...
 

Functions

GeisFilter geis_filter_new (Geis geis, GeisString name)
 Creates a new, empty filter. More...
 
GeisFilter geis_filter_clone (GeisFilter original, GeisString name)
 Creates a new filter by copying an existing filter. More...
 
GeisStatus geis_filter_delete (GeisFilter filter)
 Destroys a GeisFilter. More...
 
GeisString geis_filter_name (GeisFilter filter)
 Gets the name given to the filter when it was created. More...
 
GEIS_VARARG GeisStatus geis_filter_add_term (GeisFilter filter, GeisFilterFacility facility,...)
 Adds a term to a filter. More...
 

Detailed Description

Typedef Documentation

Indicates the type of filter.

Indicates the type of filter operation.

Enumeration Type Documentation

Indicates the type of filter.

Enumerator
GEIS_FILTER_DEVICE 

Filters on device attributes.

GEIS_FILTER_CLASS 

Filters on gesture class and gesture attributes.

GEIS_FILTER_REGION 

Filters on region attributes.

GEIS_FILTER_SPECIAL 

Filters on special attributes.

Indicates the type of filter operation.

Enumerator
GEIS_FILTER_OP_EQ 

Compares for equality.

GEIS_FILTER_OP_NE 

Compares for inequality.

GEIS_FILTER_OP_GT 

Compares for greater-than.

GEIS_FILTER_OP_GE 

Compares for greater-than-or-equal.

GEIS_FILTER_OP_LT 

Compares for less-than.

GEIS_FILTER_OP_LE 

Compares for less-tha-or-equal.

Function Documentation

GEIS_VARARG GeisStatus geis_filter_add_term ( GeisFilter  filter,
GeisFilterFacility  facility,
  ... 
)

Adds a term to a filter.

Parameters
[in]filterThe filter.
[in]facilityThe term facility.
[in]...A list of zero or more term descriptions.

A term description is generally a (attr-name, filter-op, value) triple in which the meaning of the filter-op and value depend on the type of the attr.

The term description list must be terminated by a NULL.

In the following example we add terms to filter drag gestures made with three touch points:

GEIS_GESTURE_ATTRIBUTE_TOUCHES, GEIS_FILTER_OP_EQ, 3,
NULL);

Term descriptions are usually ANDed together, so that specifying a class name and a number of touches will filter only for gestures that have both characteristics. But if you specify several class names (e.g. drag and pinch), those classes are ORed together instead. So you can receive events from a gesture that belongs to either drag, drag&pinch or only pinch classes.

GeisFilter geis_filter_clone ( GeisFilter  original,
GeisString  name 
)

Creates a new filter by copying an existing filter.

Parameters
[in]originalAn existing geisFilter instance.
[in]nameA name.

The original filter remains unchanged.

Returns
a GeisFilter object or NULL on failure.
GeisStatus geis_filter_delete ( GeisFilter  filter)

Destroys a GeisFilter.

Parameters
[in]filterThe filter.
GeisString geis_filter_name ( GeisFilter  filter)

Gets the name given to the filter when it was created.

Parameters
[in]filterThe filter.
GeisFilter geis_filter_new ( Geis  geis,
GeisString  name 
)

Creates a new, empty filter.

Parameters
[in]geisThe GEIS API instance.
[in]nameA name.
Returns
a GeisFilter object or NULL on failure.