GNU Radio 3.6.2-18 C++ API
|
decimate a stream, keeping one item out of every n. More...
#include <gr_keep_m_in_n.h>
Public Member Functions | |
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 | |
void | set_offset (int offset) |
void | set_n (int n) |
void | set_m (int m) |
Protected Member Functions | |
gr_keep_m_in_n (size_t item_size, int m, int n, int offset) | |
void | forecast (int noutput_items, gr_vector_int &ninput_items_required) |
Estimate input requirements given output request. | |
Friends | |
GR_CORE_API gr_keep_m_in_n_sptr | gr_make_keep_m_in_n (size_t item_size, int m, int n, int offset) |
decimate a stream, keeping one item out of every n.
gr_keep_m_in_n::gr_keep_m_in_n | ( | size_t | item_size, |
int | m, | ||
int | n, | ||
int | offset | ||
) | [protected] |
void gr_keep_m_in_n::forecast | ( | int | noutput_items, |
gr_vector_int & | ninput_items_required | ||
) | [protected, 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 gr_keep_m_in_n::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 gr_keep_m_in_n::set_m | ( | int | m | ) | [inline] |
void gr_keep_m_in_n::set_n | ( | int | n | ) | [inline] |
void gr_keep_m_in_n::set_offset | ( | int | offset | ) |
GR_CORE_API gr_keep_m_in_n_sptr gr_make_keep_m_in_n | ( | size_t | item_size, |
int | m, | ||
int | n, | ||
int | offset | ||
) | [friend] |