libRoadRunner Plugin C++ API  1.0.0
 All Classes Files Functions Variables Friends Pages
Public Member Functions | Protected Attributes | List of all members
rrp::CPlugin Class Reference

#include <rrCPlugin.h>

Inheritance diagram for rrp::CPlugin:
rrp::Plugin

Public Member Functions

 CPlugin (const string &name, const string &cat=gNoneString, RoadRunner *aRR=NULL)
 Create a plugin written in C.
 
virtual ~CPlugin ()
 De allocate the plugin.
 
string getImplementationLanguage ()
 
virtual bool execute (bool useThread=false)
 
- Public Member Functions inherited from rrp::Plugin
 Plugin (const string &name=gEmptyString, const string &cat=gNoneString, RoadRunner *aRR=NULL, const string &language=gNoneString, const PluginManager *pm=NULL)
 
virtual ~Plugin ()
 
string getName ()
 
string getLibraryName ()
 
string getAuthor ()
 
string getCategory ()
 
string getVersion ()
 
string getCopyright ()
 
RoadRunner * getRoadRunnerInstance ()
 
virtual string getInfo ()
 
virtual string getExtendedInfo ()
 
virtual unsigned char * getManualAsPDF () const
 
virtual unsigned int getPDFManualByteSize ()
 
ParametersgetParameters ()
 
StringList getParameterNames ()
 
string getPluginPropertiesAsXML ()
 
PluginParametergetParameter (const string &param, const string &capability="")
 
PluginParametergetParameter (const string &param, Capability &capability)
 
bool setParameter (const string &nameOf, const char *value)
 
bool setParameter (const string &nameOf, const char *value, Capability &capability)
 
void terminate ()
 
bool isBeingTerminated ()
 
bool wasTerminated ()
 check if the plugin was terminated
 
virtual bool isWorking ()
 check if the plugin is working
 
bool assignRoadRunnerInstance (RoadRunner *rr)
 Assign a roadrunner instance for the plugin to use.
 
virtual bool assignOnStartedEvent (PluginEvent pluginStarted, void *userData1=NULL, void *userData2=NULL)
 
virtual bool assignOnProgressEvent (PluginEvent pluginsProgress, void *userData1=NULL, void *userData2=NULL)
 
virtual bool assignOnFinishedEvent (PluginEvent pluginsFinished, void *userData1=NULL, void *userData2=NULL)
 
virtual string getResult ()
 
virtual bool resetPlugin ()
 
virtual bool assignInput (void *data)
 
virtual string getStatus ()
 

Protected Attributes

executeF executeFunction
 
destroyF destroyFunction
 
- Protected Attributes inherited from rrp::Plugin
string mName
 Name of Plugin.
 
string mLibraryName
 Name of compiled shared library implementing the Plugin.
 
string mAuthor
 Name of plugin author(s)
 
string mCategory
 Plugin category.
 
string mVersion
 Plugin version.
 
string mCopyright
 Plugin copyright language.
 
string mImplementationLanguage
 Plugin implementation language.
 
bool mTerminate
 Boolean flag indicating if a user wants to terminate the work in a plugin.
 
bool mIsWorking
 Boolean flag indicating if the plugin is working.
 
RoadRunner * mRR
 
const PluginManagermPM
 
PluginEvent mWorkStartedEvent
 
PluginEvent mWorkProgressEvent
 
PluginEvent mWorkFinishedEvent
 
void * mWorkStartedData1
 
void * mWorkStartedData2
 
void * mWorkProgressData1
 
void * mWorkProgressData2
 
void * mWorkFinishedData1
 
void * mWorkFinishedData2
 
Capabilities mCapabilities
 
void * mClientData
 

Additional Inherited Members

- Protected Member Functions inherited from rrp::Plugin
void setLibraryName (const string &libName)
 

Detailed Description

The CPlugin class is containing the framework to load plugins that are written in pure C. The shared library need to export an execute and destroy function.

Member Function Documentation

bool rrp::CPlugin::execute ( bool  inAThread = false)
virtual

Execute the plugin

Implements rrp::Plugin.

string rrp::CPlugin::getImplementationLanguage ( )
virtual

Retrieve the implementation language of the plugin.

Implements rrp::Plugin.

Member Data Documentation

destroyF rrp::CPlugin::destroyFunction
protected

Function pointer to a destroy function. The shared library need to provide this function. This function pointer is assigned as the plugin is loaded.

executeF rrp::CPlugin::executeFunction
protected

Function pointer to a execute function. The shared library need to provide this function. This function pointer is assigned as the plugin is loaded.


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