30 lines
609 B
C++
30 lines
609 B
C++
// Copyright (c) Charles J. Cliffe
|
|
// SPDX-License-Identifier: GPL-2.0+
|
|
|
|
#pragma once
|
|
#include "ModemAnalog.h"
|
|
|
|
class ModemUSB : public ModemAnalog {
|
|
public:
|
|
ModemUSB();
|
|
~ModemUSB();
|
|
|
|
std::string getName();
|
|
|
|
static ModemBase *factory();
|
|
|
|
int checkSampleRate(long long sampleRate, int audioSampleRate);
|
|
int getDefaultSampleRate();
|
|
|
|
void demodulate(ModemKit *kit, ModemIQData *input, AudioThreadInput *audioOut);
|
|
|
|
private:
|
|
#ifdef WIN32
|
|
firfilt_crcf ssbFilt;
|
|
#else
|
|
iirfilt_crcf ssbFilt;
|
|
#endif
|
|
firhilbf c2rFilt;
|
|
nco_crcf ssbShift;
|
|
// ampmodem demodAM_USB;
|
|
}; |