PluginManager

class PluginManager : public QObject

Public Types

using PluginPtr = std::unique_ptr<CutterPlugin, PluginTerminator>

Public Functions

PluginManager()
~PluginManager()
void loadPlugins(bool enablePlugins = true)

Load all plugins, should be called once on application start.

Parameters:

enablePlugins – set to false if plugin code shouldn’t be started

void destroyPlugins()

Destroy all loaded plugins, should be called once on application shutdown.

inline const std::vector<PluginPtr> &getPlugins()
QVector<QDir> getPluginDirectories() const
QString getUserPluginsDirectory() const

Public Static Functions

static PluginManager *getInstance()
class PluginTerminator

Public Functions

void operator()(CutterPlugin*) const