Plugin Class Reference

#include <Plugin.h>

Inheritance diagram for Plugin:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 Plugin (const string name)
virtual ~Plugin ()
virtual void load (const string) throw (FileNotFound, LibHandleError)
virtual void unload () throw (LibHandleError)
virtual void run ()
virtual void registerParameter ()
virtual void registerOutputFields ()
virtual void requestPlugins ()
virtual void init ()
virtual void release ()
virtual void selftest ()
string getName ()
string getVersion ()
string getAuthors ()
string getDescription ()
string getCategory ()
PluginCategory getCategoryID ()
bool isLoaded ()
void setCategory (string new_type)
run_function getRunFunction ()

Protected Attributes

void * LibHandle
const string name
string path
string category
bool is_released
bool is_initialized
bool is_registered
bool is_loaded

Private Member Functions

 Plugin (const Plugin &x)
 hidden copy constructor - we do not want to accidentially copy objects
void_t get_dl_voidFunc (string) throw (LibHandleError)
char_t get_dl_stringFunc (string) throw (LibHandleError)
category_t get_categoryFunc (string) throw (LibHandleError)

Private Attributes

void_t func_void
char_t func_get_string
char_t func_get_name
char_t func_get_version
char_t func_get_authors
char_t func_get_description
category_t func_get_category
void_t func_run
void_t func_register_parameter
void_t func_register_output_fields
void_t func_request_plugins
void_t func_init
void_t func_release
int rc

Constructor & Destructor Documentation

Plugin::Plugin ( const Plugin x  )  [private]

hidden copy constructor - we do not want to accidentially copy objects

Plugin::Plugin ( const string  name  ) 

References crusde_debug(), and name.

Plugin::~Plugin (  )  [virtual]

References crusde_debug(), and name.


Member Function Documentation

category_t Plugin::get_categoryFunc ( string  func_name  )  throw (LibHandleError) [private]
char_t Plugin::get_dl_stringFunc ( string  func_name  )  throw (LibHandleError) [private]
void_t Plugin::get_dl_voidFunc ( string  func_name  )  throw (LibHandleError) [private]
string Plugin::getAuthors (  ) 

References func_get_authors.

Referenced by PluginManager::addToDB(), and selftest().

string Plugin::getCategory (  ) 
PluginCategory Plugin::getCategoryID (  ) 

References func_get_category.

Referenced by PluginManager::addToDB().

string Plugin::getDescription (  ) 

References func_get_description.

Referenced by PluginManager::addToDB(), and selftest().

string Plugin::getName (  ) 

References func_get_name.

Referenced by PluginManager::addToDB(), and selftest().

run_function Plugin::getRunFunction (  ) 
string Plugin::getVersion (  ) 

References func_get_version.

Referenced by PluginManager::addToDB(), and selftest().

void Plugin::init (  )  [virtual]
bool Plugin::isLoaded (  ) 

tells whether Plugin::load() was called and succeeded

References is_loaded.

void Plugin::load ( const  string  )  throw (FileNotFound, LibHandleError) [virtual]
void Plugin::registerOutputFields (  )  [virtual]
void Plugin::registerParameter (  )  [virtual]
void Plugin::release (  )  [virtual]

Reimplemented in GreensFunction, and LoadFunction.

References func_release, is_loaded, and is_released.

Referenced by SimulationCore::terminate(), and unload().

void Plugin::requestPlugins (  )  [virtual]

Reimplemented in GreensFunction, and LoadFunction.

References func_request_plugins, is_loaded, and is_registered.

Referenced by SimulationCore::init(), and selftest().

void Plugin::run (  )  [virtual]

References func_run, is_initialized, and is_loaded.

Referenced by SimulationCore::exec().

void Plugin::selftest (  )  [virtual]
void Plugin::setCategory ( string  new_type  ) 

References category.

void Plugin::unload (  )  throw (LibHandleError) [virtual]

Reimplemented in GreensFunction, and LoadFunction.

References crusde_debug(), is_loaded, LibHandle, name, rc, and release().

Referenced by SimulationCore::terminate().


Member Data Documentation

string Plugin::category [protected]

Referenced by setCategory().

Referenced by getAuthors().

Referenced by getCategory(), and getCategoryID().

Referenced by getDescription().

Referenced by getName().

Referenced by getVersion().

Referenced by init().

Referenced by registerOutputFields().

Referenced by registerParameter().

Referenced by release().

Referenced by requestPlugins().

Referenced by getRunFunction(), and run().

bool Plugin::is_initialized [protected]
bool Plugin::is_loaded [protected]
bool Plugin::is_registered [protected]
bool Plugin::is_released [protected]

Referenced by release().

void* Plugin::LibHandle [protected]

Referenced by unload().

const string Plugin::name [protected]
string Plugin::path [protected]

Referenced by selftest().

int Plugin::rc [private]

Referenced by unload().


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

Generated on Tue Feb 16 15:18:36 2010 for CrusDe by  doxygen 1.6.1-20091004