ERC CISST - cisst software

vctStoreBackBinaryOperations< _inputOutputType, _input2Type > Class Template Reference

#include <vctStoreBackBinaryOperations.h>

List of all members.


Detailed Description

template<class _inputOutputType, class _input2Type = _inputOutputType>
class vctStoreBackBinaryOperations< _inputOutputType, _input2Type >

Define binary operations between objects as classes.

Class vctStoreBackBinaryOperations is an envelope that wraps binary store back operations between objects as classes. StoreBackOperations defines internal classes such as Addition, Subtraction, etc., and each of the internal classes has one static function named Operate(), which wraps the corresponding operation. The signature of a typical Operate() is

  static inline OutputType & Operate(Input1Type & input1, const Input2Type & input2)
  

Where OutputType, Input1Type, Input2Type are the types of the result and the two operands.

By abstracting very simple operations as inline functions, we can plug the StoreBackOperations internal classes into templated vector operation engines. See an example of such engine in vctFixedSizeVectorRecursiveEngines.h , and an example of plugging an operation into the engine in vctFixedSizeVectorOperations.h .

Parameters:
inputOutputType the type of the first (left-side) operand, which is an input output
input2Type the type of the second (right-side) operand)
Note:
This class contains the binary operation Swap, whose operation signature is
  static inline void Operate(Input1Type & input1, Input2Type & input2)
  
with no const or return type. It was included here since we didn't want to have a special file for just one operation.
See also:
Addition Subtraction Multiplication Division FirstOperand SecondOperand Maximum Minimum

Definition at line 68 of file vctStoreBackBinaryOperations.h.

Public Types

Classes


The documentation for this class was generated from the following file:
erc-cisst-devel<at>lists.johnshopkins.edu