GNU Radio 3.2.2 C++ API
|
Decision directed M-PSK synchronous demodThis block performs joint carrier tracking and symbol timing recovery. More...
#include <gr_dd_mpsk_sync_cc.h>
Public Member Functions | |
~gr_dd_mpsk_sync_cc () | |
void | forecast (int noutput_items, gr_vector_int &ninput_items_required) |
Estimate input requirements given output request. | |
float | mu () const |
float | omega () const |
float | gain_mu () const |
float | gain_omega () const |
void | set_gain_mu (float gain_mu) |
void | set_gain_omega (float gain_omega) |
void | set_mu (float mu) |
void | set_omega (float omega) |
Protected Member Functions | |
gr_dd_mpsk_sync_cc (float alpha, float beta, float max_freq, float min_freq, float ref_phase, float omega, float gain_omega, float mu, float gain_mu) | |
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 | |
Friends | |
gr_dd_mpsk_sync_cc_sptr | gr_make_dd_mpsk_sync_cc (float alpha, float beta, float max_freq, float min_freq, float ref_phase, float omega, float gain_omega, float mu, float gain_mu) |
Decision directed M-PSK synchronous demod
This block performs joint carrier tracking and symbol timing recovery.
input: complex baseband; output: properly timed complex samples ready for slicing.
N.B, at this point, it handles only QPSK.
gr_dd_mpsk_sync_cc::~gr_dd_mpsk_sync_cc | ( | ) |
gr_dd_mpsk_sync_cc::gr_dd_mpsk_sync_cc | ( | float | alpha, |
float | beta, | ||
float | max_freq, | ||
float | min_freq, | ||
float | ref_phase, | ||
float | omega, | ||
float | gain_omega, | ||
float | mu, | ||
float | gain_mu | ||
) | [protected] |
void gr_dd_mpsk_sync_cc::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.
float gr_dd_mpsk_sync_cc::gain_mu | ( | ) | const [inline] |
Referenced by set_gain_mu().
float gr_dd_mpsk_sync_cc::gain_omega | ( | ) | const [inline] |
Referenced by set_gain_omega().
int gr_dd_mpsk_sync_cc::general_work | ( | int | noutput_items, |
gr_vector_int & | ninput_items, | ||
gr_vector_const_void_star & | input_items, | ||
gr_vector_void_star & | output_items | ||
) | [protected, 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.
float gr_dd_mpsk_sync_cc::mu | ( | ) | const [inline] |
Referenced by set_mu().
float gr_dd_mpsk_sync_cc::omega | ( | ) | const [inline] |
Referenced by set_omega().
void gr_dd_mpsk_sync_cc::set_gain_mu | ( | float | gain_mu | ) | [inline] |
References gain_mu().
void gr_dd_mpsk_sync_cc::set_gain_omega | ( | float | gain_omega | ) | [inline] |
References gain_omega().
void gr_dd_mpsk_sync_cc::set_mu | ( | float | mu | ) | [inline] |
References mu().
void gr_dd_mpsk_sync_cc::set_omega | ( | float | omega | ) | [inline] |
References omega().
gr_dd_mpsk_sync_cc_sptr gr_make_dd_mpsk_sync_cc | ( | float | alpha, |
float | beta, | ||
float | max_freq, | ||
float | min_freq, | ||
float | ref_phase, | ||
float | omega, | ||
float | gain_omega, | ||
float | mu, | ||
float | gain_mu | ||
) | [friend] |