include/corelib/plugin_manager.hpp File Reference


Detailed Description

Plugin manager (using class factory paradigm).

Describe generic interface and provide basic functionality to advertise and export a class factory. The class and class factory implementation code can be linked to either statically (then, the class factory will need to be registered explicitly by the user code) or dynamically (then, the DLL will be searched for using plugin name, and the well-known DLL entry point will be used to register the class factory, automagically).

Definition in file plugin_manager.hpp.

#include <corelib/ncbimtx.hpp>
#include <corelib/version.hpp>
#include <corelib/ncbidll.hpp>
#include <corelib/ncbi_config.hpp>
#include <corelib/ncbiapp.hpp>
#include <corelib/error_codes.hpp>
#include <set>
#include <string>

Include dependency graph for plugin_manager.hpp:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  CPluginManagerException
 CPluginManagerException --. More...
class  CInterfaceVersion< TClass >
 CInterfaceVersion<> --. More...
class  CDefaultDriverVersion< TInterface >
struct  SDriverInfo
class  IClassFactory< TClass >
 IClassFactory<> --. More...
struct  CPluginManagerBase
class  CDllResolver_Getter< TClass >
 Template function to create dll resolver for interface. More...
class  CPluginManager< TClass >
 CPluginManager<> --. More...
struct  CPluginManager< TClass >::SDriverInfo
 Information about a driver, with maybe a pointer to an instantiated class factory that contains the driver. More...
class  CPluginManager_DllResolver
 Service class for DLLs resolution. More...
class  CInvalidDrvVer< TClass >

Defines

#define NCBI_DECLARE_INTERFACE_VERSION(iface, iface_name, major, minor, patch_level)
 Macro to auto-setup the current interface name and version.
#define NCBI_INTERFACE_VERSION(iface)
 Macro to contruct CVersionInfo class using interface name (relies on CInterfaceVersion class).

Typedefs

typedef CConfig::TParamTree TPluginManagerParamTree
typedef list< SDriverInfoTDriverList

Functions

bool operator== (const SDriverInfo &i1, const SDriverInfo &i2)
bool operator< (const SDriverInfo &i1, const SDriverInfo &i2)


Function Documentation

bool operator< const SDriverInfo i1,
const SDriverInfo i2
[inline]
 

Definition at line 732 of file plugin_manager.hpp.

References SDriverInfo::name, and SDriverInfo::version.

bool operator== const SDriverInfo i1,
const SDriverInfo i2
[inline]
 

Definition at line 726 of file plugin_manager.hpp.

References SDriverInfo::name, and SDriverInfo::version.


Generated on Mon Dec 7 00:13:35 2009 for NCBI C++ ToolKit by  doxygen 1.4.6
Modified on Mon Dec 07 16:21:20 2009 by modify_doxy.py rev. 173732