GLib Reference Manual
Table of Contents
GLib Fundamentals
Basic Types
— standard GLib types, defined for ease-of-use and portability.
Limits of Basic Types
— portable method of determining the limits of the standard types.
Standard Macros
— commonly-used macros.
Type Conversion Macros
— a portable method for storing
gint
&
guint
values in
gpointer
variables.
Byte Order Macros
— a portable way to convert between different byte orders.
Miscellaneous Macros
— specialised macros which are not used often.
GLib Core Application Support
The Main Event Loop
— manages all available sources of events.
Threads
— thread abstraction; including mutexes, conditions and thread private data.
Dynamic Loading of Modules
— portable method for dynamically loading 'plug-ins'.
Memory Allocation
— general memory-handling.
IO Channels
— portable support for using files, pipes and sockets.
Message Output and Debugging Functions
— functions to output messages and help debug applications.
Message Logging
— versatile support for logging messages with different levels of importance.
GLib Utilities
String Utility Functions
— various string-related functions.
Date and Time Functions
— calendrical calculations and miscellaneous time stuff.
Hook Functions
— support for manipulating lists of hook functions.
Miscellaneous Utility Functions
— a selection of portable utility functions.
Lexical Scanner
— a general purpose lexical scanner.
Automatic String Completion
— support for automatic completion using a group of target strings.
Timers
— functions to time operations.
Windows Compatability Functions
— functions to support portability to the Windows environment.
GLib Data Types
Memory Chunks
— efficient way to allocate groups of equal-sized chunks of memory.
Doubly-Linked Lists
— linked lists containing integer values or pointers to data, with the ability to iterate over the list in both directions.
Singly-Linked Lists
— linked lists containing integer values or pointers to data, limited to iterating over the list in one direction.
Hash Tables
— associations between keys and values so that given a key the value can be found quickly.
Strings
— text buffers which grow automatically as text is added.
String Chunks
— efficient storage of groups of strings.
Arrays
— arrays of arbitrary elements which grow automatically as elements are added.
Pointer Arrays
— arrays of pointers to any type of data, which grow automatically as new elements are added.
Byte Arrays
— arrays of bytes, which grow automatically as elements are added.
Balanced Binary Trees
— a sorted collection of key/value pairs optimised for searching and traversing in order.
N-ary Trees
— trees of data with any number of branches.
Quarks
— a 2-way association between a string and a unique integer identifier.
Keyed Data Lists
— lists of data elements which are accessible by a string or
GQuark
identifier.
Datasets
— associate groups of data elements with particular memory locations.
Relations and Tuples
— tables of data which can be indexed on any number of fields.
Caches
— allows sharing of complex data structures to save resources.
Memory Allocators
— allocates chunks of memory for
GList
,
GSList
and
GNode
.
Next Page >>>
GLib Fundamentals