Cerberus X Documentation

Basic Modules

All the functionality Cerberus X has to offer comes in the form of modules, which are basically Cerberus source files that provide ready to use classes and functions for special use cases. You will find modules for graphics, sound and user input as well as for mathematics, random numbers or several data container classes like linked lists, stacks, maps, sets and deques.

To be able use one of the modules we are talking about in this chapter of the documentation, you simply type the Import command followed by the module name at the top of your source file.

Overview of the Modules - What is used for what purpose

These are the modules Cerberus X is shipped with.

The Mojo framework

Module nameFunctionalitySupported Target Platforms
mojo.appThe base App class and functions for controlling app behaviorAndroid, iOS, Win8, Glfw, Html5, Flash
mojo.graphics2D rendering functions and the Image classAndroid, iOS, Win8, Glfw, Html5, Flash
mojo.audioSound and music playback functionsAndroid, iOS, Win8, Glfw, Html5, Flash
mojo.inputUser input functionsAndroid, iOS, Win8, Glfw, Html5, Flash
mojo.asyncloadersFunctions for loading images and sounds asynchronouslyAndroid, iOS, Win8, Glfw, Html5, Flash
mojo2Advanced 2D rendering APIGlfw, iOS, Android, Html5

Data I/O and filesystem

Module nameFunctionalitySupported Target Platforms
brl.filestreamThe FileStream class for reading and writing filesAndroid, iOS, Win8, Glfw, Stdcpp
brl.filesystemFunctions for examining and modifying the filesystemAndroid, iOS, Win8, Glfw, Stdcpp
brl.databufferThe DataBuffer class for managing binary dataAll
brl.datastreamThe DataStream class for reading and writing databuffersAll
brl.processThe Process class for executing processesGlfw, Stdcpp
brl.requestersSimple GUI requestersGlfw (Windows and MacOS only)

Networking

Module nameFunctionalitySupported Target Platforms
brl.urlThe Url class for manipulating urlsAll
brl.socketThe Socket class for low level socket accessAndroid, iOS, Win8, Glfw, Stdcpp
brl.httprequestThe HttpRequest class for making http requestsAndroid, iOS, Win8, Glfw, Stdcpp
brl.tcpstreamThe TcpStream class for synchronous tcp I/OAndroid, iOS, Win8, Glfw, Stdcpp

Math and Numeric

Module nameFunctionalitySupported Target Platforms
cerberus.mathMath functionsAll
cerberus.randomFunctions for generating random numbersAll
cerberus.interpolateFunctions for interpolating between valuesAll

Text and Strings

Module nameFunctionalitySupported Target Platforms
brl.jsonThe JsonObject class for using JSON dataAll
brl.markdownThe Markdown class for generating html from simple markdownAll
brl.filepathFunctions for manipulating file pathsAll

Collections

Module nameFunctionalitySupported Target Platforms
cerberus.listThe List class for managing linked listsAll
cerberus.stackThe Stack class for managing stacks and dynamic arraysAll
cerberus.mapThe Map class for managing associative mapsAll
cerberus.setThe Set class for managing setsAll
cerberus.dequeThe Deque class for managing queuesAll
brl.poolThe Pool class for managing preallocated objectsAll

Language

Module nameFunctionalitySupported Target Platforms
cerberus.langBuilt in functions and classes including String, Array, Object and ThrowableAll
reflectionFunctions and classes for language reflectionAll

Online sevices

Module nameFunctionalitySupported Target Platforms
brl.admobThe Admob class for using Google's admob serviceAndroid, iOS
brl.cerberusstoreThe CerberusStore class for making in-app purchasesAndroid, iOS
brl.gamecenterThe GameCenter class for using Apple's Game Center serviceiOS

Miscellaneous

Module nameFunctionalitySupported Target Platforms
opengl.gles11A wrapper module for the OpenGL ES 1.1 APIAndroid, iOS, Glfw
opengl.gles20A wrapper module for the OpenGL ES 2.0 APIAndroid, iOS, Glfw, Html5