20 #include <QtCore/QObject>
32 static void setRootComponentNullError(
33 QString* error,
const QPluginLoader* loader);
34 static void setRootComponentIncompatibleError(
35 QString* error,
const char* iid);
36 static QObject* rootComponent(QPluginLoader* loader);
48 template<
typename INTERFACE>
51 protected internal::PluginsLoader_InstanceIFaceFilter_Helper
54 bool accepts(QPluginLoader *loader, QString* error = NULL)
const
56 if (rootComponent(loader) != NULL) {
57 if (qobject_cast<INTERFACE*>(rootComponent(loader)) != NULL) {
61 setRootComponentIncompatibleError(
62 error, qobject_interface_iid<INTERFACE>());
66 setRootComponentNullError(error, loader);
bool accepts(QPluginLoader *loader, QString *error=NULL) const
Keep or discard the root component of QPluginLoader loader.
Definition: plugins_loader_instance_iface_filter.h:54
#define QTTOOLS_CORE_EXPORT
Definition: core.h:27
Generic plugin filter that keeps only root components satisfying an interface.
Definition: plugins_loader_instance_iface_filter.h:49
Definition: grid_numbering.cpp:19
Provides plugin filter to be used with PluginsLoader.
Definition: plugins_loader_instance_filter.h:23