/* ============================================================ * The rekonq project * ============================================================ * SPDX-License-Identifier: GPL-3.0-only * Copyright (C) 2022 aqua * ============================================================ * Description: rekonq plugin loader * ============================================================ */ #pragma once #include "rplugininterface.hpp" #include class PluginLoader : public QPluginLoader { public: explicit PluginLoader(const QString &path, QObject *parent = nullptr); [[nodiscard]] auto schemes() const { return m_schemes; } [[nodiscard]] bool hasScheme(const QString &scheme) const { return m_schemes.contains(scheme); } [[nodiscard]] RekonqPluginInterface *interface() { return qobject_cast(instance()); } private: QStringList m_schemes; };