Plugin Structure
All plugins must contain a manifest file named plugin.ini at their root that describes the plugin:
[plugin]
name = My Plugin
publisher = My Company
version = 0.0.1
[build]
input = ./src
output = ./my_plugin_v{version}.otp
[install]
class = MyPlugin
The
pluginsection provides the information displayed the OnTakt interface when managing the plugin.- The
buildsection controls how the compiler will package the plugin: input: all.pyfiles in this directory will be compiled and bundledoutput: the filename of the output bundle.{version}will be automatically replaced by the version specified in thepluginsection. This should be unique, as it will become the internal ID of the plugin during installation.
- The
The
installsection controls how OnTakt will load the plugin. It will look in the__init__.pyfile at the root of the package for a class named with the value ofclass. This class must extendOTPluginas described below.
All plugins must contain a main class that extends the OTPlugin class. This inherits the following members:
These are hooks than can be used to handle events in the plugin lifecycle: