Module module

Source
Expand description

The definition of the openmpt_module wrapper, analogous to the module class in the C++ API.

This contains everything needed to create instances Modules using module files or data. The rest is defined in the various submodules.

§Thread-safety

This wrapper is written on top of the C API, which the openmpt developpers reccomand against attempting to access concurrently, unlike with the C++ API where const member functions are safe. This is because, while the C and C++ public APIs use the same underlying C++ functions, the C API tends to mutate the underlying object to store anything that cannot be returned immediately, such as exceptions.

Because of that, all methods for Module have been marked as requiring a mutable reference to self, in order to ensure that no concurrent access to the underlying object can ever be made.

Modules§

ctls
Definitions for all types and methods used to set and query libopenmpt parameters for the loaded module
current
Definitions for all methods used to set and query the current state of the module
iteration
Definitions for all types and methods used to iterate on the module’s pattern data
metadata
Definitions for all types and methods used query module metadata
render
Definitions for all methods related to module mixing and rendering only.
stream
Generic traits used to provide callbacks for Module::create().

Structs§

Module

Enums§

CouldOpenEffort
An enum containing the key effort values for could_open_propability
Logger

Functions§

could_open_propability
Roughly scan the input stream to find out whether libopenmpt might be able to open it.