GNU Radio 3.5.1 C++ API
|
ATSC Field Sync Demux. More...
#include <atsc_field_sync_demux.h>
Public Member Functions | |
void | forecast (int noutput_items, gr_vector_int &ninput_items_required) |
Estimate input requirements given output request. | |
int | general_work (int noutput_items, gr_vector_int &ninput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items) |
compute output items from input items | |
int | work (int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items) |
void | reset () |
Protected Attributes | |
bool | d_locked |
bool | d_in_field2 |
int | d_segment_number |
gr_uint64 | d_next_input |
gr_uint64 | d_lost_index |
unsigned long long | d_inputs0_index |
unsigned long | d_inputs0_size |
int | d_consume |
Friends | |
ATSC_API atsc_field_sync_demux_sptr | atsc_make_field_sync_demux () |
ATSC Field Sync Demux.
This class accepts 1 stream of floats (data), and 1 stream of tags (syminfo). * It outputs one stream of atsc_soft_data_segment packets
void atsc_field_sync_demux::forecast | ( | int | noutput_items, |
gr_vector_int & | ninput_items_required | ||
) | [virtual] |
Estimate input requirements given output request.
noutput_items | number of output items to produce |
ninput_items_required | number of input items required on each input stream |
Given a request to product noutput_items
, estimate the number of data items required on each input stream. The estimate doesn't have to be exact, but should be close.
Reimplemented from gr_block.
int atsc_field_sync_demux::general_work | ( | int | noutput_items, |
gr_vector_int & | ninput_items, | ||
gr_vector_const_void_star & | input_items, | ||
gr_vector_void_star & | output_items | ||
) | [virtual] |
compute output items from input items
noutput_items | number of output items to write on each output stream |
ninput_items | number of input items available on each input stream |
input_items | vector of pointers to the input items, one entry per input stream |
output_items | vector of pointers to the output items, one entry per output stream |
general_work must call consume or consume_each to indicate how many items were consumed on each input stream.
Implements gr_block.
void atsc_field_sync_demux::reset | ( | ) | [inline] |
int atsc_field_sync_demux::work | ( | int | noutput_items, |
gr_vector_const_void_star & | input_items, | ||
gr_vector_void_star & | output_items | ||
) |
ATSC_API atsc_field_sync_demux_sptr atsc_make_field_sync_demux | ( | ) | [friend] |
int atsc_field_sync_demux::d_consume [protected] |
bool atsc_field_sync_demux::d_in_field2 [protected] |
unsigned long long atsc_field_sync_demux::d_inputs0_index [protected] |
unsigned long atsc_field_sync_demux::d_inputs0_size [protected] |
bool atsc_field_sync_demux::d_locked [protected] |
gr_uint64 atsc_field_sync_demux::d_lost_index [protected] |
gr_uint64 atsc_field_sync_demux::d_next_input [protected] |
int atsc_field_sync_demux::d_segment_number [protected] |