This chapter aims to give you a brief overview of the internal principles. Even though lovm2 is designed to be as simple as possible, it is still quite important to grasp the implementation concepts behind it.

The general steps of producing a runnable program are roughly:

  • Create a new LV2ModuleBuilder and populate it with LV2Function
  • Call constructing a runnable LV2Module from the current state
  • Load the module into an instance of a virtual machine LV2Vm using add_main_module()
  • Start the program by calling run on the virtual machine