18 #ifndef PLUGINS_CHANNELTX_MODWFM_WFMMOD_H_ 19 #define PLUGINS_CHANNELTX_MODWFM_WFMMOD_H_ 26 #include <QNetworkRequest> 42 class QNetworkAccessManager;
93 m_sampleRate(sampleRate),
94 m_centerFrequency(centerFrequency)
136 m_seekPercentage(seekPercentage)
174 m_samplesCount(samplesCount)
186 quint32 recordLength)
196 quint32 recordLength) :
198 m_sampleRate(sampleRate),
199 m_recordLength(recordLength)
211 virtual void start();
228 (void) sinkElseSource;
234 QString& errorMessage);
238 const QStringList& channelSettingsKeys,
240 QString& errorMessage);
244 QString& errorMessage);
260 void levelChanged(qreal rmsLevel, qreal peakLevel,
int numSamples);
320 void applyChannelSettings(
int basebandSampleRate,
int outputSampleRate,
int inputFrequencyOffset,
bool force =
false);
ThreadedBasebandSampleSource * m_threadedChannelizer
static const int m_levelNbSamples
void levelChanged(qreal rmsLevel, qreal peakLevel, int numSamples)
UpChannelizer * m_channelizer
std::vector< Sample > SampleVector
std::vector< AudioSample > AudioVector
QNetworkAccessManager * m_networkManager
fftfilt::cmplx * m_rfFilterBuffer
void applyChannelSettings(int basebandSampleRate, int outputSampleRate, int inputFrequencyOffset, bool force=false)
void calculateLevel(const Real &sample)
void seekFileStream(int seekPercentage)
std::size_t m_samplesCount
virtual void getIdentifier(QString &id)
bool m_interpolatorConsumed
Real m_interpolatorDistance
virtual void pullAudio(int nbSamples)
static MsgReportFileSourceStreamData * create(int sampleRate, quint32 recordLength)
void pullAF(Complex &sample)
WFMMod(DeviceAPI *deviceAPI)
AudioVector m_audioBuffer
static const QString m_channelIdURI
std::complex< float > cmplx
quint32 getRecordLength() const
virtual void pull(Sample &sample)
quint64 m_fileSize
raw file size (bytes)
static const QString m_channelId
#define MESSAGE_CLASS_DECLARATION
static MsgReportFileSourceStreamTiming * create(std::size_t samplesCount)
int m_rfFilterBufferIndex
SampleVector m_sampleBuffer
QNetworkRequest m_networkRequest
std::size_t getSamplesCount() const
virtual int getNbSourceStreams() const
MsgReportFileSourceStreamTiming(std::size_t samplesCount)
virtual bool handleMessage(const Message &cmd)
Processing of a message. Returns true if message has actually been processed.
quint32 m_audioSampleRate
void applySettings(const WFMModSettings &settings, bool force=false)
virtual qint64 getStreamCenterFrequency(int streamIndex, bool sinkElseSource) const
virtual QByteArray serialize() const
virtual int webapiReportGet(SWGSDRangel::SWGChannelReport &response, QString &errorMessage)
virtual int webapiSettingsGet(SWGSDRangel::SWGChannelSettings &response, QString &errorMessage)
MovingAverageUtil< double, double, 16 > m_movingAverage
virtual qint64 getCenterFrequency() const
Applies to a default stream.
static const int m_rfFilterFFTLength
void networkManagerFinished(QNetworkReply *reply)
void webapiFormatChannelReport(SWGSDRangel::SWGChannelReport &response)
virtual int webapiSettingsPutPatch(bool force, const QStringList &channelSettingsKeys, SWGSDRangel::SWGChannelSettings &response, QString &errorMessage)
Real m_interpolatorDistanceRemain
quint32 m_recordLength
record length in seconds computed from file size
int getSampleRate() const
void applyAudioSampleRate(int sampleRate)
WFMModSettings m_settings
Interpolator m_interpolator
virtual void getTitle(QString &title)
std::complex< Real > Complex
float m_modPhasor
baseband modulator phasor
virtual int getNbSinkStreams() const
void webapiReverseSendCWSettings(const CWKeyerSettings &settings)
qint64 m_inputFrequencyOffset
int m_inputFrequencyOffset
virtual bool deserialize(const QByteArray &data)
void webapiFormatChannelSettings(SWGSDRangel::SWGChannelSettings &response, const WFMModSettings &settings)
MsgReportFileSourceStreamData(int sampleRate, quint32 recordLength)
void webapiReverseSendSettings(QList< QString > &channelSettingsKeys, const WFMModSettings &settings, bool force)