IAlgorithmProxy Class Referenceabstract

Application interface to an algorithm plugin. More...

Inheritance diagram for IAlgorithmProxy:
IKernelObject IObject

Public Member Functions

Input parameters
virtual OpenViBE::CIdentifier getNextInputParameterIdentifier (const OpenViBE::CIdentifier &rPreviousInputParameterIdentifier) const =0
 Gets next input parameter identifier given the previous input parameter. More...
 
virtual OpenViBE::CString getInputParameterName (const OpenViBE::CIdentifier &rInputParameterIdentifier) const =0
 Gets the name of a specific input parameter. More...
 
virtual OpenViBE::Kernel::IParametergetInputParameter (const OpenViBE::CIdentifier &rInputParameterIdentifier)=0
 Gets the parameter details of a specific input parameter. More...
 
Output parameters
virtual OpenViBE::CIdentifier getNextOutputParameterIdentifier (const OpenViBE::CIdentifier &rPreviousOutputParameterIdentifier) const =0
 Gets next output parameter identifier given the previous output parameter. More...
 
virtual OpenViBE::CString getOutputParameterName (const OpenViBE::CIdentifier &rOutputParameterIdentifier) const =0
 Gets the name of a specific input parameter. More...
 
virtual OpenViBE::Kernel::IParametergetOutputParameter (const OpenViBE::CIdentifier &rOutputParameterIdentifier)=0
 Gets the parameter details of a specific output parameter. More...
 
Trigger management
virtual OpenViBE::CIdentifier getNextOutputTriggerIdentifier (const OpenViBE::CIdentifier &rPreviousOutputTriggerIdentifier) const =0
 Gets next output trigger identifier given the previous output trigger. More...
 
virtual OpenViBE::CString getOutputTriggerName (const OpenViBE::CIdentifier &rOutputTriggerIdentifier) const =0
 Gets the name of a specific output trigger. More...
 
virtual OpenViBE::boolean isOutputTriggerActive (const OpenViBE::CIdentifier &rOutputTriggerIdentifier) const =0
 Tests whether an output trigger is activated or not. More...
 
virtual OpenViBE::CIdentifier getNextInputTriggerIdentifier (const OpenViBE::CIdentifier &rPreviousInputTriggerIdentifier) const =0
 Gets next input trigger identifier given the previous input trigger. More...
 
virtual OpenViBE::CString getInputTriggerName (const OpenViBE::CIdentifier &rInputTriggerIdentifier) const =0
 Gets the name of a specific input trigger. More...
 
virtual OpenViBE::boolean activateInputTrigger (const OpenViBE::CIdentifier &rInputTriggerIdentifier, const OpenViBE::boolean bTriggerState)=0
 Activates an input trigger before calling the processing function. More...
 
Algorithm functions
virtual OpenViBE::boolean initialize (void)=0
 Initializes the algorithm. More...
 
virtual OpenViBE::boolean uninitialize (void)=0
 Uninitializes the algorithm. More...
 
virtual OpenViBE::boolean process (void)=0
 Calls the processing method of the algorithm. More...
 
virtual OpenViBE::boolean process (const OpenViBE::CIdentifier &rTriggerIdentifier)=0
 Activates an input trigger and immediatly calls the processing method. More...
 
virtual OpenViBE::boolean isAlgorithmDerivedFrom (const OpenViBE::CIdentifier &rClassIdentifier)=0
 
- Public Member Functions inherited from IObject
virtual OpenViBE::CIdentifier getClassIdentifier (void) const =0
 Returns the final class identifier of the concrete class. More...
 
virtual OpenViBE::boolean isDerivedFromClass (const OpenViBE::CIdentifier &rClassIdentifier) const
 Checks if this object is compatible with a class identifier. More...
 
virtual OpenViBE::boolean acceptVisitor (OpenViBE::IObjectVisitor &rObjectVisitor)
 Requests this object to accept a visitor. More...
 

Detailed Description

Application interface to an algorithm plugin.

Author
Yann Renard (INRIA/IRISA)
Date
2007-11-21
See also
Plugins::IAlgorithm

This class is an easier to user interface to an IAlgorihtm instanciated object. Its purpose is to automatically handle input / output trigger activation and to help in calling processing methods.

Member Function Documentation

virtual OpenViBE::CIdentifier getNextInputParameterIdentifier ( const OpenViBE::CIdentifier rPreviousInputParameterIdentifier) const
pure virtual

Gets next input parameter identifier given the previous input parameter.

Parameters
rPreviousInputParameterIdentifier[in] : the previous input parameter
Returns
the next input parameter identifier if existing.
OV_UndefinedIdentifier if the previous was the last input parameter identifier.
Note
Passing OV_UndefinedIdentifier as rPreviousInputParameterIdentifier will cause this function to return the first input parameter identifier.
virtual OpenViBE::CString getInputParameterName ( const OpenViBE::CIdentifier rInputParameterIdentifier) const
pure virtual

Gets the name of a specific input parameter.

Parameters
rInputParameterIdentifier[in] : the identifier of the parameter which name should be returned
Returns
The name of the specified input parameter on success
En empty string on error
virtual OpenViBE::Kernel::IParameter* getInputParameter ( const OpenViBE::CIdentifier rInputParameterIdentifier)
pure virtual

Gets the parameter details of a specific input parameter.

