Loading...
Searching...
No Matches
Vendor Extension Gesture Types
The Simplified GEIS Interface » Gesture Types » Gesture Primitives » Standard Gesture Types

Vendor-specific extensions to the GEIS v1 API. More...

## Topics

| Initialization and Cleanup
| Each instance of a gesture subscription must be created using the geis_init() call and destroyed using the geis_finish() call.

## Macros

#define | GEIS_GESTURE_TYPE_SYSTEM
| A special gesture type than enabled system-wide gesture priority.
#define | GEIS_GESTURE_TYPE_FLICK1
#define | GEIS_GESTURE_TYPE_FLICK2
#define | GEIS_GESTURE_TYPE_FLICK3
#define | GEIS_GESTURE_TYPE_FLICK4
#define | GEIS_GESTURE_TYPE_FLICK5

## Functions

GeisStatus | geis_init (GeisWinInfo *win_info, GeisInstance *geis_instance)
| Initializes a geis subscription instance for a display region.
GeisStatus | geis_finish (GeisInstance geis_instance)
| Cleans up a geis subscription instance for a display region.

## Standard fundamental gesture attributes

#define | GEIS_GESTURE_ATTRIBUTE_ANGLE
| Angle covered by a gesture since it has started, in radians, counterclockwise.
#define | GEIS_GESTURE_ATTRIBUTE_ANGLE_DELTA
| Angle covered by a gesture since its last update, in radians, counterclockwise.
#define | GEIS_GESTURE_ATTRIBUTE_CENTROID_X
| This attribute provides the X coordinate of the centroid of the non-self-intersecting closed polygon defined by the touch points of the gesture, in device coordinates.
#define | GEIS_GESTURE_ATTRIBUTE_CENTROID_Y
| This attribute provides the Y coordinate of the centroid of the non-self-intersecting closed polygon defined by the touch points of the gesture, in device coordinates.
#define | GEIS_GESTURE_ATTRIBUTE_FOCUS_X
| This attribute provides the X coordinate of the focus point of a gesture, in screen coordinates.
#define | GEIS_GESTURE_ATTRIBUTE_FOCUS_Y
| This attribute provides the Y coordinate of the focus point of a gesture, in screen coordinates.
#define | GEIS_GESTURE_ATTRIBUTE_GESTURE_NAME
| Name of the gesture.
#define | GEIS_GESTURE_ATTRIBUTE_POSITION_X
| This attribute provides the X coordinate of the position of a gesture, in device coordinates.
#define | GEIS_GESTURE_ATTRIBUTE_POSITION_Y
| This attribute provides the Y coordinate of the position of a gesture, in device coordinates.
#define | GEIS_GESTURE_ATTRIBUTE_TOUCH_0_ID
| This attribute provides the ID of the touch at index0.
#define | GEIS_GESTURE_ATTRIBUTE_TOUCH_0_X
| This attribute provides the X coordinate of the touch at index0.
#define | GEIS_GESTURE_ATTRIBUTE_TOUCH_0_Y
| This attribute provides the Y coordinate of the touch at index0.
#define | GEIS_GESTURE_ATTRIBUTE_TOUCH_1_ID
| This attribute provides the ID of the touch at index1.
#define | GEIS_GESTURE_ATTRIBUTE_TOUCH_1_X
| This attribute provides the X coordinate of the touch at index1.
#define | GEIS_GESTURE_ATTRIBUTE_TOUCH_1_Y
| This attribute provides the Y coordinate of the touch at index1.
#define | GEIS_GESTURE_ATTRIBUTE_TOUCH_2_ID
| This attribute provides the ID of the touch at index2.
#define | GEIS_GESTURE_ATTRIBUTE_TOUCH_2_X
| This attribute provides the X coordinate of the touch at index2.
#define | GEIS_GESTURE_ATTRIBUTE_TOUCH_2_Y
| This attribute provides the Y coordinate of the touch at index2.
#define | GEIS_GESTURE_ATTRIBUTE_TOUCH_3_ID
| This attribute provides the ID of the touch at index3.
#define | GEIS_GESTURE_ATTRIBUTE_TOUCH_3_X
| This attribute provides the X coordinate of the touch at index3.
#define | GEIS_GESTURE_ATTRIBUTE_TOUCH_3_Y
| This attribute provides the Y coordinate of the touch at index3.
#define | GEIS_GESTURE_ATTRIBUTE_TOUCH_4_ID
| This attribute provides the ID of the touch at index4.
#define | GEIS_GESTURE_ATTRIBUTE_TOUCH_4_X
| This attribute provides the X coordinate of the touch at index4.
#define | GEIS_GESTURE_ATTRIBUTE_TOUCH_4_Y
| This attribute provides the Y coordinate of the touch at index4.
#define | GEIS_GESTURE_ATTRIBUTE_ANGULAR_VELOCITY
#define | GEIS_GESTURE_ATTRIBUTE_BOUNDINGBOX_X1
#define | GEIS_GESTURE_ATTRIBUTE_BOUNDINGBOX_Y1
#define | GEIS_GESTURE_ATTRIBUTE_BOUNDINGBOX_X2
#define | GEIS_GESTURE_ATTRIBUTE_BOUNDINGBOX_Y2
#define | GEIS_GESTURE_ATTRIBUTE_CHILD_WINDOW_ID
#define | GEIS_GESTURE_ATTRIBUTE_DELTA_X
#define | GEIS_GESTURE_ATTRIBUTE_DELTA_Y
#define | GEIS_GESTURE_ATTRIBUTE_DEVICE_ID
#define | GEIS_GESTURE_ATTRIBUTE_EVENT_WINDOW_ID
#define | GEIS_GESTURE_ATTRIBUTE_RADIAL_VELOCITY
#define | GEIS_GESTURE_ATTRIBUTE_RADIUS_DELTA
#define | GEIS_GESTURE_ATTRIBUTE_RADIUS
#define | GEIS_GESTURE_ATTRIBUTE_ROOT_WINDOW_ID
#define | GEIS_GESTURE_ATTRIBUTE_TAP_TIME
#define | GEIS_GESTURE_ATTRIBUTE_TIMESTAMP
#define | GEIS_GESTURE_ATTRIBUTE_TOUCHES
#define | GEIS_GESTURE_ATTRIBUTE_VELOCITY_X
#define | GEIS_GESTURE_ATTRIBUTE_VELOCITY_Y
#define | GEIS_CONFIG_UNIX_FD
| Gets the Unix file descriptor for GEIS events.
typedef struct GeisWinInfo | GeisWinInfo
GeisStatus | geis_configuration_supported (GeisInstance geis_instance, int configuration_item)
| Indicates if a particular feaure is supported.
GeisStatus | geis_configuration_get_value (GeisInstance geis_instance, int configuration_item, void *value)
| Gets a feature configuration value.
GeisStatus | geis_configuration_set_value (GeisInstance geis_instance, int configuration_item, void *value)
| Sets a feature configuration value.
GeisStatus | geis_event_dispatch (GeisInstance geis_instance)
| Dispatches geis events until there are no further events available.

