Here is a list of the documentation for the different modules:

Information before you start

Modules interface and config

Modules also have an interface related to them, the Modules interface. It controls the modules and their settings. There are 2 functions under it:

  1. data
  2. save - Saves the module settings to Config/Core/Modules.yaml
  3. get - Returns a reference to the backend class

The data returns a reference of type ModuleSettings that looks like this:

struct ModuleSettings
{
    size_t maxTransactions = 100;
};

Every module entry contains information on how to use the different data presented here.

Checking if a module is enabled at runtime

Especially on Unix based systems, it often happens that the framework is packaged globally, this means, however, that you need to check for modules at run time, since they will all be enabled at compile time. To do this, use the static member variables of the Module interface. They map exactly 1:1 with the module names defined in uvproj.yaml file.