1
/* ============================================================
3
* This file is a part of digiKam project
4
* http://www.digikam.org
7
* Description : image plugins loader for image editor.
9
* Copyright (C) 2004-2005 by Renchi Raju <renchi@pooh.tam.uiuc.edu>
10
* Copyright (C) 2004-2012 by Gilles Caulier <caulier dot gilles at gmail dot com>
12
* This program is free software; you can redistribute it
13
* and/or modify it under the terms of the GNU General
14
* Public License as published by the Free Software Foundation;
15
* either version 2, or (at your option)
18
* This program is distributed in the hope that it will be useful,
19
* but WITHOUT ANY WARRANTY; without even the implied warranty of
20
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21
* GNU General Public License for more details.
23
* ============================================================ */
25
#ifndef IMAGEPLUGINLOADER_H
26
#define IMAGEPLUGINLOADER_H
36
#include "digikam_export.h"
37
#include "imageplugin.h"
44
class DIGIKAM_EXPORT ImagePluginLoader : public QObject
49
explicit ImagePluginLoader(QObject* const parent, SplashScreen* const splash = 0);
52
static ImagePluginLoader* instance();
54
QList<ImagePlugin*> pluginList() const;
55
void loadPluginsFromList(const QStringList& list);
57
// Return true if plugin library is loaded in memory.
58
// 'libraryName' is internal plugin library name not i18n.
59
bool pluginLibraryIsLoaded(const QString& libraryName) const;
61
ImagePlugin* pluginInstance(const QString& libraryName) const;
65
ImagePlugin* pluginIsLoaded(const QString& name) const;
69
static ImagePluginLoader* m_instance;
71
class ImagePluginLoaderPrivate;
72
ImagePluginLoaderPrivate* const d;
75
} // namespace Digikam
77
#endif /* IMAGEPLUGINLOADER_H */