ForSyDe Namespace Reference

The namespace for ForSyDe. More...

Namespaces

 CT
 The namespace for CT MoC.
 
 DDE
 The namespace for DDE MoC.
 
 DT
 The namespace for synchronous MoC.
 
 SDF
 The namespace for synchronous dataflow MoC.
 
 SY
 The namespace for synchronous MoC.
 
 UT
 The namespace for untimed MoC.
 

Classes

class  abst_ext
 Absent-extended data types. More...
 
class  CT2DDE
 Process constructor for a CT2DDE MoC interface. More...
 
class  CT2DDEf
 Process constructor for a CT2DDEf MoC interface. More...
 
class  CT2SY
 Process constructor for a CT2SY MoC interface. More...
 
class  DDE2CT
 Process constructor for a DDE2CT MoC interfaces. More...
 
class  DDE2SY
 Process constructor for a DDE2SY MoC interface. More...
 
class  in_port
 The in_port port is used for input ports of ForSyDe processes. More...
 
class  introspective_channel
 A helper class used to provide introspective channels. More...
 
class  introspective_port
 A helper class used to provide introspective ports. More...
 
class  out_port
 The UT_out port is used for output ports of UT processes. More...
 
struct  PortInfo
 This type is used in the process base class to store structural information. More...
 
class  process
 The process constructor which defines the abstract semantics of execution. More...
 
class  SDF2SY
 Process constructor for a SDF2SY MoC interface. More...
 
class  signal
 A ForSyDe signal is used to inter-connect processes. More...
 
class  sub_signal
 The sub-signal type used to construct a CT signal. More...
 
class  SY2CT
 Process constructor for a SY2CT MoC interfaces. More...
 
class  SY2DDE
 Process constructor for a SY2DDE MoC interfaces. More...
 
class  SY2SDF
 Process constructor for a SY2SDF MoC interfaces. More...
 
struct  tt_event
 Time-tagged data types. More...
 
class  XMLExport
 Abstract class used to Export a system as an XML file. More...
 

Typedefs

typedef double CTTYPE
 Type of the values used in the CT MoC (currently fixed)
 
template<typename T >
using ttn_event = tt_event< abst_ext< T >>
 The time-tagged data-type with an absent-extended value representing null values.
 

Enumerations

enum  bound_type { PORT, CHANNEL }
 Type of the object bound to a port.
 
enum  A2DMode { LINEAR, HOLD }
 Operation modes for the SY2CT converter.
 

Functions

template<class OIf , class IIf >
SY2CTmake_SY2CT (std::string pName, sc_time sample_period, A2DMode op_mode, OIf &outS, IIf &inpS)
 Helper function to construct an SY2CT MoC interface. More...
 
template<class OIf , class IIf >
CT2SYmake_CT2SY (std::string pName, sc_time sample_period, OIf &outS, IIf &inpS)
 Helper function to construct an CT2SY MoC interface. More...
 
template<class T , template< class > class OIf, class IIf >
CT2DDE< T > * make_CT2DDE (std::string pName, OIf< T > &outS, IIf &inpS1, DDE::in_port< unsigned int > inpS2)
 Helper function to construct an CT2DDE MoC interface. More...
 
template<class T , template< class > class OIf, class IIf >
CT2DDEf< T > * make_CT2DDEf (std::string pName, sc_time sampling_period, OIf< T > &outS, IIf &inpS)
 Helper function to construct an CT2DDEf MoC interface. More...
 
template<class T , class OIf , template< class > class IIf>
DDE2CT< T > * make_DDE2CT (std::string pName, A2DMode op_mode, OIf &outS, IIf< T > &inpS)
 Helper function to construct an DDE2CT MoC interface. More...
 
template<class T , template< class > class OIf, template< class > class IIf>
SY2SDF< T > * make_SY2SDF (std::string pName, OIf< T > &outS, IIf< T > &inpS)
 Helper function to construct an SY2SDF MoC interface. More...
 
template<class T , template< class > class OIf, template< class > class IIf>
SDF2SY< T > * make_SDF2SY (std::string pName, OIf< T > &outS, IIf< T > &inpS)
 Helper function to construct an SDF2SY MoC interface. More...
 
template<class T , template< class > class OIf, template< class > class IIf>
SY2DDE< T > * make_SY2DDE (std::string pName, sc_time sample_period, OIf< T > &outS, IIf< T > &inpS)
 Helper function to construct an SY2DDE MoC interface. More...
 
template<class T , template< class > class OIf, template< class > class IIf>
DDE2SY< T > * make_DDE2SY (std::string pName, sc_time sample_period, OIf< T > &outS, IIf< T > &inpS)
 Helper function to construct an DDE2SY MoC interface. More...
 
