QGenericPlugin Class

The QGenericPlugin class is an abstract base class for plugins. More...

Header: #include <QGenericPlugin>
qmake: QT += gui
Inherits: QObject

Public Functions

QGenericPlugin(QObject *parent = Q_NULLPTR)
~QGenericPlugin()
virtual QObject *create(const QString &key, const QString &specification) = 0
  • 31 public functions inherited from QObject

Additional Inherited Members

  • 1 property inherited from QObject
  • 1 public slot inherited from QObject
  • 2 signals inherited from QObject
  • 11 static public members inherited from QObject
  • 9 protected functions inherited from QObject

Detailed Description

The QGenericPlugin class is an abstract base class for plugins.

A mouse plugin can be created by subclassing QGenericPlugin and reimplementing the pure virtual create() function. By exporting the derived class using the Q_PLUGIN_METADATA() macro, The default implementation of the QGenericPluginFactory class will automatically detect the plugin and load the driver into the server application at run-time. See How to Create Qt Plugins for details.

The json metadata file should contain a list of keys supported by this plugin.

See also QGenericPluginFactory.

Member Function Documentation

QGenericPlugin::QGenericPlugin(QObject *parent = Q_NULLPTR)

Constructs a plugin with the given parent.

Note that this constructor is invoked automatically by the moc generated code that exports the plugin, so there is no need for calling it explicitly.

QGenericPlugin::~QGenericPlugin()

Destroys the plugin.

Note that Qt destroys a plugin automatically when it is no longer used, so there is no need for calling the destructor explicitly.

[pure virtual] QObject *QGenericPlugin::create(const QString &key, const QString &specification)

Implement this function to create a driver matching the type specified by the given key and specification parameters. Note that keys are case-insensitive.

© 2017 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.