ggiInit
Section: GGI (3)
Updated: 2006-12-30
Page Index
NAME
ggiInit,
ggiExit : Initialize and uninitialize LibGGI
SYNOPSIS
#include <ggi/ggi.h>
int ggiInit(void);
int ggiExit(void);
DESCRIPTION
ggiInit initializes the library. This function must be called before
using other LibGGI functions; otherwise the results will be undefined.
ggiExit uninitializes the library (after being initialized by
ggiInit) and automatically cleans up if necessary. This should be
called after an application finished using the library. If any GGI
functions are called after the library has been uninitialized, the
results will be undefined.
ggiInit allows multiple invocations. A reference count is
maintained, and to completely uninitialize the library, ggiExit must
be called as many times as ggiInit has been called beforehand.
RETURN VALUE
ggiInit returns
0 for OK, otherwise a
ggi-error(3) code.
ggiExit returns:
- 0
-
after successfully cleaning up,
- >0
-
the number of 'open' ggiInit calls, if there has been more than
one call to ggiInit. As ggiInit and ggiExit must be used in
properly nested pairs, e.g. the first ggiExit after two
ggiInit's will return 1.
- <0
-
ggi-error(3), especially if more ggiExit calls have been done than
ggiInit calls.
EXAMPLES
Initialize and uninitialize LibGGI:
if (ggiInit() < 0) {
fprintf(stderr, "Cannot initialize LibGGI!\n");
exit(1);
}
/* Do some LibGGI stuff */
ggiExit();
SEE ALSO
ggiOpen(3)