Difference between revisions of "SCI/FreeSCI/Header files/Core headers"

From ScummVM :: Wiki
Jump to navigation Jump to search
(Merging of the FreeSCI documentation. Page done.)
(No difference)

Revision as of 14:37, 20 January 2009

Core headers

The following headers provide what should be considered core functionality:

scitypes.h
This file, included from resource.h, provides some of the basic types used in FreeSCI, including some of the types used for specific functions, but also the gu?int(8|16|32) types, which provide (unsigned) types for 8, 16, and 32 bits.
resource.h
The main OS abstraction header file; includes scitypes.h and provides functions for the following: Queues, memory checks, time inspection, directory traversion, case-insensitive file opening, the 'sciprintf()' function, which is the primary output function in FreeSCI, functions to retreive the user's home directory and the cwd, to create a complete path in the file system, yield to the scheduler (where possible) or trigger a breakpoint.
sci_conf.h
In here, the configuration options (as parsed from the ~/.freesci/config file) are listed in a structure; includes function definitions for handling configuration.
versions.h
Lists certain SCI versions and functions/macros to examine these versions. Some kernel functions have bugs or changed their behaviour in some versions of SCI; these version numbers should be listed in this file.
sciresource.h
Provides definitions, strings, and functions for SCI resource management, including the resource manager function prototypes.
sci_memory.h
Prototypes for the sci_alloc(), sci_free() etc. functions for memory management, plus the debug switches available for them.
console.h
Prototypes for the SCI console, including functions to hook up SCI console functions and variables.
sbtree.h
This header file is only used by the gfx subsystem right now. It provides statically generated binary trees.