## Detailed Description

Vendor-specific extensions to the GEIS v1 API.

## Macro Definition Documentation

## GEIS_CONFIG_UNIX_FD

#define GEIS_CONFIG_UNIX_FD

Gets the Unix file descriptor for GEIS events.

Applications or toolkits can use this file descriptor to intgerate geis event handling into their main event dispatch loop. When a GEIS event is available for processing, the fd will have a read-available state indicated in select(), poll(), epoll(), etc.

## GEIS_GESTURE_ATTRIBUTE_ANGLE

#define GEIS_GESTURE_ATTRIBUTE_ANGLE

Angle covered by a gesture since it has started, in radians, counterclockwise.

Its value ranges from -pi to pi.

## GEIS_GESTURE_ATTRIBUTE_ANGLE_DELTA

#define GEIS_GESTURE_ATTRIBUTE_ANGLE_DELTA

Angle covered by a gesture since its last update, in radians, counterclockwise.

## GEIS_GESTURE_ATTRIBUTE_CENTROID_X

#define GEIS_GESTURE_ATTRIBUTE_CENTROID_X

This attribute provides the X coordinate of the centroid of the non-self-intersecting closed polygon defined by the touch points of the gesture, in device coordinates.

## GEIS_GESTURE_ATTRIBUTE_CENTROID_Y

#define GEIS_GESTURE_ATTRIBUTE_CENTROID_Y

This attribute provides the Y coordinate of the centroid of the non-self-intersecting closed polygon defined by the touch points of the gesture, in device coordinates.

## GEIS_GESTURE_ATTRIBUTE_FOCUS_X

#define GEIS_GESTURE_ATTRIBUTE_FOCUS_X

