template class xf::dsp::aie::widget::api_cast::widget_api_cast_graph

#include "widget_api_cast_graph.hpp"


widget_api_cast is a design to change the interface between connected components. This component is able to change the stream interface to window interface and vice-versa. In addition, multiple input stream ports may be defined, as well as multiple copies of the window output.

These are the templates to configure the Widget API Cast class.


TT_DATA describes the type of individual data samples input to and output from the function. This is a typename and must be one of the following: int16, cint16, int32, cint32, float, cfloat.
TP_IN_API defines the input interface type. 0 = Window, 1 = Stream
TP_OUT_API defines the output interface type. 0 = Window, 1 = Stream
TP_NUM_INPUTS describes the number of input stream interfaces to be processed. When 2 inputs are configured, whe data will be read sequentially from each.
TP_WINDOW_VSIZE describes the number of samples in the window API used if either input or output is a window. Note: Margin size should not be included in TP_INPUT_WINDOW_VSIZE.
TP_NUM_OUTPUT_CLONES sets the number of output ports to write the input data to. Note that while input data from multiple ports is independent, data out is not. This is the class for the Widget API Cast graph
template <
    typename TT_DATA,
    unsigned int TP_IN_API,
    unsigned int TP_OUT_API,
    unsigned int TP_NUM_INPUTS,
    unsigned int TP_WINDOW_VSIZE,
    unsigned int TP_NUM_OUTPUT_CLONES = 1
class widget_api_cast_graph: public graph

// fields

port <input> in[TP_NUM_INPUTS]
port <output> out[TP_NUM_OUTPUT_CLONES]


port <input> in [TP_NUM_INPUTS]

The input data to the function. This input may be stream or window. Data is read from here and written directly to output. When there are multiple input streams, a read from each will occur of the maximum size supported (32 bits) with these 2 being concatenated, before being written to the output(s). Multiple input windows is not supported

port <output> out [TP_NUM_OUTPUT_CLONES]

An API of TT_DATA type.



kernel* getKernels ()

Access function to get pointer to kernel (or first kernel in a chained configuration).


widget_api_cast_graph ()

This is the constructor function for the Widget API Cast graph.