2017-01-02 21:07:43 -05:00
|
|
|
// Copyright (c) Charles J. Cliffe
|
|
|
|
// SPDX-License-Identifier: GPL-2.0+
|
|
|
|
|
2015-11-16 23:49:54 -05:00
|
|
|
#pragma once
|
2015-11-18 21:09:51 -05:00
|
|
|
#include "ModemDigital.h"
|
|
|
|
|
|
|
|
class ModemPSK : public ModemDigital {
|
|
|
|
public:
|
|
|
|
ModemPSK();
|
2021-04-04 22:16:57 -04:00
|
|
|
~ModemPSK() override;
|
2015-11-23 20:03:47 -05:00
|
|
|
|
2021-04-04 22:16:57 -04:00
|
|
|
std::string getName() override;
|
2015-11-23 20:03:47 -05:00
|
|
|
|
2016-07-24 15:25:17 -04:00
|
|
|
static ModemBase *factory();
|
2015-11-23 20:03:47 -05:00
|
|
|
|
2021-04-04 22:16:57 -04:00
|
|
|
ModemArgInfoList getSettings() override;
|
|
|
|
void writeSetting(std::string setting, std::string value) override;
|
|
|
|
std::string readSetting(std::string setting) override;
|
2015-11-23 20:03:47 -05:00
|
|
|
|
2021-04-04 22:16:57 -04:00
|
|
|
void updateDemodulatorCons(int cons_in);
|
|
|
|
void demodulate(ModemKit *kit, ModemIQData *input, AudioThreadInput *audioOut) override;
|
2015-11-18 21:09:51 -05:00
|
|
|
|
|
|
|
private:
|
2015-11-23 20:03:47 -05:00
|
|
|
int cons;
|
2021-11-12 05:06:17 -05:00
|
|
|
modemcf demodPSK;
|
|
|
|
modemcf demodPSK2;
|
|
|
|
modemcf demodPSK4;
|
|
|
|
modemcf demodPSK8;
|
|
|
|
modemcf demodPSK16;
|
|
|
|
modemcf demodPSK32;
|
|
|
|
modemcf demodPSK64;
|
|
|
|
modemcf demodPSK128;
|
|
|
|
modemcf demodPSK256;
|
2015-11-18 21:09:51 -05:00
|
|
|
};
|
2015-11-16 23:49:54 -05:00
|
|
|
|