![]() |
GEIS 2.0
Gesture Engine Interface Support
|
This is the public interface for the GEIS gesture API. More...
#include <geis/geisimpl.h>
Data Structures | |
class | GeisWinInfo |
Generic display region description block. More... | |
struct | GeisInputFuncs |
Callback functions used to handle changes in the available input devices. More... | |
struct | GeisGestureAttr |
An individual gesture attribute. More... | |
struct | GeisGestureFuncs |
The set of callback functions invoked for various gesture-related events. More... | |
Macros | |
#define | GEIS_VERSION_1_0 |
GEIS version macros. | |
#define | GEIS_VERSION_2_0 |
#define | GEIS_FALSE |
#define | GEIS_TRUE |
#define | GEIS_GESTURE_DRAG |
#define | GEIS_GESTURE_PINCH |
#define | GEIS_GESTURE_ROTATE |
#define | GEIS_GESTURE_TAP |
#define | GEIS_GESTURE_TOUCH |
#define | GEIS_GESTURE_FLICK |
#define | GEIS_GESTURE_PRIMITIVE_DRAG |
A translate gesture: dragging, swiping, flicking, moving in a generally linear fashion. | |
#define | GEIS_GESTURE_PRIMITIVE_PINCH |
A pinch or expand gesture: two or more touch points generally moving toward or away from a common point. | |
#define | GEIS_GESTURE_PRIMITIVE_ROTATE |
A rotation gesture. | |
#define | GEIS_GESTURE_PRIMITIVE_TAP |
A tap. | |
#define | GEIS_GESTURE_PRIMITIVE_TOUCH |
A parenthetical gesture event. | |
#define | GEIS_GESTURE_ID_FLICK |
#define | GEIS_GESTURE_TYPE_DRAG1 |
#define | GEIS_GESTURE_TYPE_DRAG2 |
#define | GEIS_GESTURE_TYPE_DRAG3 |
#define | GEIS_GESTURE_TYPE_DRAG4 |
#define | GEIS_GESTURE_TYPE_DRAG5 |
#define | GEIS_GESTURE_TYPE_PINCH1 |
#define | GEIS_GESTURE_TYPE_PINCH2 |
#define | GEIS_GESTURE_TYPE_PINCH3 |
#define | GEIS_GESTURE_TYPE_PINCH4 |
#define | GEIS_GESTURE_TYPE_PINCH5 |
#define | GEIS_GESTURE_TYPE_ROTATE1 |
#define | GEIS_GESTURE_TYPE_ROTATE2 |
#define | GEIS_GESTURE_TYPE_ROTATE3 |
#define | GEIS_GESTURE_TYPE_ROTATE4 |
#define | GEIS_GESTURE_TYPE_ROTATE5 |
#define | GEIS_GESTURE_TYPE_TAP1 |
#define | GEIS_GESTURE_TYPE_TAP2 |
#define | GEIS_GESTURE_TYPE_TAP3 |
#define | GEIS_GESTURE_TYPE_TAP4 |
#define | GEIS_GESTURE_TYPE_TAP5 |
#define | GEIS_GESTURE_TYPE_TOUCH1 |
#define | GEIS_GESTURE_TYPE_TOUCH2 |
#define | GEIS_GESTURE_TYPE_TOUCH3 |
#define | GEIS_GESTURE_TYPE_TOUCH4 |
#define | GEIS_GESTURE_TYPE_TOUCH5 |
#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 |
Standard Initialization Arguments | |
| |
#define | GEIS_INIT_SERVICE_PROVIDER |
Enables GEIS to provide a networked service. | |
#define | GEIS_INIT_TRACK_DEVICES |
Tells GEIS to send input device events. | |
#define | GEIS_INIT_TRACK_GESTURE_CLASSES |
Tells GEIS to send gesture class events. | |
#define | GEIS_INIT_SYNCHRONOUS_START |
Performs all setup synchronously: geis_new() will block until all setup has completed successfully or unsuccessfully. | |
Required Configuration Items | |
| |
#define | GEIS_CONFIGURATION_FD |
Gets a Unix file descriptor that will signal the availablility of GEIS events for processing. | |
Device Event Attributes | |
#define | GEIS_EVENT_ATTRIBUTE_DEVICE |
The event attribute containing a pointer to a GeisDevice. | |
Gesture Class Event Attributes | |
#define | GEIS_EVENT_ATTRIBUTE_CLASS |
The event attribute containing a pointer to a GeisGestureClass. | |
Region Attributes | |
| |
#define | GEIS_REGION_ATTRIBUTE_WINDOWID |
The X11 windowid in which a gesture occurred. | |
Gesture Frame Event Attributes | |
For example: If four fingers are being simultaneously moved over a touchpad or touchscreen surface, Geis could start generating gesture events containing two groups: One group having a single frame from a four-fingers gesture of some class and a second group having two frames, each from a different two-fingers gesture (like one from a Rotate and the other from a Pinch gesture). This means that geis could interpret the movements of those four touch points as both a single four-fingers gesture and as two separate two-fingers gestures. There can be only a single frame per gesture in a gesture event. I.e. no two frames will return the same GeisGestureId in the same gesture event. | |
#define | GEIS_EVENT_ATTRIBUTE_GROUPSET |
The event attribute containing a pointer to a GeisGroupSet. | |
#define | GEIS_EVENT_ATTRIBUTE_TOUCHSET |
The event attribute containing a pointer to a GeisTouchSet. | |
#define | GEIS_EVENT_ATTRIBUTE_CONSTRUCTION_FINISHED |
Event attribute containing a boolean. | |
Typedefs | |
typedef enum GeisStatus | GeisStatus |
Errors returned from calls. | |
typedef enum GeisAttrType | GeisAttrType |
Attribute data types. | |
Enumerations | |
enum | GeisStatus { GEIS_STATUS_SUCCESS , GEIS_STATUS_CONTINUE , GEIS_STATUS_EMPTY , GEIS_STATUS_NOT_SUPPORTED , GEIS_BAD_ARGUMENT , GEIS_UNKNOWN_ERROR , GEIS_STATUS_BAD_ARGUMENT , GEIS_STATUS_UNKNOWN_ERROR } |
Errors returned from calls. More... | |
enum | GeisAttrType { GEIS_ATTR_TYPE_UNKNOWN , GEIS_ATTR_TYPE_BOOLEAN , GEIS_ATTR_TYPE_FLOAT , GEIS_ATTR_TYPE_INTEGER , GEIS_ATTR_TYPE_POINTER , GEIS_ATTR_TYPE_STRING } |
Attribute data types. More... | |
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_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_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_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_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_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_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_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. | |
Vendor-defined Initialization Arguments | |
| |
#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_XCB_BACKEND |
Uses the grail-embedded-in-X11 back end. | |
#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_TENTATIVE_EVENTS |
Causes tentative events to be sent. | |
#define | GEIS_INIT_SEND_SYNCHRONOS_EVENTS |
Causes all gesture events to be sent, even if there is zero apparent time difference between the events. | |
GeisSize | geis_error_count (Geis geis) |
Gets the number of status codes in the error stack. | |
GeisStatus | geis_error_code (Geis geis, GeisSize index) |
Gets the indicated status code from the error stack. | |
GeisString | geis_error_message (Geis geis, GeisSize index) |
Gets the localized error message, if any, associated with the indicated error. | |
Vendor-defined Configuration Items | |
| |
#define | GEIS_CONFIG_MAX_EVENTS |
#define | GEIS_CONFIG_ATOMIC_GESTURES |
Indicates if atomic gestures are in use. | |
#define | GEIS_CONFIG_SEND_TENTATIVE_EVENTS |
See GEIS_INIT_SEND_TENTATIVE_EVENTS. | |
#define | GEIS_CONFIG_SEND_SYNCHRONOS_EVENTS |
See GEIS_INIT_SEND_SYNCHRONOS_EVENTS. | |
#define | GEIS_CONFIG_DRAG_THRESHOLD |
Movement threshold for recognizing a DRAG gesture (in meters). | |
#define | GEIS_CONFIG_DRAG_TIMEOUT |
Timeout for recognizing a DRAG gesture (in milliseconds). | |
#define | GEIS_CONFIG_PINCH_THRESHOLD |
Movement threshold for recognizing a PINCH gesture (in meters). | |
#define | GEIS_CONFIG_PINCH_TIMEOUT |
Timeout for recognizing a PINCH gesture (in milliseconds). | |
#define | GEIS_CONFIG_ROTATE_THRESHOLD |
Movement threshold for recognizing a ROTATE gesture (in meters). | |
#define | GEIS_CONFIG_ROTATE_TIMEOUT |
Timeout for recognizing a ROTATE gesture (in milliseconds). | |
#define | GEIS_CONFIG_TAP_THRESHOLD |
Movement threshold for recognizing a TAP gesture (in meters). | |
#define | GEIS_CONFIG_TAP_TIMEOUT |
Timeout for recognizing a TAP gesture (in milliseconds). | |
#define | GEIS_CONFIG_NUM_ACTIVE_SUBSCRIPTIONS |
The number of subscriptions currently active in the back end. | |
#define | GEIS_ALL_INPUT_DEVICES |
#define | GEIS_ALL_GESTURES |
Selects ALL input devices. | |
#define | GEIS_NO_GESTURE_ID |
#define | GEIS_DEFAULT_EVENT_CALLBACK |
A special constant indicating the use of the default event callback. | |
enum | _GeisEventType { GEIS_EVENT_DEVICE_AVAILABLE , GEIS_EVENT_DEVICE_UNAVAILABLE , GEIS_EVENT_CLASS_AVAILABLE , GEIS_EVENT_CLASS_CHANGED , GEIS_EVENT_CLASS_UNAVAILABLE , GEIS_EVENT_GESTURE_BEGIN , GEIS_EVENT_GESTURE_UPDATE , GEIS_EVENT_GESTURE_END , GEIS_EVENT_TENTATIVE_BEGIN , GEIS_EVENT_TENTATIVE_UPDATE , GEIS_EVENT_TENTATIVE_END , GEIS_EVENT_INIT_COMPLETE , GEIS_EVENT_USER_DEFINED , GEIS_EVENT_ERROR } |
typedef unsigned int | GeisInputDeviceId |
typedef void(* | GeisInputCallback) (void *cookie, GeisInputDeviceId device_id, void *attrs) |
Prototype for input device callback functions. | |
typedef struct GeisInputFuncs | GeisInputFuncs |
Callback functions used to handle changes in the available input devices. | |
typedef unsigned int | GeisGestureType |
typedef unsigned int | GeisGestureId |
typedef struct GeisGestureAttr | GeisGestureAttr |
An individual gesture attribute. | |
typedef void(* | GeisGestureCallback) (void *cookie, GeisGestureType gesture_type, GeisGestureId gesture_id, GeisSize attr_count, GeisGestureAttr *attrs) |
A callback used for different gesture events. | |
typedef struct GeisGestureFuncs | GeisGestureFuncs |
The set of callback functions invoked for various gesture-related events. | |
typedef enum _GeisEventType | GeisEventType |
typedef void(* | GeisEventCallback) (Geis geis, GeisEvent event, void *context) |
The application callback type for the event dispatcher. | |
GeisStatus | geis_get_configuration (Geis geis, GeisString configuration_item_name, void *configuration_item_value) |
Gets a feature configuration value. | |
GeisStatus | geis_set_configuration (Geis geis, GeisString configuration_item_name, void *configuration_item_value) |
Sets a feature configuration value. | |
GeisStatus | geis_input_devices (GeisInstance geis_instance, GeisInputFuncs *func, void *cookie) |
Registers a callback to receive information on input devices. | |
GeisStatus | geis_subscribe (GeisInstance geis_instance, GeisInputDeviceId *input_list, const char **gesture_list, GeisGestureFuncs *funcs, void *cookie) |
Registers a callback to receive gesture events. | |
GeisStatus | geis_unsubscribe (GeisInstance geis_instance, GeisGestureType *gesture_list) |
Unsubscribes to one or more gestures. | |
GeisString | geis_attr_name (GeisAttr attr) |
An opaque type that encapsulates a GEIS attribute. | |
GeisAttrType | geis_attr_type (GeisAttr attr) |
Gets the type of an attribute value. | |
GeisBoolean | geis_attr_value_to_boolean (GeisAttr attr) |
Gets the value of an attribute as a GeisBoolean. | |
GeisFloat | geis_attr_value_to_float (GeisAttr attr) |
Gets the value of an attribute as a GeisFloat. | |
GeisInteger | geis_attr_value_to_integer (GeisAttr attr) |
Gets the value of an attribute as a GeisInteger. | |
GeisPointer | geis_attr_value_to_pointer (GeisAttr attr) |
Gets the value of an attribute as a GeisPointer. | |
GeisString | geis_attr_value_to_string (GeisAttr attr) |
Gets the value of an attribute as a GeisString. | |
void | geis_register_event_callback (Geis geis, GeisEventCallback event_callback, void *context) |
Registers an event-handler callback. | |
GeisStatus | geis_dispatch_events (Geis geis) |
Pumps the GEIS event loop. | |
GeisStatus | geis_next_event (Geis geis, GeisEvent *event) |
Retrieves the next queued GEIS event. | |
Device Attributes | |
#define | GEIS_DEVICE_ATTRIBUTE_NAME |
The name of the input device. | |
#define | GEIS_DEVICE_ATTRIBUTE_ID |
The unique integer ID of the device. | |
#define | GEIS_DEVICE_ATTRIBUTE_TOUCHES |
The maximum number of touches a device is capable of reporting. | |
#define | GEIS_DEVICE_ATTRIBUTE_DIRECT_TOUCH |
Indicates the device is a direct touch device. | |
#define | GEIS_DEVICE_ATTRIBUTE_INDEPENDENT_TOUCH |
Indicates the device is an independent touch device. | |
#define | GEIS_DEVICE_ATTRIBUTE_MIN_X |
The lower bound of the X-axis (nominally horizontal) coordinate values reported by the device. | |
#define | GEIS_DEVICE_ATTRIBUTE_MAX_X |
The upper bound of the X-axis (nominally horizontal) coordinate values reported by the device. | |
#define | GEIS_DEVICE_ATTRIBUTE_RES_X |
The resolution of the X-axis (nominally horizontal) coordinate values reported by the device. | |
#define | GEIS_DEVICE_ATTRIBUTE_MIN_Y |
The lower bound of the Y-axis (nominally vertical) coordinate values reported by the device. | |
#define | GEIS_DEVICE_ATTRIBUTE_MAX_Y |
The upper bound of the Y-axis (nominally vertical) coordinate values reported by the device. | |
#define | GEIS_DEVICE_ATTRIBUTE_RES_Y |
The resolution of the Y-axis (nominally vertical) coordinate values reported by the device. | |
void | geis_register_device_callback (Geis geis, GeisEventCallback event_callback, void *context) |
GeisDevice | geis_get_device (Geis geis, GeisInteger device_id) |
Gets a cached device description for an identified device. | |
Gesture Class Attributes | |
#define | GEIS_CLASS_ATTRIBUTE_NAME |
The name of the gesture class. | |
#define | GEIS_CLASS_ATTRIBUTE_ID |
The unique integer ID of the gesture class. | |
void | geis_register_class_callback (Geis geis, GeisEventCallback event_callback, void *context) |
Registers a callback to receive gesture class change notifications. | |
Region Initialization Arguments | |
| |
#define | GEIS_REGION_X11_ROOT |
Selects the X11 root window as a region. | |
#define | GEIS_REGION_X11_WINDOWID |
Selects an X11 window as a region. | |
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... | |
enum | { GEIS_SUBSCRIPTION_NONE , GEIS_SUBSCRIPTION_GRAB , GEIS_SUBSCRIPTION_CONT } |
typedef enum _GeisFilterFacility | GeisFilterFacility |
Indicates the type of filter. | |
typedef enum _GeisFilterOperation | GeisFilterOperation |
Indicates the type of filter operation. | |
typedef int | GeisSubscriptionFlags |
GeisStatus | geis_subscription_get_configuration (GeisSubscription subscription, GeisString config_item_name, GeisPointer config_item_value) |
Gets a subscription-level configuration item. | |
GeisStatus | geis_subscription_set_configuration (GeisSubscription subscription, GeisString config_item_name, GeisPointer config_item_value) |
Sets a subscription-level configuration item. | |
Touch Attributes | |
If the touch comes from a direct device (see GEIS_DEVICE_ATTRIBUTE_DIRECT_TOUCH) its position (x and y attributes) will be in window coordinates, otherwise it will be in the input device's own coordinate system. | |
#define | GEIS_TOUCH_ATTRIBUTE_ID |
Identifies the touch. | |
#define | GEIS_TOUCH_ATTRIBUTE_X |
The X coordinate of the touch. | |
#define | GEIS_TOUCH_ATTRIBUTE_Y |
The Y coordinate of the touch. | |
GeisStatus | geis_gesture_accept (Geis geis, GeisGroup group, GeisGestureId gesture_id) |
Marks a gesture as accepted. | |
GeisStatus | geis_gesture_reject (Geis geis, GeisGroup group, GeisGestureId gesture_id) |
Marks a gesture as rejected. | |
This is the public interface for the GEIS gesture API.
Copyright 2010-2013 Canonical Ltd.
This library is free software; you can redistribute it and/or modify it under the terms of version 3 of the GNU Lesser General Public License as published by the Free Software Foundation.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 US
#define GEIS_VERSION_1_0 |
GEIS version macros.
These macros can be tested at compile time to query for support of various features.