#include "xf_database/merge_sort.hpp"
template < typename Data_Type, typename Key_Type > void mergeSort ( hls::stream <Data_Type>& left_din_strm, hls::stream <Key_Type>& left_kin_strm, hls::stream <bool>& left_strm_in_end, hls::stream <Data_Type>& right_din_strm, hls::stream <Key_Type>& right_kin_strm, hls::stream <bool>& right_strm_in_end, hls::stream <Data_Type>& dout_strm, hls::stream <Key_Type>& kout_strm, hls::stream <bool>& strm_out_end, bool order )
Merge sort function.
Parameters:
| Data_Type | the input and output data type |
| Data_Type | the input and output key type |
| left_din_strm | input left data stream |
| left_kin_strm | input key stream |
| left_strm_in_end | end flag stream for left input |
| right_din_strm | input right data stream |
| right_kin_strm | input key stream |
| right_strm_in_end | end flag stream for right input |
| dout_strm | output data stream |
| kout_strm | output key stream |
| strm_out_end | end flag stream for output data |
| order | 1:ascending 0:descending |