dt_helpers.hpp File Reference

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

#include <functional>
#include <tuple>
#include "abst_ext.hpp"
#include "dt_process_constructors.hpp"
Include dependency graph for dt_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::DT
 The namespace for synchronous MoC.
 

Functions

template<class T0 , template< class > class OIf, class T1 , template< class > class I1If>
comb< T0, T1 > * ForSyDe::DT::make_comb (std::string pName, typename comb< T0, T1 >::functype _func, 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::DT::make_comb2 (std::string pName, typename comb2< T0, T1, T2 >::functype _func, 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::DT::make_comb3 (std::string pName, typename comb3< T0, T1, T2, T3 >::functype _func, 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::DT::make_comb4 (std::string pName, typename comb4< T0, T1, T2, T3, T4 >::functype _func, 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::DT::make_delay (std::string pName, abst_ext< T > initval, OIf< T > &outS, IIf< T > &inpS)
 Helper function to construct a delay process. More...
 
template<typename IT , typename ST , typename OT , template< class > class IIf, template< class > class OIf>
mealyT< IT, ST, OT > * ForSyDe::DT::make_mealyT (std::string pName, typename mealyT< IT, ST, OT >::p_functype gamma, typename mealyT< IT, ST, OT >::ns_functype _ns_func, typename mealyT< IT, ST, OT >::od_functype _od_func, ST init_st, OIf< OT > &outS, IIf< IT > &inpS)
 Helper function to construct a mealyT process. More...
 
template<class T , template< class > class OIf>
constant< T > * ForSyDe::DT::make_constant (std::string pName, abst_ext< 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::DT::make_source (std::string pName, typename source< T >::functype _func, abst_ext< T > initval, unsigned long long take, OIf< T > &outS)
 Helper function to construct a source process. More...
 
template<class T , template< class > class OIf>
vsource< T > * ForSyDe::DT::make_vsource (std::string pName, std::vector< std::tuple< unsigned int, T >> in_vec, OIf< T > &outS)
 Helper function to construct a vsource process. More...
 
template<class T , template< class > class IIf>
sink< T > * ForSyDe::DT::make_sink (std::string pName, typename sink< T >::functype _func, IIf< T > &inS)
 Helper function to construct a sink process. More...
 
template<class T1 , template< class > class I1If, class T2 , template< class > class I2If, template< class > class OIf>
zip< T1, T2 > * ForSyDe::DT::make_zip (std::string pName, OIf< std::tuple< abst_ext< T1 >, abst_ext< 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::DT::make_unzip (std::string pName, IIf< std::tuple< abst_ext< T1 >, abst_ext< T2 >>> &inpS, 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::DT::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 DT MoC.

This file includes helper functions which facilliate construction of processes in the discrete-time MoC