cisst-saw
Loading...
Searching...
No Matches
vctDynamicVectorLoopEngines::SoVi< _incrementalOperationType, _elementOperationType > Class Template Reference

Implement operation of the form \(s_o = op_{incr}(op(v_i))\) for dynamic vectors. More...

#include <vctDynamicVectorLoopEngines.h>

Public Types

typedef _incrementalOperationType::OutputType OutputType

Static Public Member Functions

template<class _inputVectorType>
static OutputType Run (const _inputVectorType &inputVector)

Detailed Description

template<class _incrementalOperationType, class _elementOperationType>
class vctDynamicVectorLoopEngines::SoVi< _incrementalOperationType, _elementOperationType >

Implement operation of the form \(s_o = op_{incr}(op(v_i))\) for dynamic vectors.

This class uses a loop to perform incremental unary vector operations of the form

\[s_o = \mathrm{op_{incr}(\mathrm{op}(v_i))} \]

where \(v_i\) is the input vector and \(s_o\) is the scalar output. op stands for the unary operation performed elementwise on \(v_i\) and whose result are used incrementally as input for \(op_{incr}\). For a vector of size 3, the result is \(s_o = op_{incr}(op_{incr}(op(v[1]), op(v[0])), op(v[2])) \).

Parameters
_elementOperationTypeThe type of the unary operation.
See also
vctDynamicVectorLoopEngines

Member Typedef Documentation

◆ OutputType

template<class _incrementalOperationType, class _elementOperationType>
typedef _incrementalOperationType::OutputType vctDynamicVectorLoopEngines::SoVi< _incrementalOperationType, _elementOperationType >::OutputType

Member Function Documentation

◆ Run()

template<class _incrementalOperationType, class _elementOperationType>
template<class _inputVectorType>
OutputType vctDynamicVectorLoopEngines::SoVi< _incrementalOperationType, _elementOperationType >::Run ( const _inputVectorType & inputVector)
inlinestatic

Unroll the loop

Parameters
inputVectorThe input vector.

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