IPlugin Class

class ExtensionSystem::IPlugin

The IPlugin class is an abstract base class that must be implemented once for each plugin. More...

Header: #include <extensionsystem/iplugin.h>
Inherits: QObject

Public Types

enum ShutdownFlag { SynchronousShutdown, AsynchronousShutdown }

Detailed Description

A plugin needs to provide meta data in addition to the actual plugin library, so the plugin manager can find the plugin, resolve its dependencies, and load it. For more information, see Plugin Meta Data.

Plugins must provide one implementation of the IPlugin class, located in a library that matches the name attribute given in their meta data. The IPlugin implementation must be exported and made known to Qt's plugin system, using the Q_PLUGIN_METADATA macro with an IID set to "org.qt-project.Qt.QtCreatorPlugin".

For more information, see Plugin Life Cycle.

Member Type Documentation

enum IPlugin::ShutdownFlag

This enum type holds whether the plugin is shut down synchronously or asynchronously.

ConstantValueDescription
ExtensionSystem::IPlugin::SynchronousShutdown0The plugin is shut down synchronously.
ExtensionSystem::IPlugin::AsynchronousShutdown1The plugin needs to perform asynchronous actions before it shuts down.