Parameters
rInputParameterIdentifier[in] : the identifier of the parameter which details should be returned
Returns
the parameter pointer that corresponds to the provided identifier.
NULL in case of error.
virtual OpenViBE::CIdentifier getNextOutputParameterIdentifier ( const OpenViBE::CIdentifier rPreviousOutputParameterIdentifier) const
pure virtual

Gets next output parameter identifier given the previous output parameter.

Parameters
rPreviousOutputParameterIdentifier[in] : the previous output parameter
Returns
the next output parameter identifier if existing.
OV_UndefinedIdentifier if the previous was the last output parameter identifier.
Note
Passing OV_UndefinedIdentifier as rPreviousOutputParameterIdentifier will cause this function to return the first output parameter identifier.
virtual OpenViBE::CString getOutputParameterName ( const OpenViBE::CIdentifier rOutputParameterIdentifier) const
pure virtual

Gets the name of a specific input parameter.

Parameters
rOutputParameterIdentifier[in] : the identifier of the parameter which name should be returned
Returns
The name of the specified input parameter on success
En empty string on error
virtual OpenViBE::Kernel::IParameter* getOutputParameter ( const OpenViBE::CIdentifier rOutputParameterIdentifier)
pure virtual

Gets the parameter details of a specific output parameter.

Parameters
rOutputParameterIdentifier[in] : the identifier of the parameter which details should be returned
Returns
the parameter pointer that corresponds to the provided identifier.
NULL in case of error.
virtual OpenViBE::CIdentifier getNextOutputTriggerIdentifier ( const OpenViBE::CIdentifier rPreviousOutputTriggerIdentifier) const
pure virtual

Gets next output trigger identifier given the previous output trigger.

Parameters
rPreviousOutputTriggerIdentifier[in] : the previous output trigger
Returns
the next output trigger identifier if existing.
OV_UndefinedIdentifier if the previous was the last output trigger identifier.
Note
Passing OV_UndefinedIdentifier as rPreviousOutputTriggerIdentifier will cause this function to return the first output trigger identifier.
virtual OpenViBE::CString getOutputTriggerName ( const OpenViBE::CIdentifier rOutputTriggerIdentifier) const
pure virtual

Gets the name of a specific output trigger.

Parameters
rOutputTriggerIdentifier[in] : the identifier of the trigger which name should be returned
Returns
The name of the specified output trigger on success
En empty string on error
virtual OpenViBE::boolean isOutputTriggerActive ( const OpenViBE::CIdentifier rOutputTriggerIdentifier) const
pure virtual

Tests whether an output trigger is activated or not.

Parameters
rOutputTriggerIdentifier[in] : the identifier of the output trigger which activation status should be returned
Returns
true if the provided trigger is currently active.
false if the provided trigger is not currently active or does not exist.
virtual OpenViBE::CIdentifier getNextInputTriggerIdentifier ( const OpenViBE::CIdentifier rPreviousInputTriggerIdentifier) const
pure virtual

Gets next input trigger identifier given the previous input trigger.

Parameters
rPreviousInputTriggerIdentifier[in] : the previous input trigger
Returns
the next input trigger identifier if existing.
OV_UndefinedIdentifier if the previous was the last input trigger identifier.
Note
Passing OV_UndefinedIdentifier as rPreviousInputTriggerIdentifier will cause this function to return the first input trigger identifier.
virtual OpenViBE::CString getInputTriggerName ( const OpenViBE::CIdentifier rInputTriggerIdentifier) const
pure virtual

Gets the name of a specific input trigger.

Parameters
rInputTriggerIdentifier[in] : the identifier of the trigger which name should be returned
Returns
The name of the specified input trigger on success
En empty string on error
virtual OpenViBE::boolean activateInputTrigger ( const OpenViBE::CIdentifier rInputTriggerIdentifier,
const OpenViBE::boolean  bTriggerState 
)
pure virtual

Activates an input trigger before calling the processing function.

Parameters
rInputTriggerIdentifier[in] : the identifier of the input to activate
bTriggerState[in]: the new trigger state this input trigger should take (true for active, false for inactive)
Returns
true in case the state was correctly changed.
false in case the state was not changed or the provided trigger identifier does not exist.
virtual OpenViBE::boolean initialize ( void  )
pure virtual

Initializes the algorithm.

Returns
true in case of success.
false in case of error.
Note
The algorithm context is managed internally
Precondition
The algorithm is not yet initialized
virtual OpenViBE::boolean uninitialize ( void  )
pure virtual

Uninitializes the algorithm.

Returns
true in case of success.
false in case of error.
Note
The algorithm context is managed internally
Precondition
The algorithm is initialized
virtual OpenViBE::boolean process ( void  )
pure virtual

Calls the processing method of the algorithm.

Returns
true in case of success.
false in case of error.
Note
The algorithm context is managed internally
Precondition
The algorithm is initialized
virtual OpenViBE::boolean process ( const OpenViBE::CIdentifier rTriggerIdentifier)
pure virtual

Activates an input trigger and immediatly calls the processing method.

Parameters
rTriggerIdentifier[in] : the identifier of the input trigger to activate
Returns
true in case of success.
false in case the trigger does not exist or the processing did not succeed.
Note
The algorithm context is managed internally
Precondition
The algorithm is initialized