This attribute provides the X coordinate of the focus point of a gesture, in screen coordinates.

For direct devices (GEIS_DEVICE_ATTRIBUTE_DIRECT_TOUCH is GEIS_TRUE) it's the centroid point. For indirect devices it's the pointer/cursor position.

## GEIS_GESTURE_ATTRIBUTE_FOCUS_Y

#define GEIS_GESTURE_ATTRIBUTE_FOCUS_Y

This attribute provides the Y coordinate of the focus point of a gesture, in screen coordinates.

For direct devices (GEIS_DEVICE_ATTRIBUTE_DIRECT_TOUCH is GEIS_TRUE) it's the centroid point. For indirect devices it's the pointer/cursor position.

## GEIS_GESTURE_ATTRIBUTE_GESTURE_NAME

#define GEIS_GESTURE_ATTRIBUTE_GESTURE_NAME

Name of the gesture.

This attribute is filled only when using GEIS v1 API (the simplified interface). On GEIS v2 this attribute has been replaced by the concept of gesture classes. Use geis_frame_is_class() instead.

## GEIS_GESTURE_ATTRIBUTE_POSITION_X

#define GEIS_GESTURE_ATTRIBUTE_POSITION_X

This attribute provides the X coordinate of the position of a gesture, in device coordinates.

It's the same as the centroid of a gesture. See GEIS_GESTURE_ATTRIBUTE_CENTROID_X.

## GEIS_GESTURE_ATTRIBUTE_POSITION_Y

#define GEIS_GESTURE_ATTRIBUTE_POSITION_Y

This attribute provides the Y coordinate of the position of a gesture, in device coordinates.

It's the same as the centroid of a gesture. See GEIS_GESTURE_ATTRIBUTE_CENTROID_Y.

## GEIS_GESTURE_ATTRIBUTE_TOUCH_0_ID

#define GEIS_GESTURE_ATTRIBUTE_TOUCH_0_ID

This attribute provides the ID of the touch at index0.

Only used by GEIS v1 API.

## GEIS_GESTURE_ATTRIBUTE_TOUCH_0_X

#define GEIS_GESTURE_ATTRIBUTE_TOUCH_0_X

This attribute provides the X coordinate of the touch at index0.

Only used by GEIS v1 API.

## GEIS_GESTURE_ATTRIBUTE_TOUCH_0_Y

#define GEIS_GESTURE_ATTRIBUTE_TOUCH_0_Y

This attribute provides the Y coordinate of the touch at index0.

Only used by GEIS v1 API.

## GEIS_GESTURE_ATTRIBUTE_TOUCH_1_ID

#define GEIS_GESTURE_ATTRIBUTE_TOUCH_1_ID

This attribute provides the ID of the touch at index1.

Only used by GEIS v1 API.

## GEIS_GESTURE_ATTRIBUTE_TOUCH_1_X

#define GEIS_GESTURE_ATTRIBUTE_TOUCH_1_X

This attribute provides the X coordinate of the touch at index1.

Only used by GEIS v1 API.

## GEIS_GESTURE_ATTRIBUTE_TOUCH_1_Y

#define GEIS_GESTURE_ATTRIBUTE_TOUCH_1_Y

This attribute provides the Y coordinate of the touch at index1.

Only used by GEIS v1 API.

## GEIS_GESTURE_ATTRIBUTE_TOUCH_2_ID

#define GEIS_GESTURE_ATTRIBUTE_TOUCH_2_ID

This attribute provides the ID of the touch at index2.

Only used by GEIS v1 API.

## GEIS_GESTURE_ATTRIBUTE_TOUCH_2_X

#define GEIS_GESTURE_ATTRIBUTE_TOUCH_2_X

This attribute provides the X coordinate of the touch at index2.

Only used by GEIS v1 API.

## GEIS_GESTURE_ATTRIBUTE_TOUCH_2_Y

#define GEIS_GESTURE_ATTRIBUTE_TOUCH_2_Y

This attribute provides the Y coordinate of the touch at index2.

Only used by GEIS v1 API.

## GEIS_GESTURE_ATTRIBUTE_TOUCH_3_ID

#define GEIS_GESTURE_ATTRIBUTE_TOUCH_3_ID

This attribute provides the ID of the touch at index3.

Only used by GEIS v1 API.

## GEIS_GESTURE_ATTRIBUTE_TOUCH_3_X

