ScummVM API documentation
Common API

Description

Common classes, functions, and structures.

Modules

 Lua
 Functions for the Lua programming language. See Lua.org.
 
 Algorithms
 Templates for algorithms used to manipulate data.
 
 Archive
 The Archive module allows for managing the members of arbitrary containers in a uniform fashion. It also supports looking up by names and file names, opening a file, and returning a usable input stream.
 
 Arrays
 Functions for replacing std arrays.
 
 Base64 encoding & decoding.
 API for encoding and decoding Base64 strings.
 
 Bit stream
 API for implementing a bit stream.
 
 Buffered stream
 API for implementing a buffered stream.
 
 Callbacks
 Callback class templates.
 
 Data compression library
 PKWARE data compression library (DCL).
 
 deflate
 API for deflate based operations.
 
 Huffman bit stream decoding
 API for operations related to Huffman bit stream decoding.
 
 InstallShield
 API for managing the InstallShield.
 
 StuffIt decompressor
 API related to StuffIt archive files.
 
 ARJ decompressor
 API related to ARJ archive files.
 
 ZIP decompressor
 API related to ZIP archive files.
 
 Configuration manager
 The (singleton) configuration manager, used to query and set configuration values using string keys.
 
 Coroutine support for simulating multi-threading
 The following implementation is loosely based on an article by Simon Tatham: Coroutines in C. However, many improvements and tweaks have been made, in particular by taking advantage of C++ features not available in C.
 
 Debug channels
 Functions for managing debug channels.
 
 Debug functions
 Functions for printing debug messages.
 
 Dialog Manager
 The Dialog Manager allows GUI code to interact with native system dialogs.
 
 Endian conversions
 Functions and macros for endian conversions and byteswap conversions.
 
 Error codes
 Commonly used error codes.
 
 Events
 The types of events backends may generate.
 
 Files
 API for operations on files.
 
 Interchange File Format (IFF)
 API for operations on IFF container files.
 
 INI files
 API for operations on INI configuration files.
 
 Quicktime file parser
 Parser for QuickTime/MPEG-4 files.
 
 Windows resources
 API for managing Windows resources.
 
 XML parser
 The XML parser allows for parsing XML-like files.
 
 Fixed-point fractions
 API for fixed-point fractions.
 
 File system
 API for operations on the file system.
 
 Functions
 API for managing functions.
 
 GUI options
 API for managing the options of the graphical user interface (GUI).
 
 Hash table (HashMap)
 API for operations on a hash table.
 
 Keyboard
 API for keyboard operations.
 
 Language
 API for managing game language.
 
 Lists
 API for managing doubly linked lists.
 
 Localization
 Functions for managing localized elements of the GUI.
 
 Macintosh resource fork manager
 API for Macintosh resource fork manager.
 
 MD5 checksum
 API for computing the MD5 checksum.
 
 Memory
 Functions for managing the memory.
 
 Mutex
 API for managing the mutex.
 
 NonCopyable class
 API for NonCopyable class.
 
 OSD message queue
 API for managing the queue of On Screen Display (OSD) messages.
 
 Path
 API for working with paths.
 
 Game platforms
 API for managing game platforms.
 
 Pointers
 API and templates for pointers.
 
 Queue
 API and templates for queues.
 
 RNG
 Random number generator (RNG) implementation.
 
 Rational class
 API for rational class.
 
 Red-black tree
 API for operating on a red black tree.
 
 Rectangular zones
 API for operations on rectangular zones.
 
 Render modes
 API for render modes.
 
 Rotation modes
 API for rotation modes.
 
 Safe Boolean
 Template for a SafeBool function.
 
 Save files
 API for managing save files.
 
 Serializer
 API for serializing data.
 
 Singleton
 API for managing singletons.
 
 stable map
 API for operating on a key value map.
 
 Stack
 Fixed-size stack implementation.
 
 Strings
 API for working with strings.
 
 Streams
 API for managing readable and writable data streams.
 
 OSystem
 API related to OSystem - the main interface for ScummVM backends.
 
 Text-to-speech Manager
 The TTS module allows for speech synthesis.
 
 Text console
 Output formatter, typically used for debugging.
 
 Timer
 API for managing the timer.
 
 String tokenizer
 String tokenizer for creating tokens out of parts of a string.
 
 Message translation manager
 API related to translation.
 
 UTF-32 strings
 API for working with UTF-32 strings.
 
 Util
 Various utility functions.
 
 Achievements
 API related to in-game achievements.