LeechCraft 0.6.70-17609-g3dde4097dd
Modular cross-platform feature rich live environment.
Loading...
Searching...
No Matches
ipluginready.h
Go to the documentation of this file.
1/**********************************************************************
2 * LeechCraft - modular cross-platform feature rich internet client.
3 * Copyright (C) 2006-2014 Georg Rudoy
4 *
5 * Distributed under the Boost Software License, Version 1.0.
6 * (See accompanying file LICENSE or copy at https://www.boost.org/LICENSE_1_0.txt)
7 **********************************************************************/
8
9#ifndef INTERFACES_IPLUGINREADY_H
10#define INTERFACES_IPLUGINREADY_H
11#include <QtPlugin>
12#include <QSet>
13
27class Q_DECL_EXPORT IPluginReady
28{
29public:
30 virtual ~IPluginReady () {}
31
43 virtual QSet<QByteArray> GetExpectedPluginClasses () const = 0;
44
52 virtual void AddPlugin (QObject *plugin) = 0;
53};
54
55Q_DECLARE_INTERFACE (IPluginReady, "org.Deviant.LeechCraft.IPluginReady/1.0")
56
57#endif
58
Base class for plugins accepting second-level plugins.
virtual ~IPluginReady()
virtual void AddPlugin(QObject *plugin)=0
Adds second-level plugin to this one.
virtual QSet< QByteArray > GetExpectedPluginClasses() const =0
Returns the expected classes of the plugins for this plugin.