SDRAngel
4.11.5
Developer docs for <a href="https://github.com/f4exb/sdrangel">SDRangel<\a>, an Open Source Qt5 / OpenGL 3.0+ SDR and signal analyzer frontend to various hardware.
|
#include <freqlockcomplex.h>
Public Member Functions | |
FreqLockComplex () | |
~FreqLockComplex () | |
void | reset () |
void | setSampleRate (unsigned int sampleRate) |
void | feed (float re, float im) |
const std::complex< float > & | getComplex () const |
float | getReal () const |
float | getImag () const |
float | getFreq () const |
Static Private Member Functions | |
static float | normalizeAngle (float angle) |
Private Attributes | |
float | m_a0 |
float | m_a1 |
std::complex< float > | m_y |
float | m_yRe |
float | m_yIm |
float | m_freq |
float | m_phi |
float | m_phiX0 |
float | m_phiX1 |
float | m_y1 |
General purpose Phase-locked loop using complex analytic signal input.
Definition at line 31 of file freqlockcomplex.h.
FreqLockComplex::FreqLockComplex | ( | ) |
Definition at line 28 of file freqlockcomplex.cpp.
FreqLockComplex::~FreqLockComplex | ( | ) |
Definition at line 42 of file freqlockcomplex.cpp.
void FreqLockComplex::feed | ( | float | re, |
float | im | ||
) |
Feed PLL with a new signa sample
Definition at line 66 of file freqlockcomplex.cpp.
References arg(), cos(), m_a0, m_a1, m_freq, m_phi, m_phiX0, m_phiX1, m_y, m_y1, m_yIm, m_yRe, normalizeAngle(), and sin().
Referenced by ChannelAnalyzer::processOneSample(), and FreqTracker::processOneSample().
|
inline |
Definition at line 41 of file freqlockcomplex.h.
Referenced by ChannelAnalyzer::processOneSample().
|
inline |
Definition at line 44 of file freqlockcomplex.h.
Referenced by FreqTracker::getFrequency(), and ChannelAnalyzer::getPllFrequency().
|
inline |
Definition at line 43 of file freqlockcomplex.h.
|
inline |
Definition at line 42 of file freqlockcomplex.h.
|
staticprivate |
Normalize angle in radians into the [-pi,+pi] region
Definition at line 84 of file freqlockcomplex.cpp.
References M_PI.
Referenced by feed().
void FreqLockComplex::reset | ( | ) |
Definition at line 46 of file freqlockcomplex.cpp.
References m_freq, m_phi, m_phiX0, m_phiX1, m_y, m_y1, m_yIm, and m_yRe.
Referenced by ChannelAnalyzer::applySettings(), FreqTracker::applySettings(), and setSampleRate().
void FreqLockComplex::setSampleRate | ( | unsigned int | sampleRate | ) |
Definition at line 59 of file freqlockcomplex.cpp.
References m_a0, m_a1, and reset().
Referenced by ChannelAnalyzer::applyChannelSettings(), ChannelAnalyzer::applySettings(), and FreqTracker::configureChannelizer().
|
private |
Definition at line 50 of file freqlockcomplex.h.
Referenced by feed(), and setSampleRate().
|
private |
Definition at line 51 of file freqlockcomplex.h.
Referenced by feed(), and setSampleRate().
|
private |
Definition at line 55 of file freqlockcomplex.h.
|
private |
Definition at line 56 of file freqlockcomplex.h.
|
private |
Definition at line 57 of file freqlockcomplex.h.
|
private |
Definition at line 58 of file freqlockcomplex.h.
|
private |
Definition at line 52 of file freqlockcomplex.h.
|
private |
Definition at line 59 of file freqlockcomplex.h.
|
private |
Definition at line 54 of file freqlockcomplex.h.
|
private |
Definition at line 53 of file freqlockcomplex.h.