#define GEIS_GESTURE_ATTRIBUTE_TOUCH_3_X

This attribute provides the X coordinate of the touch at index3.

Only used by GEIS v1 API.

## GEIS_GESTURE_ATTRIBUTE_TOUCH_3_Y

#define GEIS_GESTURE_ATTRIBUTE_TOUCH_3_Y

This attribute provides the Y coordinate of the touch at index3.

Only used by GEIS v1 API.

## GEIS_GESTURE_ATTRIBUTE_TOUCH_4_ID

#define GEIS_GESTURE_ATTRIBUTE_TOUCH_4_ID

This attribute provides the ID of the touch at index4.

Only used by GEIS v1 API.

## GEIS_GESTURE_ATTRIBUTE_TOUCH_4_X

#define GEIS_GESTURE_ATTRIBUTE_TOUCH_4_X

This attribute provides the X coordinate of the touch at index4.

Only used by GEIS v1 API.

## GEIS_GESTURE_ATTRIBUTE_TOUCH_4_Y

#define GEIS_GESTURE_ATTRIBUTE_TOUCH_4_Y

This attribute provides the Y coordinate of the touch at index4.

Only used by GEIS v1 API.

## GEIS_GESTURE_TYPE_SYSTEM

#define GEIS_GESTURE_TYPE_SYSTEM

A special gesture type than enabled system-wide gesture priority.

## Function Documentation

## geis_configuration_get_value()

GeisStatus geis_configuration_get_value | ( | GeisInstance | geis_instance,
|  | int | configuration_item,
|  | void * | value )

Gets a feature configuration value.

Parameters

  [in] | geis_instance | An opaque pointer to a geis gesture subscription instance.
  [in] | configuration_item | Indicates which configuration item will be get.
  [in] | value | A pointer to where the retrieved value will be stored.

Return values

  GEIS_BAD_ARGUMENT | an invalid argument value was passed
  GEIS_STATUS_SUCCESS | normal successful completion

## geis_configuration_set_value()

GeisStatus geis_configuration_set_value | ( | GeisInstance | geis_instance,
|  | int | configuration_item,
|  | void * | value )

Sets a feature configuration value.

Parameters

  [in] | geis_instance | An opaque pointer to a geis gesture subscription instance.
  [in] | configuration_item | Indicates which configuration item will be set.
  [in] | value | A pointer to where the value to be set will be read.

Return values

  GEIS_BAD_ARGUMENT | an invalid argument value was passed
  GEIS_STATUS_SUCCESS | normal successful completion

## geis_configuration_supported()

GeisStatus geis_configuration_supported | ( | GeisInstance | geis_instance,
|  | int | configuration_item )

Indicates if a particular feaure is supported.

Parameters

  [in] | geis_instance | An opaque pointer to a geis gesture subscription instance.
  [in] | configuration_item | Indicates which configuration item will be checked for support.

Return values

  GEIS_BAD_ARGUMENT | an invalid argument value was passed
  GEIS_STATUS_SUCCESS | normal successful completion

## geis_event_dispatch()

GeisStatus geis_event_dispatch | ( | GeisInstance | geis_instance | ) |

Dispatches geis events until there are no further events available.

Parameters

  [in] | geis_instance | an opaque pointer to a geis gesture subscription instance

This function is used to integrate geis even dispatch into the main event loop of an application or toolkit.

Return values

  GEIS_BAD_ARGUMENT | an invalid GeisInstance was passed
  GEIS_STATUS_SUCCESS | normal successful completion

## geis_finish()

GeisStatus geis_finish | ( | GeisInstance | geis_instance | ) |

Cleans up a geis subscription instance for a display region.

Parameters

  [in] | geis_instance | an opaque pointer to a geis gesture subscription instance

Return values

  GEIS_BAD_ARGUMENT | an invalid GeisInstance was passed
  GEIS_STATUS_SUCCESS | normal successful completion

## geis_init()

GeisStatus geis_init | ( | GeisWinInfo * | win_info,
|  | GeisInstance * | geis_instance )

Initializes a geis subscription instance for a display region.

Parameters

  [in] | win_info | a display region description block – see geis implementtaion documentation
  [out] | geis_instance | an opaque pointer to a geis gesture subscription instance

Return values

  GEIS_BAD_ARGUMENT | an invalid GeisWinInfo was passed
  GEIS_STATUS_SUCCESS | normal successful completion