#include <PluginManager.h>
Inheritance diagram for PluginManager:
Public Member Functions | |
PluginManager (const char *path) | |
virtual | ~PluginManager () |
virtual bool | deleteEntry (int id) throw (DatabaseError, PluginError) |
removes plugin from database. checks before, whether any other plugin depends on ID | |
virtual void | run () |
starts qt and the plugin manager dialog | |
virtual multimap< string, map< int, string > > | getEntryMap () |
returns a formatted string for display containing all details listed for plugin 'id' in db | |
virtual string | getEntryDetails (int id) |
returns a formatted string for display containing all details listed for plugin 'id' in db | |
virtual void | addEntry (string absolutepath, DOMNode *parent=0) throw (PluginExistsException) |
runs tests on the plugin found at 'absolute path' and adds it to the database if cleared. | |
string | getFilename (string, string) throw (DatabaseError) |
Private Member Functions | |
PluginManager (const PluginManager &x) | |
DOMNode * | isInDB (string, string) |
void | addToDB (string filename, string dst) |
DOMNode * | getEntryById (int id) |
DOMNode * | getEntryById (int id, const XMLCh *tag) |
list< DOMNode * > | getDependents (DOMNode *entry) |
list< string > | getDependencies (DOMNode *entry) |
list< string > | getParameters (DOMNode *entry) |
Private Attributes | |
Plugin | plugin |
PluginManager::PluginManager | ( | const PluginManager & | x | ) | [private] |
hidden copy constructor - we do not want to accidentially copy objects
PluginManager::PluginManager | ( | const char * | path | ) |
virtual PluginManager::~PluginManager | ( | ) | [inline, virtual] |
DOMNode * PluginManager::isInDB | ( | string | filename, | |
string | category | |||
) | [private] |
filename | ||
category |
void PluginManager::addToDB | ( | string | filename, | |
string | dst | |||
) | [private] |
Add plugin to plugin_list and DOM
name | ||
category | ||
version | ||
authors | ||
filename |
DOMNode * PluginManager::getEntryById | ( | int | id | ) | [private] |
DOMNode * PluginManager::getEntryById | ( | int | id, | |
const XMLCh * | tag | |||
) | [private] |
to be inherited from base class
id | ||
tag |
list< DOMNode * > PluginManager::getDependents | ( | DOMNode * | entry | ) | [private] |
checks whether some plugin in the database depends on entry. therefore we retrieve all 'TAG_dependency' entries and compare their contents with
entry | plugin someone might depend on |
list< string > PluginManager::getDependencies | ( | DOMNode * | entry | ) | [private] |
checks whether some plugin in the database depends on entry. therefore we retrieve all 'TAG_dependency' entries and compare their contents with
entry | plugin someone might depend on |
list< string > PluginManager::getParameters | ( | DOMNode * | entry | ) | [private] |
checks whether some plugin in the database depends on entry. therefore we retrieve all 'TAG_parameter' entries and compare their contents with
entry | plugin someone might depend on |
bool PluginManager::deleteEntry | ( | int | id | ) | throw (DatabaseError, PluginError) [virtual] |
removes plugin from database. checks before, whether any other plugin depends on ID
delete entry
Implements DatabaseManager.
void PluginManager::run | ( | ) | [virtual] |
multimap< string, map< int, string > > PluginManager::getEntryMap | ( | ) | [virtual] |
returns a formatted string for display containing all details listed for plugin 'id' in db
get Entries
Implements DatabaseManager.
string PluginManager::getEntryDetails | ( | int | id | ) | [virtual] |
returns a formatted string for display containing all details listed for plugin 'id' in db
get Experiments
Implements DatabaseManager.
void PluginManager::addEntry | ( | string | absolutepath, | |
DOMNode * | parent = 0 | |||
) | throw (PluginExistsException) [virtual] |
runs tests on the plugin found at 'absolute path' and adds it to the database if cleared.
add entry
Implements DatabaseManager.
string PluginManager::getFilename | ( | string | category, | |
string | name | |||
) | throw (DatabaseError) |
name |
Plugin PluginManager::plugin [private] |
one plugin instance that's gonna be managed