libyui
|
#include <YUIPlugin.h>
Public Member Functions | |
YUIPlugin (const char *pluginLibBaseName) | |
virtual | ~YUIPlugin () |
void | unload () |
void * | locateSymbol (const char *symbol) |
bool | error () const |
bool | success () const |
string | errorMsg () const |
Protected Member Functions | |
void * | pluginLibHandle () |
string | pluginLibBaseName () const |
string | pluginLibFullPath () const |
void | loadPluginLib () |
Wrapper class for dlopen() and related.
YUIPlugin::YUIPlugin | ( | const char * | pluginLibBaseName | ) |
Constructor: Load the specified plugin library from the standard UI plugin directory (/usr/lib/YaST2/plugin).
YUIPlugin::~YUIPlugin | ( | ) | [virtual] |
Destructor.
Please note that this will NOT attempt to unload the plugin library since this is usually counterproductive. If unloading the plugin is desired, call unload() manually.
bool YUIPlugin::error | ( | ) | const |
Returns 'true' if there was an error loading the plugin.
string YUIPlugin::errorMsg | ( | ) | const |
Returns a human readable (but in most cases untranslated) error message if there was an error.
void YUIPlugin::loadPluginLib | ( | ) | [protected] |
Loads the plugin library.
void * YUIPlugin::locateSymbol | ( | const char * | symbol | ) |
Try to locate the specified symbol (function or global variable) in the plugin library.
Returns the in-memory address of that symbol or 0 if it could not be found or if loading the plugin library had failed in the constructor.
string YUIPlugin::pluginLibBaseName | ( | ) | const [inline, protected] |
Returns the base name of the plugin library.
string YUIPlugin::pluginLibFullPath | ( | ) | const [protected] |
Returns the full path of the plugin library.
void* YUIPlugin::pluginLibHandle | ( | ) | [inline, protected] |
Returns the dlopen() handle of the plugin library.
bool YUIPlugin::success | ( | ) | const |
Returns 'true' if there was no error loading the plugin.
void YUIPlugin::unload | ( | ) |
Unload this plugin. This calls dlclose() which will unload the plugin library if it is no longer used, i.e. if the reference count dlopen() uses reaches 0.