sdf_helpers.hpp File Reference

Implements helper primitives for modeling in the SDF MoC. More...

#include <functional>
#include <tuple>
#include "sdf_process_constructors.hpp"
Include dependency graph for sdf_helpers.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 ForSyDe
 The namespace for ForSyDe.
 
 ForSyDe::SDF
 The namespace for synchronous dataflow MoC.
 

Functions

template<class T0 , template< class > class OIf, class T1 , template< class > class I1If>
comb< T0, T1 > * ForSyDe::SDF::make_comb (std::string pName, typename comb< T0, T1 >::functype _func, unsigned int o1toks, unsigned int i1toks, OIf< T0 > &outS, I1If< T1 > &inp1S)
 Helper function to construct a comb process. More...
 
template<class T0 , template< class > class OIf, class T1 , template< class > class I1If, class T2 , template< class > class I2If>
comb2< T0, T1, T2 > * ForSyDe::SDF::make_comb2 (std::string pName, typename comb2< T0, T1, T2 >::functype _func, unsigned int o1toks, unsigned int i1toks, unsigned int i2toks, OIf< T0 > &outS, I1If< T1 > &inp1S, I2If< T2 > &inp2S)
 Helper function to construct a comb2 process. More...
 
template<class T0 , template< class > class OIf, class T1 , template< class > class I1If, class T2 , template< class > class I2If, class T3 , template< class > class I3If>
comb3< T0, T1, T2, T3 > * ForSyDe::SDF::make_comb3 (std::string pName, typename comb3< T0, T1, T2, T3 >::functype _func, unsigned int o1toks, unsigned int i1toks, unsigned int i2toks, unsigned int i3toks, OIf< T0 > &outS, I1If< T1 > &inp1S, I2If< T2 > &inp2S, I3If< T3 > &inp3S)
 Helper function to construct a comb3 process. More...
 
template<class T0 , template< class > class OIf, class T1 , template< class > class I1If, class T2 , template< class > class I2If, class T3 , template< class > class I3If, class T4 , template< class > class I4If>
comb4< T0, T1, T2, T3, T4 > * ForSyDe::SDF::make_comb4 (std::string pName, typename comb4< T0, T1, T2, T3, T4 >::functype _func, unsigned int o1toks, unsigned int i1toks, unsigned int i2toks, unsigned int i3toks, unsigned int i4toks, OIf< T0 > &outS, I1If< T1 > &inp1S, I2If< T2 > &inp2S, I3If< T3 > &inp3S, I4If< T4 > &inp4S)
 Helper function to construct a comb4 process. More...
 
template<typename T , template< class > class IIf, template< class > class OIf>
delay< T > * ForSyDe::SDF::make_delay (std::string pName, T initval, OIf< T > &outS, IIf< T > &inpS)
 Helper function to construct a delay process. More...
 
template<typename T , template< class > class IIf, template< class > class OIf>
delayn< T > * ForSyDe::SDF::make_delayn (std::string pName, T initval, unsigned int n, OIf< T > &outS, IIf< T > &inpS)
 Helper function to construct a delayn process. More...
 
template<class T , template< class > class OIf>
constant< T > * ForSyDe::SDF::make_constant (std::string pName, T initval, unsigned long long take, OIf< T > &outS)
 Helper function to construct a constant source process. More...
 
template<class T , template< class > class OIf>
source< T > * ForSyDe::SDF::make_source (std::string pName, typename source< T >::functype _func, T initval, unsigned long long take, OIf< T > &outS)
 Helper function to construct a source process. More...
 
template<class T , template< class > class OIf>
file_source< T > * ForSyDe::SDF::make_file_source (std::string pName, typename file_source< T >::functype _func, std::string file_name, OIf< T > &outS)
 Helper function to construct a file_source process. More...
 
template<class T , template< class > class OIf>
vsource< T > * ForSyDe::SDF::make_vsource (const std::string &pName, const std::vector< T > &in_vec, OIf< T > &outS)
 Helper function to construct a vector source process. More...
 
template<class T , template< class > class IIf>
sink< T > * ForSyDe::SDF::make_sink (std::string pName, typename sink< T >::functype _func, IIf< T > &inS)
 Helper function to construct a sink process. More...
 
template<class T , template< class > class IIf>
file_sink< T > * ForSyDe::SDF::make_file_sink (std::string pName, typename file_sink< T >::functype _func, std::string file_name, IIf< T > &inS)
 Helper function to construct a file_sink process. More...
 
template<class T1 , template< class > class I1If, class T2 , template< class > class I2If, template< class > class OIf>
zip< T1, T2 > * ForSyDe::SDF::make_zip (std::string pName, unsigned int i1toks, unsigned int i2toks, OIf< std::tuple< std::vector< T1 >, std::vector< T2 >>> &outS, I1If< T1 > &inp1S, I2If< T2 > &inp2S)
 Helper function to construct a zip process. More...
 
template<template< class > class IIf, class T1 , template< class > class O1If, class T2 , template< class > class O2If>
unzip< T1, T2 > * ForSyDe::SDF::make_unzip (std::string pName, IIf< std::tuple< std::vector< T1 >, std::vector< T2 >>> &inpS, unsigned int o1toks, unsigned int o2toks, O1If< T1 > &out1S, O2If< T2 > &out2S)
 Helper function to construct an unzip process. More...
 
template<typename T , template< class > class IIf, template< class > class OIf>
fanout< T > * ForSyDe::SDF::make_fanout (std::string pName, OIf< T > &outS, IIf< T > &inpS)
 Helper function to construct an unzipN process. More...
 

Detailed Description

Implements helper primitives for modeling in the SDF MoC.

This file includes helper functions which facilliate construction of processes in the SY MoC