stec-platform
PluginClass Class Reference

The PluginClass class the base for all plugin. More...

#include <pluginclass.h>

Inheritance diagram for PluginClass:
Collaboration diagram for PluginClass:

Signals

void signal_UnloadUs (int uniqueId)
 
void signal_load (int UniqueID, QString InstanceName, QString pluginName, VremVArray Arguments, VremVArray Licenses)
 
void signal_unload (int UniqueID)
 

Public Member Functions

 PluginClass (QObject *parent=0)
 constructor calls when the plugin loader first gets loaded
 
virtual ~PluginClass ()
 destructor
 
int getNumberOfInstances (void)
 returns the total number of times this plugin was loaded into menory
 
virtual void preload (int UniqueID, QString InstanceName, QString pluginName, VremVArray Arguments, VremVArray Licenses)
 preload called by the loader, it is in the main thread on init More...
 
virtual void load (int UniqueID, QString InstanceName, QString pluginName, VremVArray Arguments, VremVArray Licenses)
 load called by the loader, it is in the thread of the plugin on init More...
 
virtual void unload (int UniqueID)
 unload called by the loader on close, it is in the plugin thread More...
 
virtual void ReleaseInstance (int UniqueID)
 
void Begin (int UniqueID, QString InstanceName, QString pluginName, VremVArray Arguments, VremVArray Licenses)
 Begin called by the load. More...
 
void End (int UniqueID)
 End called by the loader. More...
 

Protected Attributes

QMutex LoaderPluginLock
 locks the plugin for thread destruction and creation and addition
 
QMutex memLock
 
QWaitCondition rtnToEnd
 Wait state for wake up.
 
QThreadpThread
 

Detailed Description

The PluginClass class the base for all plugin.

to make a plugin this must be inherited, the user should only use the virtual members all others are used and required use by the loader for thread safe operation

Member Function Documentation

◆ Begin()

void PluginClass::Begin ( int  UniqueID,
QString  InstanceName,
QString  pluginName,
VremVArray  Arguments,
VremVArray  Licenses 
)

Begin called by the load.

Parameters
UniqueID
InstanceName
pluginName
Arguments
Licenses

signal thread we have begun

◆ End()

void PluginClass::End ( int  UniqueID)

End called by the loader.

Parameters
UniqueID

◆ load()

virtual void PluginClass::load ( int  UniqueID,
QString  InstanceName,
QString  pluginName,
VremVArray  Arguments,
VremVArray  Licenses 
)
inlinevirtual

load called by the loader, it is in the thread of the plugin on init

Parameters
UniqueID
InstanceName
pluginName
Arguments
Licenses

◆ preload()

virtual void PluginClass::preload ( int  UniqueID,
QString  InstanceName,
QString  pluginName,
VremVArray  Arguments,
VremVArray  Licenses 
)
inlinevirtual

preload called by the loader, it is in the main thread on init

Parameters
UniqueID
InstanceName
pluginName
Arguments
Licenses

◆ unload()

virtual void PluginClass::unload ( int  UniqueID)
inlinevirtual

unload called by the loader on close, it is in the plugin thread

Parameters
UniqueID

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