summaryrefslogtreecommitdiffstats
path: root/src/Bindings/PluginManager.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Bindings/PluginManager.h')
-rw-r--r--src/Bindings/PluginManager.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/Bindings/PluginManager.h b/src/Bindings/PluginManager.h
index 66f7d290a..4de4bdeae 100644
--- a/src/Bindings/PluginManager.h
+++ b/src/Bindings/PluginManager.h
@@ -1,8 +1,9 @@
-
+
#pragma once
#include "Defines.h"
+#include <functional>
@@ -194,7 +195,7 @@ public:
/** The interface used for enumerating and extern-calling plugins */
- typedef cItemCallback<cPlugin> cPluginCallback;
+ using cPluginCallback = std::function<bool(cPlugin &)>;
typedef std::list<cPlugin *> PluginList;
@@ -372,18 +373,18 @@ public:
/** Calls the specified callback with the plugin object of the specified plugin.
Returns false if plugin not found, otherwise returns the value that the callback has returned. */
- bool DoWithPlugin(const AString & a_PluginName, cPluginCallback & a_Callback);
+ bool DoWithPlugin(const AString & a_PluginName, const cPluginCallback & a_Callback);
/** Calls the specified callback for each plugin in m_Plugins.
Returns true if all plugins have been reported, false if the callback has aborted the enumeration by returning true. */
- bool ForEachPlugin(cPluginCallback & a_Callback);
+ bool ForEachPlugin(const cPluginCallback & a_Callback);
/** Returns the name of the folder (cPlugin::GetFolderName()) from which the specified plugin was loaded. */
AString GetPluginFolderName(const AString & a_PluginName); // tolua_export
/** Returns the path where individual plugins' folders are expected.
The path doesn't end in a slash. */
- static AString GetPluginsPath(void) { return FILE_IO_PREFIX + AString("Plugins"); } // tolua_export
+ static AString GetPluginsPath(void) { return FILE_IO_PREFIX "Plugins"; } // tolua_export
private:
friend class cRoot;