qo100-trx-prototypes/blocks/costas-beacon-sync.h

33 lines
500 B
C++

#ifndef _COSTAS_
#define _COSTAS_
#include <complex>
#include <liquid/liquid.h>
class CostasBeaconSync {
private:
float alpha;
float beta;
float min_freq;
float max_freq;
float loop_freq;
float loop_phase;
firfilt_crcf bandpass;
bool locked;
public:
CostasBeaconSync(float, float, float);
~CostasBeaconSync();
std::complex<float> work(liquid_float_complex);
bool has_lock();
};
#endif