Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Friends

XAP_ModuleManager Class Reference

#include <xap_ModuleManager.h>

List of all members.

Public Member Functions

 ~XAP_ModuleManager ()
bool loadModule (const char *szFilename)
bool loadPreloaded (XAP_Plugin_Registration fnRegister, XAP_Plugin_Registration fnDeregister, XAP_Plugin_VersionCheck fnSupportsVersion)
void unloadModule (XAP_Module *module)
void unloadAllPlugins ()
const UT_GenericVector
< XAP_Module * > * 
enumModules () const

Static Public Member Functions

static XAP_ModuleManagerinstance ()

Private Member Functions

 XAP_ModuleManager ()
void unloadModule (UT_sint32 ndx)
 XAP_ModuleManager (const XAP_ModuleManager &)
void operator= (const XAP_ModuleManager &)

Private Attributes

UT_GenericVector< XAP_Module * > * m_modules


class XAP_Module

Constructor & Destructor Documentation

XAP_ModuleManager::XAP_ModuleManager (  )  [private]

Protected destructor creates an instance of this module class

References m_modules.

XAP_ModuleManager::~XAP_ModuleManager (  ) 

Private destructor

References m_modules, MODULE_CLASS, and UT_VECTOR_PURGEALL.

XAP_ModuleManager::XAP_ModuleManager ( const XAP_ModuleManager  )  [private]

Member Function Documentation

const UT_GenericVector< XAP_Module * > * XAP_ModuleManager::enumModules (  )  const

Enumerate the modules loaded thus far

a vector containing XAP_Module*'s

References m_modules.

Referenced by loadModule(), and XAP_Win32Dialog_PluginManager::refreshPluginInfo().

XAP_ModuleManager & XAP_ModuleManager::instance ( void   )  [static]
bool XAP_ModuleManager::loadModule ( const char *  szFilename  ) 
bool XAP_ModuleManager::loadPreloaded ( XAP_Plugin_Registration  fnRegister,
XAP_Plugin_Registration  fnDeregister,
XAP_Plugin_VersionCheck  fnSupportsVersion 
void XAP_ModuleManager::operator= ( const XAP_ModuleManager  )  [private]
void XAP_ModuleManager::unloadAllPlugins (  ) 

Unload all currently loaded plugins, in order of last added to first


References UT_GenericVector< T >::getItemCount(), m_modules, unloadModule(), UT_ASSERT, UT_return_if_fail, and UT_SHOULD_NOT_HAPPEN.

void XAP_ModuleManager::unloadModule ( XAP_Module pModule  ) 

Unload a module

pModule - a valid module that you want to unload

WARNING: zero or more plugins/modules may be unloaded as a result of calling XAP_ModuleManager::unloadModule since the plugin may be unloaded already or other plugins may depend on this one and be unloaded automatically.

Don't assume anything, therefore, about the UT_Vector returned by XAP_ModuleManager::enumModules

References UT_GenericVector< T >::findItem(), XAP_Module::getCreator(), m_modules, UT_ASSERT, UT_DEBUGMSG, and UT_SHOULD_NOT_HAPPEN.

Referenced by unloadAllPlugins().

void XAP_ModuleManager::unloadModule ( UT_sint32  ndx  )  [private]

Friends And Related Function Documentation

friend class XAP_Module [friend]

Member Data Documentation

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