PluginManager Class Reference

#include <PluginManager.h>

Inheritance diagram for PluginManager:

Inheritance graph
[legend]
Collaboration diagram for PluginManager:

Collaboration graph
[legend]
List of all members.

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

Detailed Description

manages a plugin database (2xml files: one in user's home directory, another in install path of GFLC, with


Constructor & Destructor Documentation

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]
 


Member Function Documentation

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.

void PluginManager::addToDB string  filename,
string  dst
[private]
 

Add plugin to plugin_list and DOM

Parameters:
name 
category 
version 
authors 
filename 

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.

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

Parameters:
entry plugin someone might depend on
Returns:
list of dependent plugins

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

Parameters:
entry plugin someone might depend on
Returns:
list of dependent plugins

DOMNode * PluginManager::getEntryById int  id,
const XMLCh *  tag
[private]
 

to be inherited from base class

Parameters:
id 
tag 
Returns:

DOMNode * PluginManager::getEntryById int  id  )  [private]
 

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.

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::getFilename string  category,
string  name
throw (DatabaseError)
 

Parameters:
name 
Returns:

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

Parameters:
entry plugin someone might depend on
Returns:
list of dependent plugins

DOMNode * PluginManager::isInDB string  filename,
string  category
[private]
 

Parameters:
filename 
category 
Returns:

void PluginManager::run  )  [virtual]
 

starts qt and the plugin manager dialog

Implements DatabaseManager.


Member Data Documentation

Plugin PluginManager::plugin [private]
 

one plugin instance that's gonna be managed


The documentation for this class was generated from the following files:
Generated on Sun Jul 29 08:17:35 2007 for CrusDe by doxygen 1.3.8