itom 1.3.0
ito::AddInAlgo Class Reference

base class for all "algorithm" plugin classes More...

#include <addInInterface.h>

Inheritance diagram for ito::AddInAlgo:
ito::AddInBase

List of all members.

Classes

class  AlgoWidgetDef
 container for publishing widgets provided by any plugin More...
class  FilterDef
 container for publishing filters provided by any plugin More...

Public Types

enum  tAlgoCategory { catNone = 0x0000, catDiskIO = 0x0001, catAnalyseDataObject = 0x0002, catPlotDataObject = 0x0004 }
enum  tAlgoInterface {
  iNotSpecified = 0x0000, iReadDataObject = 0x0001, iWriteDataObject = 0x0002, iReadPointCloud = 0x0004,
  iWritePointCloud = 0x0008, iReadPolygonMesh = 0x0010, iWritePolygonMesh = 0x0020, iPlotSingleObject = 0x0040
}
typedef ito::RetVal(* t_filter )(QVector< ito::ParamBase > *paramsMand, QVector< ito::ParamBase > *paramsOpt, QVector< ito::ParamBase > *paramsOut)
typedef QWidget *(* t_algoWidget )(QVector< ito::ParamBase > *paramsMand, QVector< ito::ParamBase > *paramsOpt, ito::RetVal &retValue)
typedef ito::RetVal(* t_filterParam )(QVector< ito::Param > *paramsMand, QVector< ito::Param > *paramsOpt, QVector< ito::Param > *paramsOut)
 possible categories for filter or widget-methods

Public Slots

virtual ito::RetVal getParam (QSharedPointer< ito::Param >, ItomSharedSemaphore *=NULL)
 method for the retrieval of a parameter. The actual value is always passed as ito::Param (must be overwritten). See also setParam
virtual ito::RetVal setParam (QSharedPointer< ito::ParamBase >, ItomSharedSemaphore *=NULL)
 method to set a parameter. The actual value is always passed as ito::ParamBase (must be overwritten). See also getParam

Public Member Functions

ito::RetVal getFilterList (QHash< QString, FilterDef * > &fList) const
ito::RetVal getAlgoWidgetList (QHash< QString, AlgoWidgetDef * > &awList) const
ito::RetVal rejectFilter (const QString &name)
ito::RetVal rejectAlgoWidget (const QString &name)

Static Protected Member Functions

static ito::RetVal prepareParamVectors (QVector< ito::Param > *paramsMand, QVector< ito::Param > *paramsOpt, QVector< ito::Param > *paramsOut)

Protected Attributes

QHash< QString, FilterDef * > m_filterList
QHash< QString, AlgoWidgetDef * > m_algoWidgetList

Detailed Description

base class for all "algorithm" plugin classes

This class is one step further down the line from AddInBase. "Algorithm" plugins must be derived from this class which is derived from AddInBase. Compared to AddInDataIO and AddInActuator the AddInAlgo class is fairly simple. It does not have an init function or a close function. In the algo base class at the moment no further methods or variables are declared - it serves more as an organisation class, putting all actual plugins to the same level of inheritance.


Member Enumeration Documentation

Enumerator:
catNone 

default: no category

catDiskIO 

category for saving or loading data from hard drive

catAnalyseDataObject 

category for methods analysing data objects

catPlotDataObject 

category for methods plotting data objects

Enumerator:
iNotSpecified 

default: filter or widget does not fit to any interface

iReadDataObject 

interface for loading content of files into a data object

iWriteDataObject 

interface for saving data object to file

iReadPointCloud 

interface for loading content of files into a point cloud

iWritePointCloud 

interface for saving point cloud to file

iReadPolygonMesh 

interface for loading content of files into a polygon mesh

iWritePolygonMesh 

interface for saving polygon mesh to file

iPlotSingleObject 

interface for ploting dataObjects via the GUI


The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends