11 #ifndef INCLUDED_SATELLITES_COSTAS_LOOP_8APSK_CC_IMPL_H 12 #define INCLUDED_SATELLITES_COSTAS_LOOP_8APSK_CC_IMPL_H 14 #include <gnuradio/math.h> 18 namespace satellites {
25 float phase_detector(gr_complex sample)
const 27 if (sample.real() * sample.real() + sample.imag() * sample.imag() < 0.25) {
30 float phase = gr::fast_atan2f(sample.imag(), sample.real());
31 return fmodf(phase + GR_M_PI, 2.0 * GR_M_PI / 7.0) - GR_M_PI / 7.0;
38 float error()
const override {
return d_error; };
40 int work(
int noutput_items,
41 gr_vector_const_void_star& input_items,
42 gr_vector_void_star& output_items);
~costas_loop_8apsk_cc_impl()
Definition: costas_loop_8apsk_cc_impl.h:20
Definition: ax100_decode.h:17
8APSK Costas Loop
Definition: costas_loop_8apsk_cc.h:26
costas_loop_8apsk_cc_impl(float loop_bw)
int work(int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
float error() const override
Definition: costas_loop_8apsk_cc_impl.h:38