Audacity 3.2.0
Classes | Typedefs | Functions | Variables
ModuleManager.h File Reference
#include "MemoryX.h"
#include <functional>
#include <map>
#include <vector>
#include <wx/string.h>
#include "Identifier.h"
#include "ModuleConstants.h"
Include dependency graph for ModuleManager.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


class  Module
class  PluginProviderUniqueHandle
class  ModuleManager
struct  Init


using PluginID = wxString
typedef int(* fnModuleDispatch) (ModuleDispatchTypes type)
using PluginProviderHandlesMap = std::map< wxString, PluginProviderUniqueHandle >
using PluginProviderFactory = std::unique_ptr< PluginProvider >(*)()


MODULE_MANAGER_API void RegisterProviderFactory (PluginProviderFactory factory)
MODULE_MANAGER_API void UnregisterProviderFactory (PluginProviderFactory factory)


static struct Init sInitBuiltinModules

Typedef Documentation

◆ fnModuleDispatch

typedef int(* fnModuleDispatch) (ModuleDispatchTypes type)

Definition at line 39 of file ModuleManager.h.

◆ PluginID

using PluginID = wxString

Definition at line 28 of file ModuleManager.h.

◆ PluginProviderFactory

using PluginProviderFactory = std::unique_ptr<PluginProvider> (*)()

Definition at line 160 of file ModuleManager.h.

◆ PluginProviderHandlesMap

Definition at line 82 of file ModuleManager.h.

Function Documentation

◆ RegisterProviderFactory()

MODULE_MANAGER_API void RegisterProviderFactory ( PluginProviderFactory  factory)

Definition at line 185 of file ModuleManager.cpp.

187 auto &list = builtinProviderList();
188 if(pluginProviderFactory)
189 list.push_back(std::move(pluginProviderFactory));
BuiltinProviderList & builtinProviderList()

References anonymous_namespace{ModuleManager.cpp}::builtinProviderList().

Referenced by Init::Init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ UnregisterProviderFactory()

MODULE_MANAGER_API void UnregisterProviderFactory ( PluginProviderFactory  factory)

Definition at line 192 of file ModuleManager.cpp.

194 auto &list = builtinProviderList();
195 auto end = list.end(), iter = std::find(list.begin(), end, pluginProviderFactory);
196 if (iter != end)
197 list.erase(iter);
auto end(const Ptr< Type, BaseDeleter > &p)
Enables range-for.
Definition: PackedArray.h:159

References anonymous_namespace{ModuleManager.cpp}::builtinProviderList(), and PackedArray::end().

Here is the call graph for this function:

Variable Documentation

◆ sInitBuiltinModules

struct Init sInitBuiltinModules