The API reference documents every class and objects of the library. This is probably the only documentation you will need once you are familiar with the library concepts exposed in the manual pages.

Refer to the API reference manual page for a complete overview of the API.

Class documentation

Class documentation page (eg. FileDriver) all follow the same structure:

  • A short description of the class and its use.
  • Key informations on the class such as its inheritance tree and the other classes it interacts closely with.
  • A list of the class enumerations.
  • A list of the class variables (including static ones).
  • An index of all member functions. Note: Inherited functions are not listed in derived classes.
  • A list of the global functions that make use of this class.
  • The member function documentation.

API structure

The same API is available in all supported scripting language, it closely models the underlying C++ API.

The API is composed of the following types:


A class holds data and methods (the name for a class function) to act on that data.

# A Python class
class Time:
 def __init__(self):
  self.sec = 0

 def get_sec(self):
  return self.sec


A function takes input parameters and output the result of a transformation it applies to them.

# A Python function
def multiply_by_two(v):
 return v * 2


An enumeration names a set of related values.

// A C++ enumeration
enum Mode
 Read = 0,
 Write = 1


A list contains zero, one or many objects of a given type. The API functions only expect and return lists containing objects of the same type.

Lists display the type they contain in brackets: Node as returned by GetNodes is a list of Node.

Using the script reference

Locating a symbol

Symbols that are defined globally are listed in the Class index, Global function index and Global enumeration index pages.

Symbols that are defined in a class (symbols that are only used in the context of a class will often be) are listed in their respective class documentation.