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 <downchannelizer.h>
Classes | |
struct | FilterStage |
class | MsgChannelizerNotification |
class | MsgSetChannelizer |
Signals | |
void | inputSampleRateChanged () |
Public Member Functions | |
DownChannelizer (BasebandSampleSink *sampleSink) | |
virtual | ~DownChannelizer () |
void | configure (MessageQueue *messageQueue, int sampleRate, int centerFrequency) |
void | set (MessageQueue *messageQueue, unsigned int log2Decim, unsigned int filterChainHash) |
int | getInputSampleRate () const |
int | getRequestedCenterFrequency () const |
virtual void | start () |
virtual void | stop () |
virtual void | feed (const SampleVector::const_iterator &begin, const SampleVector::const_iterator &end, bool positiveOnly) |
virtual bool | handleMessage (const Message &cmd) |
Processing of a message. Returns true if message has actually been processed. More... | |
Public Member Functions inherited from BasebandSampleSink | |
BasebandSampleSink () | |
virtual | ~BasebandSampleSink () |
MessageQueue * | getInputMessageQueue () |
Get the queue for asynchronous inbound communication. More... | |
virtual void | setMessageQueueToGUI (MessageQueue *queue) |
MessageQueue * | getMessageQueueToGUI () |
Protected Types | |
typedef std::list< FilterStage * > | FilterStages |
Protected Member Functions | |
void | applyConfiguration () |
void | applySetting (unsigned int log2Decim, unsigned int filterChainHash) |
bool | signalContainsChannel (Real sigStart, Real sigEnd, Real chanStart, Real chanEnd) const |
Real | createFilterChain (Real sigStart, Real sigEnd, Real chanStart, Real chanEnd) |
void | setFilterChain (const std::vector< unsigned int > &stageIndexes) |
void | freeFilterChain () |
void | debugFilterChain () |
Protected Attributes | |
FilterStages | m_filterStages |
bool | m_filterChainSetMode |
BasebandSampleSink * | m_sampleSink |
Demodulator. More... | |
int | m_inputSampleRate |
int | m_requestedOutputSampleRate |
int | m_requestedCenterFrequency |
int | m_currentOutputSampleRate |
int | m_currentCenterFrequency |
SampleVector | m_sampleBuffer |
QMutex | m_mutex |
Protected Attributes inherited from BasebandSampleSink | |
MessageQueue | m_inputMessageQueue |
Queue for asynchronous inbound communication. More... | |
MessageQueue * | m_guiMessageQueue |
Input message queue to the GUI. More... | |
Additional Inherited Members | |
Protected Slots inherited from BasebandSampleSink | |
void | handleInputMessages () |
Definition at line 34 of file downchannelizer.h.
|
protected |
Definition at line 119 of file downchannelizer.h.
DownChannelizer::DownChannelizer | ( | BasebandSampleSink * | sampleSink | ) |
Definition at line 30 of file downchannelizer.cpp.
|
virtual |
Definition at line 43 of file downchannelizer.cpp.
References freeFilterChain().
|
protected |
Definition at line 184 of file downchannelizer.cpp.
References DownChannelizer::MsgChannelizerNotification::create(), createFilterChain(), freeFilterChain(), BasebandSampleSink::getInputMessageQueue(), m_currentCenterFrequency, m_currentOutputSampleRate, m_filterChainSetMode, m_filterStages, m_inputSampleRate, m_mutex, m_requestedCenterFrequency, m_requestedOutputSampleRate, m_sampleSink, and MessageQueue::push().
Referenced by handleMessage().
|
protected |
Definition at line 220 of file downchannelizer.cpp.
References HBFilterChainConverter::convertToIndexes(), DownChannelizer::MsgChannelizerNotification::create(), DownChannelizer::FilterStage::FilterStage(), freeFilterChain(), BasebandSampleSink::getInputMessageQueue(), m_currentCenterFrequency, m_currentOutputSampleRate, m_filterChainSetMode, m_filterStages, m_inputSampleRate, m_mutex, m_requestedCenterFrequency, m_requestedOutputSampleRate, m_sampleSink, MessageQueue::push(), and setFilterChain().
Referenced by handleMessage().
void DownChannelizer::configure | ( | MessageQueue * | messageQueue, |
int | sampleRate, | ||
int | centerFrequency | ||
) |
Definition at line 48 of file downchannelizer.cpp.
References MessageQueue::push().
Referenced by FreqTracker::configureChannelizer(), LoRaDemod::handleMessage(), AMDemod::handleMessage(), WFMDemod::handleMessage(), DSDDemod::handleMessage(), UDPSink::handleMessage(), SSBDemod::handleMessage(), NFMDemod::handleMessage(), BFMDemod::handleMessage(), FreeDVDemod::handleMessage(), ChannelAnalyzer::handleMessage(), DATVDemod::handleMessage(), and ATVDemod::handleMessage().
|
protected |
Definition at line 307 of file downchannelizer.cpp.
References DownChannelizer::FilterStage::FilterStage(), m_filterStages, DownChannelizer::FilterStage::ModeCenter, DownChannelizer::FilterStage::ModeLowerHalf, DownChannelizer::FilterStage::ModeUpperHalf, and signalContainsChannel().
Referenced by applyConfiguration().
|
protected |
Definition at line 370 of file downchannelizer.cpp.
References m_filterStages, DownChannelizer::FilterStage::ModeCenter, DownChannelizer::FilterStage::ModeLowerHalf, and DownChannelizer::FilterStage::ModeUpperHalf.
|
virtual |
Implements BasebandSampleSink.
Definition at line 60 of file downchannelizer.cpp.
References BasebandSampleSink::feed(), m_filterStages, Sample::m_imag, m_mutex, Sample::m_real, m_sampleBuffer, and m_sampleSink.
|
protected |
Definition at line 363 of file downchannelizer.cpp.
References m_filterStages.
Referenced by applyConfiguration(), applySetting(), and ~DownChannelizer().
|
inline |
Definition at line 83 of file downchannelizer.h.
Referenced by ATVDemod::channelSampleRateChanged(), ChannelAnalyzerGUI::getRequestedChannelSampleRate(), DATVDemod::handleMessage(), and ATVDemod::handleMessage().
|
inline |
Definition at line 84 of file downchannelizer.h.
|
virtual |
Processing of a message. Returns true if message has actually been processed.
Implements BasebandSampleSink.
Definition at line 127 of file downchannelizer.cpp.
References applyConfiguration(), applySetting(), DSPConfigureChannelizer::getCenterFrequency(), DownChannelizer::MsgSetChannelizer::getFilterChainHash(), Message::getIdentifier(), BasebandSampleSink::getInputMessageQueue(), DownChannelizer::MsgSetChannelizer::getLog2Decim(), DSPSignalNotification::getSampleRate(), DSPConfigureChannelizer::getSampleRate(), BasebandSampleSink::handleMessage(), inputSampleRateChanged(), m_filterChainSetMode, m_inputSampleRate, m_requestedCenterFrequency, m_requestedOutputSampleRate, m_sampleSink, Message::match(), and MessageQueue::push().
|
signal |
void DownChannelizer::set | ( | MessageQueue * | messageQueue, |
unsigned int | log2Decim, | ||
unsigned int | filterChainHash | ||
) |
Definition at line 54 of file downchannelizer.cpp.
References MessageQueue::push().
Referenced by LocalSink::handleMessage(), and RemoteSink::handleMessage().
|
protected |
Definition at line 343 of file downchannelizer.cpp.
References DownChannelizer::FilterStage::FilterStage(), m_filterStages, DownChannelizer::FilterStage::ModeCenter, DownChannelizer::FilterStage::ModeLowerHalf, and DownChannelizer::FilterStage::ModeUpperHalf.
Referenced by applySetting().
|
protected |
Definition at line 297 of file downchannelizer.cpp.
Referenced by createFilterChain().
|
virtual |
Implements BasebandSampleSink.
Definition at line 109 of file downchannelizer.cpp.
References m_inputSampleRate, m_requestedCenterFrequency, m_requestedOutputSampleRate, m_sampleSink, and BasebandSampleSink::start().
|
virtual |
Implements BasebandSampleSink.
Definition at line 121 of file downchannelizer.cpp.
References m_sampleSink, and BasebandSampleSink::stop().
|
protected |
Definition at line 127 of file downchannelizer.h.
Referenced by applyConfiguration(), and applySetting().
|
protected |
Definition at line 126 of file downchannelizer.h.
Referenced by applyConfiguration(), and applySetting().
|
protected |
Definition at line 121 of file downchannelizer.h.
Referenced by applyConfiguration(), applySetting(), and handleMessage().
|
protected |
Definition at line 120 of file downchannelizer.h.
Referenced by applyConfiguration(), applySetting(), createFilterChain(), debugFilterChain(), feed(), freeFilterChain(), and setFilterChain().
|
protected |
Definition at line 123 of file downchannelizer.h.
Referenced by applyConfiguration(), applySetting(), handleMessage(), and start().
|
protected |
Definition at line 129 of file downchannelizer.h.
Referenced by applyConfiguration(), applySetting(), and feed().
|
protected |
Definition at line 125 of file downchannelizer.h.
Referenced by applyConfiguration(), applySetting(), handleMessage(), and start().
|
protected |
Definition at line 124 of file downchannelizer.h.
Referenced by applyConfiguration(), applySetting(), handleMessage(), and start().
|
protected |
Definition at line 128 of file downchannelizer.h.
Referenced by feed().
|
protected |
Demodulator.
Definition at line 122 of file downchannelizer.h.
Referenced by applyConfiguration(), applySetting(), feed(), handleMessage(), start(), and stop().