Lumiera  0.pre.03
»edit your freedom«
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
SimpleFunctionInvocationAdapter< MAN, FUN > Struct Template Reference

#include "steam/engine/weaving-pattern-builder.hpp"

Description

template<class MAN, class FUN>
struct steam::engine::SimpleFunctionInvocationAdapter< MAN, FUN >

Adapter to handle a simple yet common setup for media processing.

  • somehow we can invoke processing as a simple function
  • this function takes two arrays: the input- and output buffers
    Remarks
    this setup is useful for testing, and as documentation example; actually the FeedManifold is mixed in as baseclass, and the buffer pointers are retrieved from the BuffHandles.
    Template Parameters
    MANa FeedManifold, providing arrays of BuffHandles
    FUNthe processing function

Definition at line 211 of file weaving-pattern-builder.hpp.

Public Types

enum  {
  N = MAN::STORAGE_SIZ,
  FAN_I = _ProcFun<FUN>::FAN_I,
  FAN_O = _ProcFun<FUN>::FAN_O
}
 
using ArrayI = std::array< BuffI *, FAN_I >
 
using ArrayO = std::array< BuffO *, FAN_O >
 
using BuffI = typename _ProcFun< FUN >::BuffI
 
using BuffO = typename _ProcFun< FUN >::BuffO
 

Public Member Functions

template<typename... INIT>
 SimpleFunctionInvocationAdapter (INIT &&...funSetup)
 
void connect (uint fanIn, uint fanOut)
 
void invoke ()
 

Public Attributes

ArrayI inParam
 
ArrayO outParam
 
FUN process
 
+ Inheritance diagram for SimpleFunctionInvocationAdapter< MAN, FUN >:
+ Collaboration diagram for SimpleFunctionInvocationAdapter< MAN, FUN >:

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