errors.h   errors.h 
/* $Id: errors.h,v 1.10 1999/03/24 14:13:34 marcus Exp $ /* $Id$
*************************************************************************** *** *************************************************************************** ***
GGI error definitions GGI error definitions
Copyright (C) 1998 Marcus Sundberg [marcus@ggi-project.org] Copyright (C) 1998 Marcus Sundberg [marcus@ggi-project.org]
Permission is hereby granted, free of charge, to any person obtaining a Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software" ), copy of this software and associated documentation files (the "Software" ),
to deal in the Software without restriction, including without limitatio n to deal in the Software without restriction, including without limitatio n
the rights to use, copy, modify, merge, publish, distribute, sublicense, the rights to use, copy, modify, merge, publish, distribute, sublicense,
skipping to change at line 53 skipping to change at line 53
#define GGI_ENOMEM -20 /* Out of memory */ #define GGI_ENOMEM -20 /* Out of memory */
#define GGI_ENOFILE -21 /* File does not exist */ #define GGI_ENOFILE -21 /* File does not exist */
#define GGI_ENODEVICE -22 /* Input/Output device can not be opened */ #define GGI_ENODEVICE -22 /* Input/Output device can not be opened */
#define GGI_EARGREQ -23 /* Required argument missing */ #define GGI_EARGREQ -23 /* Required argument missing */
#define GGI_EARGINVAL -24 /* Invalid argument(s) */ #define GGI_EARGINVAL -24 /* Invalid argument(s) */
#define GGI_ENOTALLOC -25 /* Trying to use or deallocate a resource th at #define GGI_ENOTALLOC -25 /* Trying to use or deallocate a resource th at
was not previously allocated */ was not previously allocated */
#define GGI_EFATAL -26 /* Fatal error - the state of the target of #define GGI_EFATAL -26 /* Fatal error - the state of the target of
the operation is undefined */ the operation is undefined */
#define GGI_EBADFILE -27 /* Error reading (config) file */
#define GGI_ELOCKBUSY -30 /* Lock is in use */ #define GGI_ENOSPACE -28 /* Out of space / range */
#define GGI_ENOFUNC -29 /* Function not implemented */
#define GGI_EBUSY -30 /* Object is busy */
#define GGI_ENOTFOUND -31 /* The requested object was not found */ #define GGI_ENOTFOUND -31 /* The requested object was not found */
#define GGI_EEXCLUSIVE -32 /* Tried to get non-exclusive access to obje ct #define GGI_EEXCLUSIVE -32 /* Tried to get non-exclusive access to obje ct
which only supports exclusive access */ which only supports exclusive access */
#define GGI_ENOMATCH -33 /* No matching entry found */
#define GGI_EEVUNKNOWN -40 /* Unknown event sent to input source */ #define GGI_EEVUNKNOWN -40 /* Unknown event sent to or received from
input source */
#define GGI_EEVNOTARGET -41 /* No apropriate target for sent eve nt */ #define GGI_EEVNOTARGET -41 /* No apropriate target for sent eve nt */
#define GGI_EEVOVERFLOW -42 /* Overflow when queuing event */ #define GGI_EEVOVERFLOW -42 /* Overflow when queuing event */
#define GGI_EUNKNOWN -99 /* Unknown error */ #define GGI_EUNKNOWN -99 /* Unknown error */
#endif /* _GGI_ERRORS_H */ #endif /* _GGI_ERRORS_H */
 End of changes. 4 change blocks. 
4 lines changed or deleted 8 lines changed or added


 events.h   events.h 
