PluginDependency Struct

struct ExtensionSystem::PluginDependency

The PluginDependency class contains the name and required compatible version number of a plugin's dependency. More...

Header: #include <extensionsystem/pluginspec.h>

Public Types

enum Type { Required, Optional, Test }

Public Variables

QString name
ExtensionSystem::PluginDependency::Type type
QString version

Detailed Description

This reflects the data of a dependency object in the plugin's meta data. The name and version are used to resolve the dependency. That is, a plugin with the given name and plugin compatibility version <= dependency version <= plugin version is searched for.

See also ExtensionSystem::IPlugin for more information about plugin dependencies and version matching.

Member Type Documentation

enum PluginDependency::Type

Whether the dependency is required or optional.

ConstantValueDescription
ExtensionSystem::PluginDependency::Required0Dependency needs to be there.
ExtensionSystem::PluginDependency::Optional1Dependency is not necessarily needed. You need to make sure that the plugin is able to load without this dependency installed, so for example you may not link to the dependency's library.
ExtensionSystem::PluginDependency::Test2Dependency needs to be force-loaded for running tests of the plugin.

Member Variable Documentation

QString PluginDependency::name

String identifier of the plugin.

ExtensionSystem::PluginDependency::Type PluginDependency::type

Defines whether the dependency is required or optional.

See also ExtensionSystem::PluginDependency::Type.

QString PluginDependency::version

Version string that a plugin must match to fill this dependency.

© 2020 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.