1 | // SPDX-FileCopyrightText: 2023 UnionTech Software Technology Co., Ltd. |
---|---|
2 | // |
3 | // SPDX-License-Identifier: GPL-3.0-or-later |
4 | |
5 | #ifndef LIFECYCLE_H |
6 | #define LIFECYCLE_H |
7 | |
8 | #include "pluginmanager.h" |
9 | #include "framework/lifecycle/pluginmetaobject.h" |
10 | #include "framework/lifecycle/plugin.h" |
11 | #include "framework/framework_global.h" |
12 | |
13 | #include <QString> |
14 | #include <QObject> |
15 | |
16 | DPF_BEGIN_NAMESPACE |
17 | |
18 | class LifeCycle final : public QObject |
19 | { |
20 | Q_OBJECT |
21 | public: |
22 | static PluginManager* getPluginManagerInstance(); |
23 | static void setPluginIID(const QString &pluginIID); |
24 | static QString pluginIID(); |
25 | static QStringList pluginPaths(); |
26 | static void setPluginPaths(const QStringList &pluginPaths); |
27 | static QStringList servicePaths(); |
28 | static void setServicePaths(const QStringList &servicePaths); |
29 | static PluginMetaObjectPointer pluginMetaObj(const QString &pluginName, |
30 | const QString version = ""); |
31 | static bool readPlugins(); |
32 | static bool loadPlugins(); |
33 | static void shutdownPlugins(); |
34 | static void setSettings(PluginSetting *settings); |
35 | |
36 | static bool loadPlugin(PluginMetaObjectPointer &pointer); |
37 | static void shutdownPlugin(PluginMetaObjectPointer &pointer); |
38 | }; |
39 | |
40 | DPF_END_NAMESPACE |
41 | |
42 | #endif // LIFECYCLE_H |
43 |