User Tools

Site Tools


api_reference

This is an old revision of the document!


API Reference

Overview

The GestureWorks Core API consists of a series of methods, functions and data structures which are used to connect applications to GestureWorks, prompt the core to analyze and process gestures, then return structured gesture event data to the application layer.


Core Functions

The functions available through GestureWorks are as follows:

GestureWorks* initializeGestureWorks(int screen_width, int screen_height)

Initializes GestureWorks with a default set of gestures. This returns an instance of GestureWorks to use on future function calls.

GestureWorks* initializeGestureWorksScreenGestures(int screen_width, int screen_height)

Initializes GestureWorks with default options and a default set of gestures. This is used for screen mode, where gestures are global and not attached to individual touch objects.

GestureWorks* initializeGestureWorksGML(int screen_width, int screen_height, const char *gml_file_path)

Initializes GestureWorks with a custom gml file.

void destroyGestureWorks(GestureWorks *gesture_works)

Deletes an instance of GestureWorks.

bool removeTouchObject(const char *name)

Removes a touch object from GestureWorks.

bool addGesture(GestureWorks *gesture_works, const char *object_id, const char *gesture_id)

Adds a gesture to an object. This passes in the name of the object and the gesture to associate.

void addTouchEvent(GestureWorks *gesture_works, int touch_event_id, int touch_status, float x, float y)

Associates a touch event with a TouchObject. The touch_event_id is the point id, x and y are the coordinates for the point, and touch_status is one of:

	const int GW_TOUCHUPDATE = 0;
	const int GW_TOUCHADDED = 1;
	const int GW_TOUCHREMOVED = 2;

int getPointEvents(GestureWorks *gesture_works, PointInfo **points)

Retrieves the current touch events GestureWorks has. These points are retrieved and then addTouchPointToObject is called to associate a touch event with a GestureWorks TouchObject. The PointInfo structure is:

struct PointInfo
{
	int point_id;
	int status;
	float position_x;
	float position_y;
	int timestamp;
};
api_reference.1493743795.txt.gz ยท Last modified: 2019/01/21 16:35 (external edit)