Workspace 6.21.5
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
HeterogeneousParallelComputingPlugin Class Reference

A Workspace plugin for Heterogeneous Parallel Computing with OpenCL.

#include <HPC/heterogeneousparallelcomputingplugin.h>

Inheritance diagram for HeterogeneousParallelComputingPlugin:
[legend]

Public Member Functions

QString getPackageURI () const override
 
bool setup () override
 
- Public Member Functions inherited from WorkspacePlugin
 WorkspacePlugin (const QString &name, const QString &displayName, const QString &version, const QString &buildDescription=QString::null)
 
 WorkspacePlugin (const QString &name, const QString &displayName, int versionMajor, int versionMinor, int versionRevision, const QString &buildDescription=QString::null)
 
virtual ~WorkspacePlugin ()
 
virtual PluginConfigcreatePluginConfig ()
 
virtual PluginMenucreatePluginMenu ()
 
const QString & getBuildDescription () const
 
virtual QStringList getCustomWidgetPaths () const
 
virtual const DataExecution::DataFactorygetDataFactory (const QString &dataType) const
 
const DataExecution::DataFactorygetDataFactory (size_type index) const
 
virtual QString getDefaultHelpPagePath () const
 
virtual QString getDefaultIconPath () const
 
virtual WorkspacePluginList getDependencies () const
 
const QString & getDisplayName () const
 
virtual QString getHelpFile () const
 
const QString & getLibraryFileName () const
 
virtual QStringList getLicensePaths () const
 
const QString & getName () const
 
size_type getNumDataFactories () const
 
size_type getNumOperationFactories () const
 
size_type getNumWidgetFactories () const
 
virtual const DataExecution::OperationFactorygetOperationFactory (const QString &opType, bool ignoreAliasedOperations=false) const
 
const DataExecution::OperationFactorygetOperationFactory (size_type index) const
 
virtual QString getPackageURI () const
 
virtual const PreviousVersionNameMapgetPreviousNames () const
 
const QString & getVersion () const
 
const Widgets::WidgetFactorygetWidgetFactory (size_type index) const
 
virtual bool isVisible () const
 
void logText (const QString &message)
 
virtual void onWorkspaceClose ()
 
void setLibraryFileName (const QString &fileName)
 
virtual bool setup ()=0
 
virtual bool setupAuthenticationProvider (Authentication::ProviderManager &manager)
 
virtual bool setupSchedulerProvider (DataExecution::SchedulerProviderManager &manager)
 
void showHelp (const QMap< QString, QUrl > &links, const QString &keyword="")
 
void showHelp (const QString &keyword)
 
void showHelp (const QUrl &url)
 
bool wasPreviouslyNamed (const QString &oldName) const
 

Static Public Member Functions

static HeterogeneousParallelComputingPlugingetInstance ()
 

Protected Member Functions

const CSIRO::DataExecution::DataFactorygetAliasedDataFactory (const QString &dataType) const override
 
const CSIRO::DataExecution::OperationFactorygetAliasedOperationFactory (const QString &opType) const override
 
- Protected Member Functions inherited from WorkspacePlugin
bool addFactory (const DataExecution::DataFactory &factory)
 
bool addFactory (const DataExecution::OperationFactory &factory)
 
bool addFactory (const DataExecution::TypeAdaptorFactory &factory, bool replaceExisting=false)
 
bool addFactory (const Widgets::WidgetFactory &factory)
 
bool addTranslation (const QString &fileName="")
 
void addWorkspaceCollection (const QString &location)
 
const DataExecution::DataFactoryforwardDataFactoryRequest (const QString &pluginName, const QString &dataType) const
 
const DataExecution::OperationFactoryforwardOperationFactoryRequest (const QString &pluginName, const QString &opType) const
 
virtual const DataExecution::DataFactorygetAliasedDataFactory (const QString &dataType) const
 
virtual const DataExecution::OperationFactorygetAliasedOperationFactory (const QString &opType) const
 

Additional Inherited Members

- Public Types inherited from WorkspacePlugin
using PreviousVersionNameMap = QMap< QString, QString >
 
using size_type = size_t
 
using WorkspacePluginList = QList< WorkspacePlugin * >
 
- Static Public Attributes inherited from WorkspacePlugin
static const QString DEFAULT_ICON_PATH = "images:/Workspace/core/operation_icon.png"
 

Member Function Documentation

◆ getAliasedDataFactory()

const CSIRO::DataExecution::DataFactory * getAliasedDataFactory ( const QString &  dataType) const
overrideprotectedvirtual
Parameters
dataTypeName of a data type.

If a data type is renamed, this function provides a backwards compatibility mechanism so that the plugin can provide the new factory that corresponds to an old name. By default, this function returns a null pointer, but subclasses can override it to provide an appropriate factory if a data type is renamed. Note that this function is only called by getDataFactory() if it could not find the factory from the plugin directly. Subclasses can assume that the request for dataType will only be made when the plugin has already been correctly identified by name (ie no functionality is provided for renaming a plugin).

Returns
The factory that should be used for data objects of the type dataType, or a null pointer if no appropriate factory exists.

Reimplemented from WorkspacePlugin.

◆ getAliasedOperationFactory()

const CSIRO::DataExecution::OperationFactory * getAliasedOperationFactory ( const QString &  opType) const
overrideprotectedvirtual
Parameters
opTypeName of an operation.

If an operation is renamed, this function provides a backwards compatibility mechanism so that the plugin can provide the new factory that corresponds to an old name. By default, this function returns a null pointer, but subclasses can override it to provide an appropriate factory if an operation is renamed. Note that this function is only called by getOperationFactory() if it could not find the factory from the operation factory manager. Subclasses can assume that the request for opType will only be made when the plugin has already been correctly identified by name (ie no functionality is provided for renaming a plugin).

Returns
The factory that should be used for operations of the type opType, or a null pointer if no appropriate factory exists.

Reimplemented from WorkspacePlugin.

◆ getInstance()

HeterogeneousParallelComputingPlugin & getInstance ( )
static
Returns
The singleton instance of this plugin.

◆ getPackageURI()

QString getPackageURI ( ) const
overridevirtual
Returns
A unique URI that can be used to record the origin of this plugin for provenance recording purposes. This URI should be unique for each platform and released of this plugin.

An example implementation might be: return getName() + "/" + getVersion() + "/" + System::Utilities::getPlatformString() + "/" + System::Utilities::getPlatformArchitectureString();

Reimplemented from WorkspacePlugin.

◆ setup()

bool setup ( )
overridevirtual

This function will be called by the workspace application when the plugin is loaded. The function must register all factories it supplies (operations, data objects, etc.) with calls to addFactory(). Note that this function is the only place where addFactory() should be called (ie never in a plugin's constructor). A plugin may also do any other processing it requires in setup() before the plugin is used.

Returns
True if successful, false otherwise. If the plugin is being loaded and setup() returns false, the loading of the plugin is assumed to have failed and it will therefore not be available to clients.
See also
setupSchedulerProvider(), setupAuthenticationProvider()

Implements WorkspacePlugin.