*
* GNU Radio is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2, or (at your option)
+ * the Free Software Foundation; either version 3, or (at your option)
* any later version.
*
* GNU Radio is distributed in the hope that it will be useful,
#include <stdexcept>
#include <fstream>
-class gr_costas_loop_cc;
-typedef boost::shared_ptr<gr_costas_loop_cc> gr_costas_loop_cc_sptr;
/*! \brief A Costas loop carrier recovery module.
+ * \ingroup clock
*
* The Costas loop locks to the center frequency of a signal and
* downconverts it to baseband. The second (order=2) order loop is
*
* \param alpha the loop gain used for phase adjustment
* \param beta the loop gain for frequency adjustments
- * \param max_freq the maximum frequency deviation the loop can handle
- * \param min_freq the minimum frequency deviation the loop can
- * handle
+ * \param max_freq the maximum frequency deviation (normalized frequency) the loop can handle
+ * \param min_freq the minimum frequency deviation (normalized frequency) the loop can handle
* \param order the loop order, either 2 or 4
*/
+class gr_costas_loop_cc;
+typedef boost::shared_ptr<gr_costas_loop_cc> gr_costas_loop_cc_sptr;
+
+
gr_costas_loop_cc_sptr
gr_make_costas_loop_cc (float alpha, float beta,
float max_freq, float min_freq,
/*!
* \brief Carrier tracking PLL for QPSK
- * \ingroup block
+ * \ingroup clock
* input: complex; output: complex
* <br>The Costas loop can have two output streams:
* stream 1 is the baseband I and Q;
int order
) throw (std::invalid_argument);
- /*! \breif the phase detector circuit for fourth-order loops
- * \param a complex sample
+ /*! \brief the phase detector circuit for fourth-order loops
+ * \param sample complex sample
* \return the phase error
*/
float phase_detector_4(gr_complex sample) const; // for QPSK