ResidualVM logo ResidualVM website - Forums - Contact us BuildBot - Doxygen - Wiki curved edge

Singleton class which manages all plugins, including loading them, managing all Plugin class instances, and unloading them. More...

#include <plugins.h>

Inheritance diagram for PluginManager:
Collaboration diagram for PluginManager:

List of all members.

Public Member Functions

virtual ~PluginManager ()
void addPluginProvider (PluginProvider *pp)
virtual void init ()
virtual void loadFirstPlugin ()
virtual bool loadNextPlugin ()
virtual bool loadPluginFromGameId (const Common::String &gameId)
virtual void updateConfigWithFileName (const Common::String &gameId)
virtual void loadAllPlugins ()
 Used by only the cached plugin manager.
void unloadAllPlugins ()
void unloadPluginsExcept (PluginType type, const Plugin *plugin, bool deletePlugin=true)
const PluginListgetPlugins (PluginType t)

Static Public Member Functions

static void destroy ()
static PluginManagerinstance ()

Protected Types

typedef Common::Array
< PluginProvider * > 
ProviderList

Protected Member Functions

bool tryLoadPlugin (Plugin *plugin)
void addToPluginsInMemList (Plugin *plugin)
 Add to the list of plugins loaded in memory.
 PluginManager ()

Protected Attributes

PluginList _pluginsInMem [PLUGIN_TYPE_MAX]
ProviderList _providers

Static Protected Attributes

static PluginManager_instance = NULL

Detailed Description

Singleton class which manages all plugins, including loading them, managing all Plugin class instances, and unloading them.

Definition at line 302 of file plugins.h.


Member Typedef Documentation

Definition at line 304 of file plugins.h.


Constructor & Destructor Documentation

PluginManager::PluginManager (  )  [protected]

Definition at line 234 of file plugins.cpp.

PluginManager::~PluginManager (  )  [virtual]

Definition at line 239 of file plugins.cpp.


Member Function Documentation

void PluginManager::addPluginProvider ( PluginProvider pp  ) 

Definition at line 251 of file plugins.cpp.

void PluginManager::addToPluginsInMemList ( Plugin plugin  )  [protected]

Add to the list of plugins loaded in memory.

Definition at line 424 of file plugins.cpp.

static void PluginManager::destroy (  )  [inline, static]

Definition at line 318 of file plugins.h.

const PluginList& PluginManager::getPlugins ( PluginType  t  )  [inline]

Definition at line 336 of file plugins.h.

virtual void PluginManager::init (  )  [inline, virtual]

Reimplemented in PluginManagerUncached.

Definition at line 324 of file plugins.h.

PluginManager & PluginManager::instance (  )  [static]

Definition at line 222 of file plugins.cpp.

void PluginManager::loadAllPlugins (  )  [virtual]

Used by only the cached plugin manager.

The uncached manager can only have one plugin in memory at a time.

Reimplemented in PluginManagerUncached.

Definition at line 374 of file plugins.cpp.

virtual void PluginManager::loadFirstPlugin (  )  [inline, virtual]

Reimplemented in PluginManagerUncached.

Definition at line 325 of file plugins.h.

virtual bool PluginManager::loadNextPlugin (  )  [inline, virtual]

Reimplemented in PluginManagerUncached.

Definition at line 326 of file plugins.h.

virtual bool PluginManager::loadPluginFromGameId ( const Common::String gameId  )  [inline, virtual]

Reimplemented in PluginManagerUncached.

Definition at line 327 of file plugins.h.

bool PluginManager::tryLoadPlugin ( Plugin plugin  )  [protected]

Definition at line 408 of file plugins.cpp.

void PluginManager::unloadAllPlugins (  ) 

Definition at line 383 of file plugins.cpp.

void PluginManager::unloadPluginsExcept ( PluginType  type,
const Plugin plugin,
bool  deletePlugin = true 
)

Definition at line 388 of file plugins.cpp.

virtual void PluginManager::updateConfigWithFileName ( const Common::String gameId  )  [inline, virtual]

Reimplemented in PluginManagerUncached.

Definition at line 328 of file plugins.h.


Member Data Documentation

PluginManager * PluginManager::_instance = NULL [static, protected]

Definition at line 312 of file plugins.h.

PluginList PluginManager::_pluginsInMem[PLUGIN_TYPE_MAX] [protected]

Definition at line 306 of file plugins.h.

Definition at line 307 of file plugins.h.


The documentation for this class was generated from the following files:


Generated on Sat May 18 2019 05:04:59 for ResidualVM by doxygen 1.7.1
curved edge   curved edge