Go to the documentation of this file.
23 mXmlPluginTagName(
"Plugin")
47 mIsInitialise =
false;
58 MYGUI_LOG(Error,
"Plugin '" << _file <<
"' not found");
66 MYGUI_LOG(Error,
"Cannot find symbol 'dllStartPlugin' in library " << _file);
83 DynLibList::iterator it = mLibs.find(_file);
84 if (it != mLibs.end())
110 else if (node->
getName() ==
"Plugin")
115 while (source_node.next(
"Source"))
118 #if MYGUI_DEBUG_MODE == 1
119 if (build ==
"Debug")
120 source = source_node->getContent();
122 if (build !=
"Debug")
123 source = source_node->getContent();
138 mPlugins.insert(_plugin);
143 MYGUI_LOG(Info,
"Plugin successfully installed");
151 PluginList::iterator it = mPlugins.find(_plugin);
152 if (it != mPlugins.end())
158 MYGUI_LOG(Info,
"Plugin successfully uninstalled");
163 while (!mLibs.empty())
static ResourceManager & getInstance()
void unloadPlugin(const std::string &_file)
Unload plugin.
void unloadAllPlugins()
Unload all plugins.
virtual void initialize()=0
LoadXmlDelegate & registerLoadXmlDelegate(const std::string &_key)
void unload(DynLib *library)
Unload library.
void unregisterLoadXmlDelegate(const std::string &_key)
const std::string & getName() const
static const char * getClassTypeName()
Plugin manager. Load/unload and register plugins.
Resource holding data about a dynamic library.
bool loadPlugin(const std::string &_file)
Load plugin.
bool findAttribute(const std::string &_name, std::string &_value)
void installPlugin(IPlugin *_plugin)
virtual void uninstall()=0
void(* DLL_STOP_PLUGIN)(void)
virtual void shutdown()=0
#define MYGUI_ASSERT(exp, dest)
DynLib * load(const std::string &fileName)
Load library.
#define MYGUI_LOG(level, text)
void uninstallPlugin(IPlugin *_plugin)
virtual const std::string & getName() const =0
void * getSymbol(const std::string &strName) const
void(* DLL_START_PLUGIN)(void)
ElementEnumerator getElementEnumerator()
MYGUI_TEMPLATE MYGUI_TEMPLATE_PARAMS delegates::IDelegateMYGUI_SUFFIX MYGUI_TEMPLATE_ARGS * newDelegate(void(*_func)(MYGUI_PARAMS))