/* $Id: events.h,v 1.23 1999/02/22 20:19:28 marcus Exp $ /* $Id: events.h,v 1.2 2003/04/13 02:23:12 ggibecka Exp $
*************************************************************************** *** *************************************************************************** ***
LibGII event definitions LibGII event definitions
Copyright (C) 1995-1997 Steffen Seeger [seeger@ggi-project.org] Copyright (C) 1995-1997 Steffen Seeger [seeger@ggi-project.org]
Copyright (C) 1998 Andrew Apted [andrew@ggi-project.org] Copyright (C) 1998 Andrew Apted [andrew@ggi-project.org]
Copyright (C) 1998 Andreas Beck [becka@ggi-project.org] Copyright (C) 1998 Andreas Beck [becka@ggi-project.org]
Permission is hereby granted, free of charge, to any person obtaining a Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software" ), copy of this software and associated documentation files (the "Software" ),
skipping to change at line 95 skipping to change at line 95
EVMASK(ValRelative), EVMASK(ValRelative),
EVMASK(ValAbsolute), EVMASK(ValAbsolute),
emValuator = emValRelative | emValAbsolute, emValuator = emValRelative | emValAbsolute,
emZero = 0, emZero = 0,
emAll = ((1 << evLast) - 1) & ~emNothing emAll = ((1 << evLast) - 1) & ~emNothing
} gii_event_mask; } gii_event_mask;
#undef EVMASK #undef EVMASK
#define GII_EV_ORIGIN_NONE 0x00000000 /* Anonymous */ #define GII_EV_ORIGIN_NONE 0x00000000 /* Anonymous */
#define GII_EV_ORIGIN_SENDEVENT 0x80000000 /* Event was #define GII_EV_ORIGIN_SENDEVENT 0x80000000 /* Event was due to
due to SendEvent call */ SendEvent call */
#define GII_EV_ORIGIN(id) (id) /* Otherwise, it's a #define GII_EV_ORIGIN(id) (id) /* Otherwise, it's an id */
n id */
#define GII_EV_TARGET_ALL 0x00000000 /* broadcast event * #define GII_EV_TARGET_ALL 0x00000000 /* Broadcast event */
/ #define GII_EV_TARGET_QUEUE 0x80000000 /* Just queue the event */
#define COMMON_DATA \ #define COMMON_DATA \
uint8 size; /* size of event in bytes */\ uint8 size; /* size of event in bytes */\
uint8 type; /* type of this event */\ uint8 type; /* type of this event */\
sint16 error; /* error (for replies) */\ sint16 error; /* error (for replies) */\
uint32 origin; /* origin device (etc) */\ uint32 origin; /* origin device (etc) */\
uint32 target; /* target device (etc) */\ uint32 target; /* target device (etc) */\
struct timeval time /* timestamp */ struct timeval time /* timestamp */
/* this information is reported with all events. Use the <any> field /* This information is reported with all events. Use the <any> field
** in a gii_event structure to access these fields. ** in a gii_event structure to access these fields.
*/ */
typedef struct { typedef struct {
COMMON_DATA; COMMON_DATA;
} gii_any_event; } gii_any_event;
/* /*
*************************************************************************** *** *************************************************************************** ***
Command/Information events Command/Information events
*************************************************************************** *** *************************************************************************** ***
*/ */
#define GII_CMDFLAG_NODATA (1<<31) /* Event has no data */ #define GII_CMDFLAG_NODATA ((uint32)(1<<31)) /* Event has no data
#define GII_CMDFLAG_PRIVATE (1<<30) /* The code is specific to a certain */
inputlib */ #define GII_CMDFLAG_PRIVATE ((uint32)(1<<30)) /* The code is spec
#define GII_CMDFLAG_EXTERNAL (1<<29) /* Event is sent to/from an external ific to a certain
system (like LibGGI) */ inputlib */
#define GII_CMDFLAG_EXTERNAL ((uint32)(1<<29)) /* Event is sent to/
from an external
system (like LibG
GI) */
/* These are used internally or to/from the application. /* These are used internally or to/from the application.
The same event is used for both Command and Information events. The same event is used for both Command and Information events.
The recipient must not store references to the data. If the data The recipient must not store references to the data. If the data
information is needed afterwards, copy it! information is needed afterwards, copy it!
*/ */
typedef struct { typedef struct {
COMMON_DATA; COMMON_DATA;
skipping to change at line 156 skipping to change at line 158
COMMON_DATA; COMMON_DATA;
uint32 code; /* command/request code */ uint32 code; /* command/request code */
uint8 data[GII_CMD_DATA_MAX]; /* command related data */ uint8 data[GII_CMD_DATA_MAX]; /* command related data */
} gii_cmd_event; } gii_cmd_event;
/* This one is posted, if at least one event has been lost due to queue /* This one is posted, if at least one event has been lost due to queue
overflow: */ overflow: */
#define GII_CMDCODE_EVENTLOST (0x01 | GII_CMDFLAG_NODATA) #define GII_CMDCODE_EVENTLOST ((uint32)0x01 | GII_CMDFLAG_NODATA)
/* This event tell inputlibs that the application prefer absolute pointer
events. */
#define GII_CMDCODE_PREFER_ABSPTR ((uint32)0x02 | GII_CMDFLAG_NODATA)
/* This event tell inputlibs that the application prefer relative pointer
events. */
#define GII_CMDCODE_PREFER_RELPTR ((uint32)0x03 | GII_CMDFLAG_NODATA)
/* This event is sent/received to require/get the capabilities of a device /* This event is sent/received to require/get the capabilities of a device
* as specified in target/origin. * as specified in target/origin.
* An event stating num_buttons=num_axes=0 says, that the device is inactiv e, * An event stating num_buttons=num_axes=0 says, that the device is inactiv e,
* unplugged, whatever. Devices automatically report (detectable) state * unplugged, whatever. Devices automatically report (detectable) state
* changes via devinfo. But you need to re-query the valinfo records. * changes via devinfo. But you need to re-query the valinfo records.
*/ */
#define GII_CMDCODE_GETDEVINFO (0x01) #define GII_CMDCODE_GETDEVINFO ((uint32)0x01)
typedef struct { typedef struct {
char longname[75]; char longname[75];
char shortname[5]; char shortname[5];
gii_event_mask can_generate; gii_event_mask can_generate;
uint32 num_buttons; /* Maximum number of buttons. */ uint32 num_buttons; /* Maximum number of buttons. */
uint32 num_axes; /* Maximum number of axes. */ uint32 num_axes; /* Maximum number of axes. */
} gii_cmddata_getdevinfo; } gii_cmddata_getdevinfo;
#define GII_NUM_MAX 0xfffeffff /* If num_buttons or num_axes is
more than this they should not
be interpreted as absolute
values (see below for what the
y
mean). */
#define GII_NUM_UNKNOWN 0xffffffff /* Number is unknown. */
typedef struct gii_valrange { typedef struct gii_valrange {
sint32 min, center, max; sint32 min, center, max;
} gii_valrange; } gii_valrange;
typedef enum { typedef enum {
GII_PT_UNKNOWN, /* unknown */ GII_PT_UNKNOWN, /* unknown */
GII_PT_TIME, /* base unit s */ GII_PT_TIME, /* base unit s */
GII_PT_FREQUENCY, /* base unit 1/s (Hz) */ GII_PT_FREQUENCY, /* base unit 1/s (Hz) */
GII_PT_LENGTH, /* base unit m */ GII_PT_LENGTH, /* base unit m */
skipping to change at line 211 skipping to change at line 226
GII_PT_VOLTAGE, /* base unit V (kg*m^2/(As^3)) */ GII_PT_VOLTAGE, /* base unit V (kg*m^2/(As^3)) */
GII_PT_RESISTANCE, /* base unit V/A (Ohm) */ GII_PT_RESISTANCE, /* base unit V/A (Ohm) */
GII_PT_CAPACITY, /* base unit As/V (Farad) */ GII_PT_CAPACITY, /* base unit As/V (Farad) */
GII_PT_INDUCTIVITY, /* base unit Vs/A (Henry) */ GII_PT_INDUCTIVITY, /* base unit Vs/A (Henry) */
GGI_PT_LAST GGI_PT_LAST
} gii_phystype; } gii_phystype;
/* This event is sent/received to require/get detailed data about valuator /* This event is sent/received to require/get detailed data about valuator
* axis. * axis.
*/ */
#define GII_CMDCODE_GETVALINFO (0x02) #define GII_CMDCODE_GETVALINFO ((uint32)0x02)
typedef struct { typedef struct {
uint32 number; /* Number of the valuator */ uint32 number; /* Number of the valuator */
/* You may send this to get all valuators at once. Not recommended. */ /* You may send this to get all valuators at once. Not recommended. */
#define GII_VAL_QUERY_ALL 0xffffffff #define GII_VAL_QUERY_ALL 0xffffffff
char longname[75]; char longname[75];
char shortname[5]; char shortname[5];
gii_valrange range; gii_valrange range;
 End of changes. 10 change blocks. 
18 lines changed or deleted 35 lines changed or added


 gg.h   gg.h 
/* $Id: gg.h,v 1.14 1999/03/24 14:13:54 marcus Exp $ /* $Id: gg.h,v 1.14.2.1 2004/10/18 15:15:54 cegger Exp $
*************************************************************************** *** *************************************************************************** ***
LibGG - API header file LibGG - API header file
Copyright (C) 1998 Marcus Sundberg [marcus@ggi-project.org] Copyright (C) 1998-1999 Marcus Sundberg [marcus@ggi-project.org]
Permission is hereby granted, free of charge, to any person obtaining a Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software" ), copy of this software and associated documentation files (the "Software" ),
to deal in the Software without restriction, including without limitatio n to deal in the Software without restriction, including without limitatio n
the rights to use, copy, modify, merge, publish, distribute, sublicense, the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions: Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software. all copies or substantial portions of the Software.
skipping to change at line 31 skipping to change at line 31
THE AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETH ER THE AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETH ER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWAR E. CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWAR E.
*************************************************************************** *** *************************************************************************** ***
*/ */
#ifndef _GGI_GG_H #ifndef _GGI_GG_H
#define _GGI_GG_H #define _GGI_GG_H
#include <stdio.h>
#include <stdlib.h>
#include <ggi/errors.h> #include <ggi/errors.h>
#include <ggi/system.h> #include <ggi/system.h>
#include <ggi/gg-defs.h>
#include <stdio.h>
#include <stdlib.h>
__BEGIN_DECLS
/* /*
*************************************************************************** *** *************************************************************************** ***
Initialize/Deinitialize library Initialize/Deinitialize library
*************************************************************************** *** *************************************************************************** ***
*/ */
int ggInit(void); GGAPIFUNC int ggInit(void);
int ggExit(void); GGAPIFUNC int ggExit(void);
/*
***************************************************************************
***
Time functions
***************************************************************************
***
*/
GGAPIFUNC int ggCurTime(struct timeval *tv);
GGAPIFUNC int ggUSleep(sint32 usecs);
GGAPIFUNC void ggUSlumber(sint32 usecs);
/* /*
*************************************************************************** *** *************************************************************************** ***
Functions for adding and removing cleanup callbacks Functions for adding and removing cleanup callbacks
*************************************************************************** *** *************************************************************************** ***
*/ */
typedef void (ggcleanup_func)(void *); typedef void (ggcleanup_func)(void *);
int ggRegisterCleanup(ggcleanup_func *func, void *arg); GGAPIFUNC int ggRegisterCleanup(ggcleanup_func *func, void *arg);
int ggUnregisterCleanup(ggcleanup_func *func, void *arg); GGAPIFUNC int ggUnregisterCleanup(ggcleanup_func *func, void *arg);
/* Try to force _exit() when a handler is triggered */
GGAPIFUNC void ggCleanupForceExit(void);
/*
***************************************************************************
***
Functions and structures for using the task scheduler
***************************************************************************
***
*/
/* Scheduler tick counter wraps at this value */
#define GG_SCHED_TICK_WRAP 32768
#define GG_SCHED_TICKS2USECS(ticks) ((ticks) * ggTimeBase())
#define GG_SCHED_USECS2TICKS(usecs) ((usecs) / ggTimeBase())
struct gg_task;
typedef int (gg_task_callback_fn)(struct gg_task *task);
struct gg_task {
gg_task_callback_fn *cb; /* Function to call to run task
*/
void *hook; /* Task data can be hung here
*/
int pticks; /* Run once every pticks ticks.
*/
int ncalls; /* Run ncalls times (0 = infinite)
*/
/* The rest of this structure is private/internal, do not touch.
* It should be initialized to all NULL before adding the task.
*/
void *exelock; /* Prevents reentry
*/
int lasttick; /* # of tick when task last run
*/
/* Double-linked, reorderable ring-list of all registered tasks.
*/
struct gg_task *next;
struct gg_task *last;
/* Double-linked ordered linear-list of tasks with expired deadlines
*/
struct gg_task *nextdl;
struct gg_task *lastdl;
};
GGAPIFUNC int ggAddTask(struct gg_task *task);
GGAPIFUNC int ggDelTask(struct gg_task *task);
GGAPIFUNC uint32 ggTimeBase(void);
/* /*
*************************************************************************** *** *************************************************************************** ***
Misc functions Misc functions
*************************************************************************** *** *************************************************************************** ***
*/ */
/* Get the users "home" directory, or whatever the equivalent is under the /* Get the users "home" directory, or whatever the equivalent is under the
system we are running on. */ system we are running on. */
const char *ggGetUserDir(void); GGAPIFUNC const char *ggGetUserDir(void);
/*
***************************************************************************
***
Safe string handling functions
***************************************************************************
***
*/
/*
* Copy src to string dst of size siz. At most siz-1 characters
* will be copied. Always NUL terminates (unless siz == 0).
* Returns strlen(src); if retval >= siz, truncation occurred.
*/
GGAPIFUNC size_t ggstrlcpy(char *dst, const char *src, size_t siz);
/*
* Appends src to string dst of size siz (unlike strncat, siz is the
* full size of dst, not space left). At most siz-1 characters
* will be copied. Always NUL terminates (unless siz <= strlen(dst)).
* Returns strlen(src) + MIN(siz, strlen(initial dst)).
* If retval >= siz, truncation occurred.
*/
GGAPIFUNC size_t ggstrlcat(char *dst, const char *src, size_t siz);
/* /*
*************************************************************************** *** *************************************************************************** ***
Configuration file handling Configuration file handling
*************************************************************************** *** *************************************************************************** ***
*/ */
int ggLoadConfig(const char *file, void **confret); GGAPIFUNC int ggLoadConfig(const char *file, void **confret);
void ggFreeConfig(void *conf); GGAPIFUNC void ggFreeConfig(void *conf);
const char *ggMatchConfig(const void *conf, const char *name, GGAPIFUNC const char *ggMatchConfig(const void *conf, const char *name,
const char *version); const char *version);
GGAPIFUNC int ggConfigExpandAlias(void *confhandle, const char *list_in,
char *list_out, size_t outmax);
/* /*
*************************************************************************** *** *************************************************************************** ***
Dynamic module loading Dynamic module loading
*************************************************************************** *** *************************************************************************** ***
*/ */
#ifdef _WIN32
typedef HMODULE gg_module;
#else
typedef void *gg_module; typedef void *gg_module;
#endif
#define GG_MODULE_GLOBAL 1 #define GG_MODULE_NULL NULL
#ifdef _WIN32 #define GG_MODULE_GLOBAL 1
#define GG_MODULE_NULL NULL /* FIXME ??? */
#else
#define GG_MODULE_NULL NULL
#endif
/* Dynamicly load file */ /* Dynamicly load file */
gg_module ggLoadModule(const char *filename, int flags); GGAPIFUNC gg_module ggLoadModule(const char *filename, int flags);
/* Try to match name in conf and load the resulting filename */ /* Try to match name in conf and load the resulting filename */
gg_module ggMLoadModule(const void *conf, const char *name, GGAPIFUNC gg_module ggMLoadModule(const void *conf, const char *name,
const char *version, int flags); const char *version, int flags);
/* Get Address of symbol in module */ /* Get Address of symbol in module */
void *ggGetSymbolAddress(gg_module module, const char *symbol); GGAPIFUNC void *ggGetSymbolAddress(gg_module module, const char *symbol);
/* Unload a module and free resources */ /* Unload a module and free resources */
void ggFreeModule(gg_module module); GGAPIFUNC void ggFreeModule(gg_module module);
/* /*
*************************************************************************** *** *************************************************************************** ***
Parsing functions Parsing functions
*************************************************************************** *** *************************************************************************** ***
*/ */
/* Read the first matching option from an option file into the correspondin g /* Read the first matching option from an option file into the correspondin g
result entry */ result entry */
int ggGetFileOpt(FILE *fp, const char **optnames, char **results, int ressi GGAPIFUNC int ggGetFileOpt(FILE *fp, const char **optnames,
ze); char **results, int ressize);
char *ggParseTarget(const char *str, char *target, int max); GGAPIFUNC char *ggParseTarget(const char *str, char *target, int max);
#define MAX_OPTION_NAME 32 #define GG_MAX_OPTION_NAME 32
#define MAX_OPTION_RESULT 256 #define GG_MAX_OPTION_RESULT 256
typedef struct gg_option typedef struct gg_option
{ {
char name[MAX_OPTION_NAME]; char name[GG_MAX_OPTION_NAME];
char result[MAX_OPTION_RESULT]; char result[GG_MAX_OPTION_RESULT];
} gg_option; } gg_option;
char *ggParseOptions(const char *str, gg_option *optlist, int count); GGAPIFUNC char *ggParseOptions(const char *str, gg_option *optlist,
int count);
/* /*
*************************************************************************** *** *************************************************************************** ***
Debug output Debug output
*************************************************************************** *** *************************************************************************** ***
*/ */
void ggDPrintf(int sync, const char *subsys, const char *form, ...); GGAPIFUNC void ggDPrintf(int _sync, const char *subsys,
const char *form, ...);
/* /*
*************************************************************************** *** *************************************************************************** ***
Mutex locking Mutex locking
*************************************************************************** *** *************************************************************************** ***
*/ */
void *ggLockCreate(void); GGAPIFUNC void *ggLockCreate(void);
int ggLockDestroy(void *lock); GGAPIFUNC int ggLockDestroy(void *lock);
int ggLock(void *lock); GGAPIFUNC void ggLock(void *lock);
int ggUnlock(void *lock); GGAPIFUNC void ggUnlock(void *lock);
int ggTryLock(void *lock); GGAPIFUNC int ggTryLock(void *lock);
/*
***************************************************************************
***
CPU Identification and SIMD disable/enable
***************************************************************************
***
*/
/* These are exclusive even between architectures to limit cpp complexity.
* And who knows, perhaps cross-arch emulations may happen.
*/
enum gg_swartype {
GG_SWAR_NONE = 0x00000001, /* Vanilla C implementation */
GG_SWAR_32BITC = 0x00000002, /* Fast 32b math vs 16b */
GG_SWAR_ALTIVEC = 0x00000004,
GG_SWAR_SSE = 0x00000008,
GG_SWAR_SSE2 = 0x00000010,
GG_SWAR_MMX = 0x00000020,
GG_SWAR_MMXPLUS = 0x00000040, /* Cyrix. */
GG_SWAR_3DNOW = 0x00000080, /* Implies MMX enhancements */
GG_SWAR_ADV3DNOW= 0x00000100, /* Implies MMX enhancements */
GG_SWAR_MAX = 0x00000200,
GG_SWAR_SIGD = 0x00000400, /* 32b or 64b?? */
GG_SWAR_SSE3 = 0x00000800,
#ifdef GG_HAVE_INT64
GG_SWAR_64BITC = 0x0000000100000000LL, /* Fast 64b vs 32b
*/
GG_SWAR_MVI = 0x0000000200000000LL, /* avail in 32b mode?
*/
GG_SWAR_MAX2 = 0x0000000400000000LL,
GG_SWAR_MDMX = 0x0000000800000000LL, /* avail in 32b mode?
*/
GG_SWAR_MAJC = 0x0000001000000000LL,
GG_SWAR_VIS = 0x0000002000000000LL,
GG_SWAR_ALL = 0xffffffffffffffffLL
#else
GG_SWAR_ALL = 0xffffffff
#endif
};
GGAPIFUNC enum gg_swartype ggGetSwarType(void);
__END_DECLS
#endif /* _GGI_GG_H */ #endif /* _GGI_GG_H */
 End of changes. 32 change blocks. 
42 lines changed or deleted 182 lines changed or added


 gii-dl.h   gii-dl.h 
/* $Id: gii-dl.h,v 1.3 1999/02/21 21:31:27 marcus Exp $ /* $Id: gii-dl.h,v 1.4 2004/02/23 14:16:39 pekberg Exp $
*************************************************************************** *** *************************************************************************** ***
LibGII semi-internals. Are exported, but for source-use only. LibGII semi-internals. Are exported, but for source-use only.
Copyright (C) 1998 Andreas Beck [becka@ggi-project.org] Copyright (C) 1998 Andreas Beck [becka@ggi-project.org]
Copyright (C) 1999 Marcus Sundberg [marcus@ggi-project.org]
Permission is hereby granted, free of charge, to any person obtaining a Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software" ), copy of this software and associated documentation files (the "Software" ),
to deal in the Software without restriction, including without limitatio n to deal in the Software without restriction, including without limitatio n
the rights to use, copy, modify, merge, publish, distribute, sublicense, the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions: Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software. all copies or substantial portions of the Software.
skipping to change at line 35 skipping to change at line 36
*************************************************************************** *** *************************************************************************** ***
*/ */
#ifndef _GGI_INTERNAL_SOURCE_H #ifndef _GGI_INTERNAL_SOURCE_H
#define _GGI_INTERNAL_SOURCE_H #define _GGI_INTERNAL_SOURCE_H
#include <ggi/internal/gii.h> #include <ggi/internal/gii.h>
/* Internal API calls /* Internal API calls
*/ */
__BEGIN_DECLS
int _giiEvQueueAdd(gii_input *inp, gii_event *ev); GIIAPIFUNC struct gii_input *_giiInputAlloc(void);
struct gii_input *_giiInputAlloc(void); GIIAPIFUNC void _giiInputFree(struct gii_input *inp)
;
__END_DECLS
#endif /* _GGI_INTERNAL_SOURCE_H */ #endif /* _GGI_INTERNAL_SOURCE_H */
 End of changes. 4 change blocks. 
3 lines changed or deleted 8 lines changed or added


 gii-unix.h   gii-unix.h 
/* $Id: gii-unix.h,v 1.1 1999/01/31 01:39:52 marcus Exp $ /* $Id: gii-unix.h,v 1.2 2004/02/23 14:16:38 pekberg Exp $
*************************************************************************** *** *************************************************************************** ***
LibGII UNIX-specific API header file LibGII UNIX-specific API header file
Copyright (C) 1999 Marcus Sundberg [marcus@ggi-project.org] Copyright (C) 1999 Marcus Sundberg [marcus@ggi-project.org]
Permission is hereby granted, free of charge, to any person obtaining a Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software" ), copy of this software and associated documentation files (the "Software" ),
to deal in the Software without restriction, including without limitatio n to deal in the Software without restriction, including without limitatio n
the rights to use, copy, modify, merge, publish, distribute, sublicense, the rights to use, copy, modify, merge, publish, distribute, sublicense,
skipping to change at line 32 skipping to change at line 32
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWAR E. CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWAR E.
*************************************************************************** *** *************************************************************************** ***
*/ */
#ifndef _GGI_GII_UNIX_H #ifndef _GGI_GII_UNIX_H
#define _GGI_GII_UNIX_H #define _GGI_GII_UNIX_H
#include <ggi/events.h> #include <ggi/events.h>
#include <ggi/gii-defs.h>
__BEGIN_DECLS
/* Wait for filedescriptors and LibGII events the the same time */ /* Wait for filedescriptors and LibGII events the the same time */
int giiEventSelect(gii_input_t inp, gii_event_mask *mask, int n, GIIAPIFUNC int giiEventSelect(gii_input_t inp, gii_event_mask *mask, int n,
fd_set *readfds, fd_set *writefds, fd_set *exceptfds, fd_set *readfds, fd_set *writefds,
struct timeval *timeout); fd_set *exceptfds, struct timeval *timeout);
__END_DECLS
#endif /* GGI_GII_UNIX_H */ #endif /* GGI_GII_UNIX_H */
 End of changes. 4 change blocks. 
4 lines changed or deleted 7 lines changed or added


 gii.h   gii.h 
/* $Id: gii.h,v 1.12 1999/03/17 23:43:04 becka Exp $ /* $Id: gii.h,v 1.4 2004/02/23 14:16:38 pekberg Exp $
*************************************************************************** *** *************************************************************************** ***
LibGII API header file LibGII API header file
Copyright (C) 1998 Andreas Beck [becka@ggi-project.org] Copyright (C) 1998 Andreas Beck [becka@ggi-project.o
rg]
Copyright (C) 1999-2000 Marcus Sundberg [marcus@ggi-project.org]
Permission is hereby granted, free of charge, to any person obtaining a Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software" ), copy of this software and associated documentation files (the "Software" ),
to deal in the Software without restriction, including without limitatio n to deal in the Software without restriction, including without limitatio n
the rights to use, copy, modify, merge, publish, distribute, sublicense, the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions: Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software. all copies or substantial portions of the Software.
skipping to change at line 32 skipping to change at line 33
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWAR E. CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWAR E.
*************************************************************************** *** *************************************************************************** ***
*/ */
#ifndef _GGI_GII_H #ifndef _GGI_GII_H
#define _GGI_GII_H #define _GGI_GII_H
#include <ggi/events.h> #include <ggi/events.h>
#include <ggi/gii-defs.h>
#ifdef __cplusplus #ifndef _INTERNAL_LIBGII
extern "C" { /* Opaque pointer types.
#endif /* __cplusplus */ This little magic gains us some type checking. */
struct gii_h_dummy1 { char dummy1; };
#ifndef _BUILDING_LIBGII typedef struct gii_h_dummy1 *gii_input_t;
typedef void *gii_input_t;
typedef void *gii_filter_t;
#endif #endif
#define GII_MAXSUBLIBS 256
#define GII_SUBLIBMASK 0x000000ff
#define GII_MAINMASK 0xffffff00
/* /*
*************************************************************************** *** *************************************************************************** ***
libGII function definitions libGII function definitions
*************************************************************************** *** *************************************************************************** ***
*/ */
__BEGIN_DECLS
/* Get the master config dir /* Get the master config dir
*/ */
const char *giiGetConfDir(void); GIIAPIFUNC const char *giiGetConfDir(void);
/* Enter and leave the library. /* Enter and leave the library.
*/ */
int giiInit(void); GIIAPIFUNC int giiInit(void);
int giiExit(void); GIIAPIFUNC int giiExit(void);
void giiPanic(char *format, ...); GIIAPIFUNC void giiPanic(const char *format, ...);
/* Turn on thread safe operation
*/
GIIAPIFUNC int giiMTInit(void);
/* Open a new Input - use input `NULL' for autoselect. /* Open a new Input - use input `NULL' for autoselect.
*/ */
gii_input_t giiOpen(const char *input,...); GIIAPIFUNC gii_input_t giiOpen(const char *input,...);
int giiClose(gii_input_t inp); GIIAPIFUNC int giiClose(gii_input_t inp);
/* Input management /* Input management
*/ */
GIIAPIFUNC gii_input_t giiJoinInputs(gii_input_t inp, gii_input_t inp2);
GIIAPIFUNC int giiSplitInputs(gii_input_t inp, gii_input_t *newhand,
uint32 origin, uint32 flags);
gii_input_t giiJoinInputs(gii_input_t inp, gii_input_t inp2); /* Event Handling
*/
/* Event Handling */ GIIAPIFUNC gii_event_mask giiEventPoll(gii_input_t inp,
gii_event_mask mask,
gii_event_mask giiEventPoll(gii_input_t inp, gii_event_mask mask, struct timeval *t);
struct timeval *t); GIIAPIFUNC int giiEventRead(gii_input_t inp, gii_ev
int giiEventRead(gii_input_t inp, gii_event *ev, ent *ev,
gii_event_mask mask); gii_event_mask mask);
int giiEventsQueued(gii_input_t inp, gii_event_mask mask); GIIAPIFUNC int giiEventsQueued(gii_input_t inp,
int giiEventSend(gii_input_t inp, gii_event *ev); gii_event_mask mask);
int giiSetEventMask(gii_input_t inp, gii_event_mask evm); GIIAPIFUNC int giiEventSend(gii_input_t inp, gii_event *ev)
gii_event_mask giiGetEventMask(gii_input_t inp); ;
GIIAPIFUNC int giiSetEventMask(gii_input_t inp,
gii_event_mask evm);
GIIAPIFUNC gii_event_mask giiGetEventMask(gii_input_t inp);
#define giiAddEventMask(inp,mask) \ #define giiAddEventMask(inp,mask) \
giiSetEventMask((inp), giiGetEventMask((inp)) | (mask)) giiSetEventMask((inp), giiGetEventMask((inp)) | (mask))
#define giiRemoveEventMask(inp,mask) \ #define giiRemoveEventMask(inp,mask) \
giiSetEventMask((inp), giiGetEventMask((inp)) & ~(mask)) giiSetEventMask((inp), giiGetEventMask((inp)) & ~(mask))
#if 0 /* Deviceinfo stuff
/* Filter handling */ */
GIIAPIFUNC int giiQueryDeviceInfo (gii_input_t inp, uint32 orig
gii_filter_t giiFilterOpen(const char *filter, const char *args, void *argp in, gii_cmddata_getdevinfo *info);
tr); GIIAPIFUNC int giiQueryDeviceInfoByNumber(gii_input_t inp, uint32 numb
int giiFilterClose(gii_filter_t filt); er, uint32 *origin, gii_cmddata_getdevinfo *info);
gii_filter_t giiFilterListOpen(const char *str); GIIAPIFUNC int giiQueryValInfo (gii_input_t inp, uint32 origin, uint
int giiAttachFilter(gii_input_t inp, gii_filter_t filt); 32 valnumber, gii_cmddata_getvalinfo *info);
int giiDetachFilters(gii_input_t inp);
#endif
/* Deviceinfo stuff */
int giiQueryDeviceInfo(gii_input_t inp, uint32 origin, gii_cmddata_
getdevinfo *info);
int giiQueryValInfo (gii_input_t inp, uint32 origin, uint32 valnu
mber, gii_cmddata_getvalinfo *info);
#ifdef __cplusplus __END_DECLS
}
#endif /* __cplusplus */
#endif /* _GGI_GII_H */ #endif /* _GGI_GII_H */
 End of changes. 13 change blocks. 
51 lines changed or deleted 48 lines changed or added


 keyboard.h   keyboard.h 
/* $Id: keyboard.h,v 1.13 1999/03/11 17:36:01 marcus Exp $ /* $Id: keyboard.h,v 1.2 2003/11/30 07:18:30 skids Exp $
*************************************************************************** *** *************************************************************************** ***
LibGII keyboard definitions LibGII keyboard definitions
Copyright (C) 1998 Andrew Apted [andrew@ggi-project.org] Copyright (C) 1998 Andrew Apted [andrew@ggi-project.org]
Copyright (C) 1999 Marcus Sundberg [marcus@ggi-project.org] Copyright (C) 1999 Marcus Sundberg [marcus@ggi-project.org]
Permission is hereby granted, free of charge, to any person obtaining a Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software" ), copy of this software and associated documentation files (the "Software" ),
to deal in the Software without restriction, including without limitatio n to deal in the Software without restriction, including without limitatio n
skipping to change at line 45 skipping to change at line 45
#define GII_UNICODE(x) ((x) < 0xE000 || (x) >= 0xF900) #define GII_UNICODE(x) ((x) < 0xE000 || (x) >= 0xF900)
/* types */ /* types */
#define GII_KT_LATIN1 0x00 #define GII_KT_LATIN1 0x00
#define GII_KT_SPEC 0xE0 #define GII_KT_SPEC 0xE0
#define GII_KT_FN 0xE1 #define GII_KT_FN 0xE1
#define GII_KT_PAD 0xE2 #define GII_KT_PAD 0xE2
#define GII_KT_MOD 0xE3 #define GII_KT_MOD 0xE3
#define GII_KT_DEAD 0xE4 #define GII_KT_DEAD 0xE4
#define GII_KT_RC 0xE5
/* modifiers */ /* modifiers */
#define GII_KM_SHIFT 0x00 #define GII_KM_SHIFT 0x00
#define GII_KM_CTRL 0x01 #define GII_KM_CTRL 0x01
#define GII_KM_ALT 0x02 #define GII_KM_ALT 0x02
#define GII_KM_META 0x03 #define GII_KM_META 0x03
#define GII_KM_SUPER 0x04 #define GII_KM_SUPER 0x04
#define GII_KM_HYPER 0x05 #define GII_KM_HYPER 0x05
#define GII_KM_ALTGR 0x06 #define GII_KM_ALTGR 0x06
skipping to change at line 236 skipping to change at line 237
#define GIIK_PF1 GII_KEY(GII_KT_PAD, 0x91) #define GIIK_PF1 GII_KEY(GII_KT_PAD, 0x91)
#define GIIK_PF2 GII_KEY(GII_KT_PAD, 0x92) #define GIIK_PF2 GII_KEY(GII_KT_PAD, 0x92)
#define GIIK_PF3 GII_KEY(GII_KT_PAD, 0x93) #define GIIK_PF3 GII_KEY(GII_KT_PAD, 0x93)
#define GIIK_PF4 GII_KEY(GII_KT_PAD, 0x94) #define GIIK_PF4 GII_KEY(GII_KT_PAD, 0x94)
#define GIIK_PF5 GII_KEY(GII_KT_PAD, 0x95) #define GIIK_PF5 GII_KEY(GII_KT_PAD, 0x95)
#define GIIK_PF6 GII_KEY(GII_KT_PAD, 0x96) #define GIIK_PF6 GII_KEY(GII_KT_PAD, 0x96)
#define GIIK_PF7 GII_KEY(GII_KT_PAD, 0x97) #define GIIK_PF7 GII_KEY(GII_KT_PAD, 0x97)
#define GIIK_PF8 GII_KEY(GII_KT_PAD, 0x98) #define GIIK_PF8 GII_KEY(GII_KT_PAD, 0x98)
#define GIIK_PF9 GII_KEY(GII_KT_PAD, 0x99) #define GIIK_PF9 GII_KEY(GII_KT_PAD, 0x99)
/* Remote control, shortcut, and digi keys. Note: corresponds to linux's
* linux-input, which is likely to be the dominant system eventually,
* given most people are too lazy to make their own keymaps and lirc doesn'
t
* have a base keymap, just some key symbol names.
*
* So, try to keep a simple mapping to linux-input if possible when
* adding keys.
*
* Current mapping against linux/input.h:
* "keys" 0x140-0x19f are mapped to GII_KT_RC | (0x10 to 0x6f)
* "keys" 0x70 and up are mapped to their code | GII_KT_RC, except
* for those which existed prior to adding the linux-input keys.
*
* Note that while the GII_KT_RC codes may appear in mainstream
* sources they are not considered to be formally part of this
* version of LibGII; they will become formally valid in the next
* release of LibGII (when this comment will hopefully be deleted :-)
*
*/
#define GIIK_Digi GII_KEY(GII_KT_RC,(0x140 - 0x130))
#define GIIK_Tool_Pen GII_KEY(GII_KT_RC,(0x140 - 0x130))
#define GIIK_Tool_Rubber GII_KEY(GII_KT_RC,(0x141 - 0x130))
#define GIIK_Tool_Brush GII_KEY(GII_KT_RC,(0x142 - 0x130))
#define GIIK_Tool_Pencil GII_KEY(GII_KT_RC,(0x143 - 0x130))
#define GIIK_Tool_Airbrush GII_KEY(GII_KT_RC,(0x144 - 0x130))
#define GIIK_Tool_Finger GII_KEY(GII_KT_RC,(0x145 - 0x130))
#define GIIK_Tool_Mouse GII_KEY(GII_KT_RC,(0x146 - 0x130))
#define GIIK_Tool_Lens GII_KEY(GII_KT_RC,(0x147 - 0x130))
#define GIIK_Touch GII_KEY(GII_KT_RC,(0x14a - 0x130))
#define GIIK_Stylus GII_KEY(GII_KT_RC,(0x14b - 0x130))
#define GIIK_Stylus2 GII_KEY(GII_KT_RC,(0x14c - 0x130))
#define GIIK_Tool_DoubleTap GII_KEY(GII_KT_RC,(0x14d - 0x130))
#define GIIK_Tool_TripleTap GII_KEY(GII_KT_RC,(0x14e - 0x130))
#define GIIK_Ok GII_KEY(GII_KT_RC,(0x160 - 0x130))
#define GIIK_Goto GII_KEY(GII_KT_RC,(0x162 - 0x130))
#define GIIK_Power2 GII_KEY(GII_KT_RC,(0x164 - 0x130))
#define GIIK_Option GII_KEY(GII_KT_RC,(0x165 - 0x130))
#define GIIK_Info GII_KEY(GII_KT_RC,(0x166 - 0x130))
#define GIIK_Time GII_KEY(GII_KT_RC,(0x167 - 0x130))
#define GIIK_Vendor GII_KEY(GII_KT_RC,(0x168 - 0x130))
#define GIIK_Archive GII_KEY(GII_KT_RC,(0x169 - 0x130))
#define GIIK_Program GII_KEY(GII_KT_RC,(0x16a - 0x130))
#define GIIK_Channel GII_KEY(GII_KT_RC,(0x16b - 0x130))
#define GIIK_Favorites GII_KEY(GII_KT_RC,(0x16c - 0x130))
#define GIIK_Epg GII_KEY(GII_KT_RC,(0x16d - 0x130))
#define GIIK_Pvr GII_KEY(GII_KT_RC,(0x16e - 0x130))
#define GIIK_Mhp GII_KEY(GII_KT_RC,(0x16f - 0x130))
#define GIIK_Language GII_KEY(GII_KT_RC,(0x170 - 0x130))
#define GIIK_Title GII_KEY(GII_KT_RC,(0x171 - 0x130))
#define GIIK_Subtitle GII_KEY(GII_KT_RC,(0x172 - 0x130))
#define GIIK_Angle GII_KEY(GII_KT_RC,(0x173 - 0x130))
#define GIIK_Zoom GII_KEY(GII_KT_RC,(0x174 - 0x130))
#define GIIK_Mode GII_KEY(GII_KT_RC,(0x175 - 0x130))
#define GIIK_Keyboard GII_KEY(GII_KT_RC,(0x176 - 0x130))
#define GIIK_Screen GII_KEY(GII_KT_RC,(0x177 - 0x130))
#define GIIK_Vga GII_KEY(GII_KT_RC,(0x178 - 0x130))
#define GIIK_Tv GII_KEY(GII_KT_RC,(0x179 - 0x130))
#define GIIK_Tv2 GII_KEY(GII_KT_RC,(0x17a - 0x130))
#define GIIK_Vcr GII_KEY(GII_KT_RC,(0x17b - 0x130))
#define GIIK_Vcr2 GII_KEY(GII_KT_RC,(0x17c - 0x130))
#define GIIK_Sat GII_KEY(GII_KT_RC,(0x17d - 0x130))
#define GIIK_Sat2 GII_KEY(GII_KT_RC,(0x17e - 0x130))
#define GIIK_Cd GII_KEY(GII_KT_RC,(0x17f - 0x130))
#define GIIK_Tape GII_KEY(GII_KT_RC,(0x180 - 0x130))
#define GIIK_Radio GII_KEY(GII_KT_RC,(0x181 - 0x130))
#define GIIK_Tuner GII_KEY(GII_KT_RC,(0x182 - 0x130))
#define GIIK_Player GII_KEY(GII_KT_RC,(0x183 - 0x130))
#define GIIK_Text GII_KEY(GII_KT_RC,(0x184 - 0x130))
#define GIIK_Dvd GII_KEY(GII_KT_RC,(0x185 - 0x130))
#define GIIK_Aux GII_KEY(GII_KT_RC,(0x186 - 0x130))
#define GIIK_Mp3 GII_KEY(GII_KT_RC,(0x187 - 0x130))
#define GIIK_Audio GII_KEY(GII_KT_RC,(0x188 - 0x130))
#define GIIK_Video GII_KEY(GII_KT_RC,(0x189 - 0x130))
#define GIIK_Directory GII_KEY(GII_KT_RC,(0x18a - 0x130))
#define GIIK_List GII_KEY(GII_KT_RC,(0x18b - 0x130))
#define GIIK_Memo GII_KEY(GII_KT_RC,(0x18c - 0x130))
#define GIIK_Calendar GII_KEY(GII_KT_RC,(0x18d - 0x130))
#define GIIK_Red GII_KEY(GII_KT_RC,(0x18e - 0x130))
#define GIIK_Green GII_KEY(GII_KT_RC,(0x18f - 0x130))
#define GIIK_Yellow GII_KEY(GII_KT_RC,(0x190 - 0x130))
#define GIIK_Blue GII_KEY(GII_KT_RC,(0x191 - 0x130))
#define GIIK_ChannelUp GII_KEY(GII_KT_RC,(0x192 - 0x130))
#define GIIK_ChannelDown GII_KEY(GII_KT_RC,(0x193 - 0x130))
#define GIIK_First GII_KEY(GII_KT_RC,(0x194 - 0x130))
#define GIIK_Last GII_KEY(GII_KT_RC,(0x195 - 0x130))
#define GIIK_Ab GII_KEY(GII_KT_RC,(0x196 - 0x130))
#define GIIK_Restart GII_KEY(GII_KT_RC,(0x198 - 0x130))
#define GIIK_Slow GII_KEY(GII_KT_RC,(0x199 - 0x130))
#define GIIK_Shuffle GII_KEY(GII_KT_RC,(0x19a - 0x130))
#define GIIK_Previous GII_KEY(GII_KT_RC,(0x19c - 0x130))
#define GIIK_Digits GII_KEY(GII_KT_RC,(0x19d - 0x130))
#define GIIK_Teen GII_KEY(GII_KT_RC,(0x19e - 0x130))
#define GIIK_Twen GII_KEY(GII_KT_RC,(0x19f - 0x130))
#define GIIK_Mute GII_KEY(GII_KT_RC,113)
#define GIIK_VolumeDown GII_KEY(GII_KT_RC,114)
#define GIIK_VolumeUp GII_KEY(GII_KT_RC,115)
#define GIIK_Power GII_KEY(GII_KT_RC,116)
#define GIIK_Again GII_KEY(GII_KT_RC,129)
#define GIIK_Props GII_KEY(GII_KT_RC,130)
#define GIIK_Front GII_KEY(GII_KT_RC,132)
#define GIIK_Copy GII_KEY(GII_KT_RC,133)
#define GIIK_Open GII_KEY(GII_KT_RC,134)
#define GIIK_Paste GII_KEY(GII_KT_RC,135)
#define GIIK_Cut GII_KEY(GII_KT_RC,137)
#define GIIK_Calc GII_KEY(GII_KT_RC,140)
#define GIIK_Setup GII_KEY(GII_KT_RC,141)
#define GIIK_Sleep GII_KEY(GII_KT_RC,142)
#define GIIK_Wakeup GII_KEY(GII_KT_RC,143)
#define GIIK_File GII_KEY(GII_KT_RC,144)
#define GIIK_SendFile GII_KEY(GII_KT_RC,145)
#define GIIK_DeleteFile GII_KEY(GII_KT_RC,146)
#define GIIK_Xfer GII_KEY(GII_KT_RC,147)
#define GIIK_Prog1 GII_KEY(GII_KT_RC,148)
#define GIIK_Prog2 GII_KEY(GII_KT_RC,149)
#define GIIK_Www GII_KEY(GII_KT_RC,150)
#define GIIK_Msdos GII_KEY(GII_KT_RC,151)
#define GIIK_Coffee GII_KEY(GII_KT_RC,152)
#define GIIK_Direction GII_KEY(GII_KT_RC,153)
#define GIIK_CycleWindows GII_KEY(GII_KT_RC,154)
#define GIIK_Mail GII_KEY(GII_KT_RC,155)
#define GIIK_Bookmarks GII_KEY(GII_KT_RC,156)
#define GIIK_Computer GII_KEY(GII_KT_RC,157)
#define GIIK_Back GII_KEY(GII_KT_RC,158)
#define GIIK_Forward GII_KEY(GII_KT_RC,159)
#define GIIK_CloseCd GII_KEY(GII_KT_RC,160)
#define GIIK_EjectCd GII_KEY(GII_KT_RC,161)
#define GIIK_EjectCloseCd GII_KEY(GII_KT_RC,162)
#define GIIK_NextSong GII_KEY(GII_KT_RC,163)
#define GIIK_PlayPause GII_KEY(GII_KT_RC,164)
#define GIIK_PreviousSong GII_KEY(GII_KT_RC,165)
#define GIIK_StopCd GII_KEY(GII_KT_RC,166)
#define GIIK_Record GII_KEY(GII_KT_RC,167)
#define GIIK_Rewind GII_KEY(GII_KT_RC,168)
#define GIIK_Phone GII_KEY(GII_KT_RC,169)
#define GIIK_Iso GII_KEY(GII_KT_RC,170)
#define GIIK_Config GII_KEY(GII_KT_RC,171)
#define GIIK_Homepage GII_KEY(GII_KT_RC,172)
#define GIIK_Refresh GII_KEY(GII_KT_RC,173)
#define GIIK_Exit GII_KEY(GII_KT_RC,174)
#define GIIK_Move GII_KEY(GII_KT_RC,175)
#define GIIK_Edit GII_KEY(GII_KT_RC,176)
#define GIIK_ScrollUp GII_KEY(GII_KT_RC,177)
#define GIIK_ScrollDown GII_KEY(GII_KT_RC,178)
#define GIIK_PlayCd GII_KEY(GII_KT_RC,200)
#define GIIK_PauseCd GII_KEY(GII_KT_RC,201)
#define GIIK_Prog3 GII_KEY(GII_KT_RC,202)
#define GIIK_Prog4 GII_KEY(GII_KT_RC,203)
#define GIIK_Suspend GII_KEY(GII_KT_RC,205)
#define GIIK_Close GII_KEY(GII_KT_RC,206)
#define GIIK_Play GII_KEY(GII_KT_RC,207)
#define GIIK_FastForward GII_KEY(GII_KT_RC,208)
#define GIIK_BassBoost GII_KEY(GII_KT_RC,209)
#define GIIK_Print GII_KEY(GII_KT_RC,210)
#define GIIK_Hp GII_KEY(GII_KT_RC,211)
#define GIIK_Camera GII_KEY(GII_KT_RC,212)
#define GIIK_Sound GII_KEY(GII_KT_RC,213)
#define GIIK_Question GII_KEY(GII_KT_RC,214)
#define GIIK_Email GII_KEY(GII_KT_RC,215)
#define GIIK_Chat GII_KEY(GII_KT_RC,216)
#define GIIK_Search GII_KEY(GII_KT_RC,217)
#define GIIK_Connect GII_KEY(GII_KT_RC,218)
#define GIIK_Finance GII_KEY(GII_KT_RC,219)
#define GIIK_Sport GII_KEY(GII_KT_RC,220)
#define GIIK_Shop GII_KEY(GII_KT_RC,221)
#define GIIK_Alterase GII_KEY(GII_KT_RC,222)
#define GIIK_BrightnessDown GII_KEY(GII_KT_RC,224)
#define GIIK_BrightnessUp GII_KEY(GII_KT_RC,225)
#define GIIK_Media GII_KEY(GII_KT_RC,226)
/* modifier keys */ /* modifier keys */
#define GIIK_Shift GII_KEY(GII_KT_MOD, GII_KM_SHIFT) #define GIIK_Shift GII_KEY(GII_KT_MOD, GII_KM_SHIFT)
#define GIIK_Ctrl GII_KEY(GII_KT_MOD, GII_KM_CTRL) #define GIIK_Ctrl GII_KEY(GII_KT_MOD, GII_KM_CTRL)
#define GIIK_Alt GII_KEY(GII_KT_MOD, GII_KM_ALT) #define GIIK_Alt GII_KEY(GII_KT_MOD, GII_KM_ALT)
#define GIIK_Meta GII_KEY(GII_KT_MOD, GII_KM_META) #define GIIK_Meta GII_KEY(GII_KT_MOD, GII_KM_META)
#define GIIK_Super GII_KEY(GII_KT_MOD, GII_KM_SUPER) #define GIIK_Super GII_KEY(GII_KT_MOD, GII_KM_SUPER)
#define GIIK_Hyper GII_KEY(GII_KT_MOD, GII_KM_HYPER) #define GIIK_Hyper GII_KEY(GII_KT_MOD, GII_KM_HYPER)
#define GIIK_AltGr GII_KEY(GII_KT_MOD, GII_KM_ALTGR) #define GIIK_AltGr GII_KEY(GII_KT_MOD, GII_KM_ALTGR)
#define GIIK_Caps GII_KEY(GII_KT_MOD, GII_KM_CAPS) #define GIIK_Caps GII_KEY(GII_KT_MOD, GII_KM_CAPS)
 End of changes. 3 change blocks. 
1 lines changed or deleted 173 lines changed or added


 lin_kbd.h   lin_kbd.h 
/* $Id: lin_kbd.h,v 1.1 1999/01/24 03:20:54 marcus Exp $ /* $Id: lin_kbd.h,v 1.1.1.1 2001/05/12 23:00:14 cegger Exp $
*************************************************************************** *** *************************************************************************** ***
Linux-kbd inputlib - use the Linux console in mediumraw mode for key inp ut Linux-kbd inputlib - use the Linux console in mediumraw mode for key inp ut
Copyright (C) 1999 Marcus Sundberg [marcus@ggi-project.org] Copyright (C) 1999 Marcus Sundberg [marcus@ggi-project.org]
Permission is hereby granted, free of charge, to any person obtaining a Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software" ), copy of this software and associated documentation files (the "Software" ),
to deal in the Software without restriction, including without limitatio n to deal in the Software without restriction, including without limitatio n
the rights to use, copy, modify, merge, publish, distribute, sublicense, the rights to use, copy, modify, merge, publish, distribute, sublicense,
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 system.h   system.h 
/* $Id: system.h.in,v 1.2 1998/12/12 21:32:26 marcus Exp $ /* $Id: system.h.in,v 1.13 2004/03/29 11:57:03 pekberg Exp $
*************************************************************************** *** *************************************************************************** ***
GGI - Architecture specific things (autogenerated by configure) GGI - Architecture specific things (autogenerated by configure)
*************************************************************************** *** *************************************************************************** ***
*/ */
#ifndef _GGI_SYSTEM_H #ifndef _GGI_SYSTEM_H
#define _GGI_SYSTEM_H #define _GGI_SYSTEM_H
#include <stdlib.h>
#include <sys/time.h> #include <sys/time.h>
#include <unistd.h>
#ifndef __BEGIN_DECLS
# ifdef __cplusplus
# define __BEGIN_DECLS extern "C" {
# define __END_DECLS }
# else
# define __BEGIN_DECLS /* empty */
# define __END_DECLS /* empty */
# endif
#endif
#ifdef __CYGWIN32__
# ifndef __CYGWIN__
# define __CYGWIN__ 1
# endif
#endif
#ifndef __WIN32__
# if defined(__CYGWIN__) || \
defined(__MINGW32__) || \
defined(__MINGW__) || \
defined(_WIN32)
# define __WIN32__
# endif
#endif /* ! __WIN32__ */
/* EXPORTVAR and IMPORTVAR are supposed to be used in
* declarations of exported and imported variables
* respectively.
*/
#ifdef __WIN32__
# define EXPORTVAR extern __declspec(dllexport)
# define IMPORTVAR extern __declspec(dllimport)
# define EXPORTFUNC __declspec(dllexport)
# define IMPORTFUNC extern __declspec(dllimport)
#else
# define EXPORTVAR extern
# define IMPORTVAR extern
# define EXPORTFUNC /* empty */
# define IMPORTFUNC extern
#endif
typedef signed char sint8; typedef signed char sint8;
typedef unsigned char uint8; typedef unsigned char uint8;
typedef signed short sint16; typedef signed short sint16;
typedef unsigned short uint16; typedef unsigned short uint16;
typedef signed int sint32; typedef signed int sint32;
typedef unsigned int uint32; typedef unsigned int uint32;
typedef signed int ggi_sint; typedef signed int ggi_sint;
typedef unsigned int ggi_uint; typedef unsigned int ggi_uint;
typedef signed int gg_sint;
typedef unsigned int gg_uint;
#define GG_HAVE_INT64
#ifdef GG_HAVE_INT64
typedef signed long long sint64;
typedef unsigned long long uint64;
#endif
#define GGI_LITTLE_ENDIAN 1 #define GGI_LITTLE_ENDIAN 1
#define ggUSleep(val) usleep((unsigned int)(val)) #ifdef GGI_LITTLE_ENDIAN
#define GG_LITTLE_ENDIAN
#endif
#ifdef GGI_BIG_ENDIAN
#define GG_BIG_ENDIAN
#endif
/* TODO: what about PDP endian? */
#endif /* _GGI_SYSTEM_H */ #endif /* _GGI_SYSTEM_H */
 End of changes. 5 change blocks. 
3 lines changed or deleted 62 lines changed or added


 xwin.h   xwin.h 
/* $Id: xwin.h,v 1.4 1999/02/11 00:35:18 marcus Exp $ /* $Id: xwin.h,v 1.2 2004/04/05 23:11:33 ggibecka Exp $
*************************************************************************** *** *************************************************************************** ***
Xwin inputlib - use an existing X window as a LibGII input source Xwin inputlib - use an existing X window as a LibGII input source
Copyright (C) 1998 Marcus Sundberg [marcus@ggi-project.org] Copyright (C) 1998 Marcus Sundberg [marcus@ggi-project.org]
Permission is hereby granted, free of charge, to any person obtaining a Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software" ), copy of this software and associated documentation files (the "Software" ),
to deal in the Software without restriction, including without limitatio n to deal in the Software without restriction, including without limitatio n
the rights to use, copy, modify, merge, publish, distribute, sublicense, the rights to use, copy, modify, merge, publish, distribute, sublicense,
skipping to change at line 35 skipping to change at line 35
*************************************************************************** *** *************************************************************************** ***
*/ */
#ifndef _GGI_INPUT_XWIN_H #ifndef _GGI_INPUT_XWIN_H
#define _GGI_INPUT_XWIN_H #define _GGI_INPUT_XWIN_H
#include <X11/Xlib.h> #include <X11/Xlib.h>
/* Returns non-zero if we should queue the expose event */ /* Returns non-zero if we should queue the expose event */
typedef int (gii_inputxwin_exposefunc)(void *arg, int x, int y, int w, int h); typedef int (gii_inputxwin_exposefunc)(void *arg, int x, int y, int w, int h);
typedef int (gii_inputxwin_resizefunc)(void *arg, int w, int h, gii_event * ev);
typedef struct { typedef struct {
Display *disp; /* Display to use */ Display *disp; /* Display to use */
Window win; /* Window to use */ Window win; /* Window to use */
int ptralwaysrel; /* Pointer events are always relative */ int ptralwaysrel; /* Pointer events are always relative */
int wait; /* Wait for SETPARAM event before being int wait; /* Wait for SETPARAM event before being
usable */ usable */
gii_inputxwin_exposefunc *exposefunc; /* If this is non-null we call gii_inputxwin_exposefunc *exposefunc; /* If this is non-null we call
the specified function to see if we shoul d the specified function to see if we shoul d
send the expose event or not */ send the expose event or not */
void *exposearg; /* This is the argument we pass to exposefun c*/ void *exposearg; /* This is the argument we pass to exposefun c*/
void *gglock; /* If this is non-null we use it to ggLock() void *gglock; /* If this is non-null we use it to ggLock()
in the polling function */ in the polling function */
gii_inputxwin_resizefunc *resizefunc; /* If this is non-null we call
the specified function to fill in a suita
ble
event to send due to the resize if it ret
urns
0. If it returns non-0, we don't queue an
y
event. */
void *resizearg; /* This is the argument we pass to resizefun
c*/
} gii_inputxwin_arg; } gii_inputxwin_arg;
/* Send this event to change parameters on the fly */ /* Send this event to change parameters on the fly */
#define GII_CMDCODE_XWINSETPARAM (0x01 | GII_CMDFLAG_PRIVATE) #define GII_CMDCODE_XWINSETPARAM (0x01 | GII_CMDFLAG_PRIVATE)
typedef struct { typedef struct {
Window win; Window win;
int ptralwaysrel; int ptralwaysrel;
Window parentwin;
} gii_xwin_cmddata_setparam; } gii_xwin_cmddata_setparam;
#endif /* _GGI_INPUT_XWIN_H */ #endif /* _GGI_INPUT_XWIN_H */
 End of changes. 4 change blocks. 
1 lines changed or deleted 13 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/