19 #ifndef __PLUGINS_PLUGINMANAGER_P_H 20 #define __PLUGINS_PLUGINMANAGER_P_H 23 #include <QSharedData> 24 #include <QExplicitlySharedDataPointer> 25 #include <QPluginLoader> 79 QList<QExplicitlySharedDataPointer<Module> > mModules;
82 QList<QExplicitlySharedDataPointer<Plugin> > mPlugins;
92 Module * moduleByName(QString
const & name)
const;
109 Module(QString
const & name);
118 QString
const &
name()
const {
return mName; }
134 iPlugin * create(QString
const & name);
143 QPluginLoader * mLoader;
171 Plugin(
Module * module, QString
const & name, QString
const & args);
180 QString
const &
name()
const {
return mName; }
221 #endif // pluginmanager_p.h virtual ~PluginManagerPrivate()
Dtr.
Internal implementation of the plugin manager.
QString const & name() const
The name of the module.
One external module implementing the iPluginFactory or the iPlugin interfaces.
PluginManagerPrivate()
Ctr.
bool loadPlugins()
Loads and initializes plugins.
Common plugin factory interface for eVaf modules.
void done()
Finalizes the private plugin manager object.
One iPlugin interface object.
bool init()
Initializes the private plugin manager object.
QString const & name() const
The name of the plugin.
void unloadPlugins()
Finalizes and unloads plugins.
Common interface for all the eVaf modules.
iPlugin * plugin() const
The iPlugin interface.
bool isLoaded() const
Returns true if the module is loaded.