Albert
Loading...
Searching...
No Matches
pluginloader.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2024 Manuel Schneider
2// SPDX-License-Identifier: MIT
3
4#pragma once
5#include <QString>
6#include <albert/export.h>
7
8namespace albert
9{
10class PluginInstance;
11class PluginMetaData;
12
16class ALBERT_EXPORT PluginLoader
17{
18public:
19
22 virtual QString path() const = 0;
23
26 virtual const PluginMetaData &metaData() const = 0;
27
32 virtual void load() = 0;
33
36 virtual void unload() = 0;
37
43
44protected:
45
46 virtual ~PluginLoader();
47
48};
49
50}
Abstract plugin instance class.
Definition plugininstance.h:25
Plugin loader interface class.
Definition pluginloader.h:17
virtual void unload()=0
Unload the plugin.
virtual void load()=0
Load the plugin.
virtual PluginInstance * createInstance()=0
The plugin instance.
virtual const PluginMetaData & metaData() const =0
The plugin metadata.
virtual QString path() const =0
The path to the plugin.
Common plugin metadata of plugins.
Definition pluginmetadata.h:15
Definition action.h:10