void get_moc_and_pc (const std::string &kind, std::string &moc, std::string &pc)
 Extracts the MoC and the process constructor name from a ForSyDe kind.
 

Detailed Description

The namespace for ForSyDe.

Based on the GDB/Machine Interface library (libmigdb: http://libmigdb.sourceforge.net/)

General namespace that includes everything provided by the SFF. Each MoC has its own sub-namespace.

Function Documentation

template<class T , template< class > class OIf, class IIf >
CT2DDE<T>* ForSyDe::make_CT2DDE ( std::string  pName,
OIf< T > &  outS,
IIf &  inpS1,
DDE::in_port< unsigned int >  inpS2 
)
inline

Helper function to construct an CT2DDE MoC interface.

This function is used to construct a MoC interface (SystemC module) from the continuous-time to the discrete-event MoC and connect its input and output signals. It provides a more functional style definition of a ForSyDe MI. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.

template<class T , template< class > class OIf, class IIf >
CT2DDEf<T>* ForSyDe::make_CT2DDEf ( std::string  pName,
sc_time  sampling_period,
OIf< T > &  outS,
IIf &  inpS 
)
inline

Helper function to construct an CT2DDEf MoC interface.

This function is used to construct a MoC interface (SystemC module) from the continuous-time to the discrete-event MoC and connect its input and output signals. It provides a more functional style definition of a ForSyDe MI. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.

template<class OIf , class IIf >
CT2SY* ForSyDe::make_CT2SY ( std::string  pName,
sc_time  sample_period,
OIf &  outS,
IIf &  inpS 
)
inline

Helper function to construct an CT2SY MoC interface.

This function is used to construct a MoC interface (SystemC module) from the continuous-time to the synchronous MoC and connect its input and output signals. It provides a more functional style definition of a ForSyDe MI. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.

Parameters
sample_periodThe sampling period
template<class T , class OIf , template< class > class IIf>
DDE2CT<T>* ForSyDe::make_DDE2CT ( std::string  pName,
A2DMode  op_mode,
OIf &  outS,
IIf< T > &  inpS 
)
inline

Helper function to construct an DDE2CT MoC interface.

This function is used to construct a MoC interface (SystemC module) from the discrete-event MoC to the continuous-time and connect its input and output signals. It provides a more functional style definition of a ForSyDe MI. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.

Parameters
op_modeThe operation mode
template<class T , template< class > class OIf, template< class > class IIf>
DDE2SY<T>* ForSyDe::make_DDE2SY ( std::string  pName,
sc_time  sample_period,
OIf< T > &  outS,
IIf< T > &  inpS 
)
inline

Helper function to construct an DDE2SY MoC interface.

This function is used to construct a MoC interface (SystemC module) from the discrete-event MoC to the synchronous and connect its input and output signals. It provides a more functional style definition of a ForSyDe MI. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.

Parameters
sample_periodThe unified period length
template<class T , template< class > class OIf, template< class > class IIf>
SDF2SY<T>* ForSyDe::make_SDF2SY ( std::string  pName,
OIf< T > &  outS,
IIf< T > &  inpS 
)
inline

Helper function to construct an SDF2SY MoC interface.

This function is used to construct a MoC interface (SystemC module) from the synchronous dataflow MoC to the synchronous and connect its input and output signals. It provides a more functional style definition of a ForSyDe MI. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.

template<class OIf , class IIf >
SY2CT* ForSyDe::make_SY2CT ( std::string  pName,
sc_time  sample_period,
A2DMode  op_mode,
OIf &  outS,
IIf &  inpS 
)
inline

Helper function to construct an SY2CT MoC interface.

This function is used to construct a MoC interface (SystemC module) from the synchronous to the continuous-time MoC and connect its input and output signals. It provides a more functional style definition of a ForSyDe MI. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.

Parameters
sample_periodThe sampling period
op_modeThe operation mode
template<class T , template< class > class OIf, template< class > class IIf>
SY2DDE<T>* ForSyDe::make_SY2DDE ( std::string  pName,
sc_time  sample_period,
OIf< T > &  outS,
IIf< T > &  inpS 
)
inline

Helper function to construct an SY2DDE MoC interface.

This function is used to construct a MoC interface (SystemC module) from the synchronous to discrete-event MoC and connect its input and output signals. It provides a more functional style definition of a ForSyDe MI. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.

Parameters
sample_periodThe unified period length
template<class T , template< class > class OIf, template< class > class IIf>
SY2SDF<T>* ForSyDe::make_SY2SDF ( std::string  pName,
OIf< T > &  outS,
IIf< T > &  inpS 
)
inline

Helper function to construct an SY2SDF MoC interface.

This function is used to construct a MoC interface (SystemC module) from the synchronous to synchronous dataflow MoC and connect its input and output signals. It provides a more functional style definition of a ForSyDe MI. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.