![]() |
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 <lorademod.h>
Inheritance diagram for LoRaDemod:
Collaboration diagram for LoRaDemod:Classes | |
| class | MsgConfigureChannelizer |
| class | MsgConfigureLoRaDemod |
Public Member Functions | |
| LoRaDemod (DeviceAPI *deviceAPI) | |
| virtual | ~LoRaDemod () |
| virtual void | destroy () |
| void | setSpectrumSink (BasebandSampleSink *sampleSink) |
| virtual void | feed (const SampleVector::const_iterator &begin, const SampleVector::const_iterator &end, bool pO) |
| virtual void | start () |
| virtual void | stop () |
| virtual bool | handleMessage (const Message &cmd) |
| Processing of a message. Returns true if message has actually been processed. More... | |
| virtual void | getIdentifier (QString &id) |
| virtual void | getTitle (QString &title) |
| virtual qint64 | getCenterFrequency () const |
| Applies to a default stream. More... | |
| virtual QByteArray | serialize () const |
| virtual bool | deserialize (const QByteArray &data) |
| virtual int | getNbSinkStreams () const |
| virtual int | getNbSourceStreams () const |
| virtual qint64 | getStreamCenterFrequency (int streamIndex, bool sinkElseSource) const |
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 () |
Public Member Functions inherited from ChannelAPI | |
| ChannelAPI (const QString &name, StreamType streamType) | |
| virtual | ~ChannelAPI () |
| virtual void | setName (const QString &name) |
| virtual const QString & | getName () const |
| virtual int | webapiSettingsGet (SWGSDRangel::SWGChannelSettings &response, QString &errorMessage) |
| virtual int | webapiSettingsPutPatch (bool force, const QStringList &channelSettingsKeys, SWGSDRangel::SWGChannelSettings &response, QString &errorMessage) |
| virtual int | webapiReportGet (SWGSDRangel::SWGChannelReport &response, QString &errorMessage) |
| int | getIndexInDeviceSet () const |
| void | setIndexInDeviceSet (int indexInDeviceSet) |
| int | getDeviceSetIndex () const |
| void | setDeviceSetIndex (int deviceSetIndex) |
| DeviceAPI * | getDeviceAPI () |
| void | setDeviceAPI (DeviceAPI *deviceAPI) |
| uint64_t | getUID () const |
| StreamType | getStreamType () const |
Static Public Attributes | |
| static const QString | m_channelIdURI = "sdrangel.channel.lorademod" |
| static const QString | m_channelId = "LoRaDemod" |
Private Member Functions | |
| int | detect (Complex sample, Complex angle) |
| void | dumpRaw (void) |
| short | synch (short bin) |
| short | toGray (short bin) |
| void | interleave6 (char *inout, int size) |
| void | hamming6 (char *inout, int size) |
| void | prng6 (char *inout, int size) |
Private Attributes | |
| DeviceAPI * | m_deviceAPI |
| ThreadedBasebandSampleSink * | m_threadedChannelizer |
| DownChannelizer * | m_channelizer |
| LoRaDemodSettings | m_settings |
| Real | m_Bandwidth |
| int | m_sampleRate |
| int | m_frequency |
| int | m_chirp |
| int | m_angle |
| int | m_bin |
| int | m_result |
| int | m_count |
| int | m_header |
| int | m_time |
| short | m_tune |
| sfft * | loraFilter |
| sfft * | negaFilter |
| float * | mov |
| short * | history |
| short * | finetune |
| NCO | m_nco |
| Interpolator | m_interpolator |
| Real | m_sampleDistanceRemain |
| BasebandSampleSink * | m_sampleSink |
| SampleVector | m_sampleBuffer |
| QMutex | m_settingsMutex |
Additional Inherited Members | |
Public Types inherited from ChannelAPI | |
| enum | StreamType { StreamSingleSink, StreamSingleSource, StreamMIMO } |
| < This is the same enum as in PluginInterface More... | |
Protected Slots inherited from BasebandSampleSink | |
| void | handleInputMessages () |
Protected Attributes inherited from BasebandSampleSink | |
| MessageQueue | m_inputMessageQueue |
| Queue for asynchronous inbound communication. More... | |
| MessageQueue * | m_guiMessageQueue |
| Input message queue to the GUI. More... | |
Definition at line 44 of file lorademod.h.
| LoRaDemod::LoRaDemod | ( | DeviceAPI * | deviceAPI | ) |
Definition at line 39 of file lorademod.cpp.
References DeviceAPI::addChannelSink(), DeviceAPI::addChannelSinkAPI(), LoRaDemodSettings::bandwidths, Interpolator::create(), finetune, history, LORA_SFFT_LEN, loraFilter, m_angle, m_Bandwidth, m_bin, m_channelId, m_channelizer, m_chirp, m_count, m_deviceAPI, m_frequency, m_header, m_interpolator, m_nco, m_result, m_sampleDistanceRemain, m_sampleRate, m_threadedChannelizer, m_time, m_tune, mov, negaFilter, and NCO::setFreq().
Referenced by LoRaDemod::MsgConfigureChannelizer::MsgConfigureChannelizer().
Here is the call graph for this function:
Here is the caller graph for this function:
|
virtual |
Definition at line 76 of file lorademod.cpp.
References finetune, history, loraFilter, m_channelizer, m_deviceAPI, m_threadedChannelizer, mov, negaFilter, DeviceAPI::removeChannelSink(), and DeviceAPI::removeChannelSinkAPI().
Referenced by LoRaDemod::MsgConfigureChannelizer::MsgConfigureChannelizer().
Here is the call graph for this function:
Here is the caller graph for this function:
|
virtual |
Implements ChannelAPI.
Definition at line 375 of file lorademod.cpp.
References LoRaDemod::MsgConfigureLoRaDemod::create(), LoRaDemodSettings::deserialize(), BasebandSampleSink::m_inputMessageQueue, m_settings, MessageQueue::push(), and LoRaDemodSettings::resetToDefaults().
Referenced by getCenterFrequency().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinevirtual |
Definition at line 192 of file lorademod.cpp.
References DATA_BITS, sfft::fetch(), finetune, i, LORA_SFFT_LEN, LORA_SQUELCH, loraFilter, m_count, m_result, m_time, mov, negaFilter, sfft::run(), and synch().
Referenced by feed().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 95 of file lorademod.cpp.
References hamming6(), history, interleave6(), LORA_SFFT_LEN, m_time, m_tune, leansdr::max(), prng6(), and toGray().
Referenced by synch().
Here is the call graph for this function:
Here is the caller graph for this function:
|
virtual |
Implements BasebandSampleSink.
Definition at line 255 of file lorademod.cpp.
References cos(), Interpolator::decimate(), detect(), BasebandSampleSink::feed(), LORA_SFFT_LEN, m_angle, m_Bandwidth, m_bin, m_chirp, m_interpolator, m_nco, M_PI, m_sampleBuffer, m_sampleDistanceRemain, m_sampleRate, m_sampleSink, m_settingsMutex, NCO::nextIQ(), SDR_RX_SCALEF, sin(), and SPREADFACTOR.
Referenced by setSpectrumSink().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinevirtual |
Applies to a default stream.
Implements ChannelAPI.
Definition at line 104 of file lorademod.h.
References deserialize(), and serialize().
Here is the call graph for this function:
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
Implements ChannelAPI.
Definition at line 112 of file lorademod.h.
|
inlinevirtual |
Implements ChannelAPI.
Definition at line 103 of file lorademod.h.
References LoRaDemod::MsgConfigureLoRaDemod::m_settings, and LoRaDemodSettings::m_title.
|
private |
Definition at line 42 of file lorabits.h.
References i.
Referenced by dumpRaw().
Here is the caller graph for this function:
|
virtual |
Processing of a message. Returns true if message has actually been processed.
Implements BasebandSampleSink.
Definition at line 300 of file lorademod.cpp.
References LoRaDemodSettings::bandwidths, DownChannelizer::configure(), Interpolator::create(), LoRaDemod::MsgConfigureChannelizer::getCenterFrequency(), DownChannelizer::MsgChannelizerNotification::getFrequencyOffset(), BasebandSampleSink::getInputMessageQueue(), DownChannelizer::MsgChannelizerNotification::getSampleRate(), LoRaDemod::MsgConfigureChannelizer::getSampleRate(), LoRaDemod::MsgConfigureLoRaDemod::getSettings(), BasebandSampleSink::handleMessage(), m_Bandwidth, LoRaDemodSettings::m_bandwidthIndex, m_channelizer, m_interpolator, m_nco, m_sampleDistanceRemain, m_sampleRate, m_sampleSink, m_settings, m_settingsMutex, Message::match(), and NCO::setFreq().
Referenced by setSpectrumSink().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 14 of file lorabits.h.
References i.
Referenced by dumpRaw().
Here is the caller graph for this function:
|
private |
Definition at line 63 of file lorabits.h.
References i.
Referenced by dumpRaw().
Here is the caller graph for this function:
|
virtual |
Implements ChannelAPI.
Definition at line 370 of file lorademod.cpp.
References m_settings, and LoRaDemodSettings::serialize().
Referenced by getCenterFrequency().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 95 of file lorademod.h.
References feed(), handleMessage(), m_sampleSink, start(), and stop().
Referenced by LoRaDemodGUI::LoRaDemodGUI().
Here is the call graph for this function:
Here is the caller graph for this function:
|
virtual |
Implements BasebandSampleSink.
Definition at line 292 of file lorademod.cpp.
Referenced by setSpectrumSink().
Here is the caller graph for this function:
|
virtual |
Implements BasebandSampleSink.
Definition at line 296 of file lorademod.cpp.
Referenced by setSpectrumSink().
Here is the caller graph for this function:
|
private |
Definition at line 138 of file lorademod.cpp.
References dumpRaw(), finetune, history, i, LORA_SFFT_LEN, m_time, and m_tune.
Referenced by detect().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 36 of file lorabits.h.
Referenced by dumpRaw().
Here is the caller graph for this function:
|
private |
Definition at line 152 of file lorademod.h.
Referenced by detect(), LoRaDemod(), synch(), and ~LoRaDemod().
|
private |
Definition at line 151 of file lorademod.h.
Referenced by dumpRaw(), LoRaDemod(), synch(), and ~LoRaDemod().
|
private |
Definition at line 148 of file lorademod.h.
Referenced by detect(), LoRaDemod(), and ~LoRaDemod().
|
private |
Definition at line 140 of file lorademod.h.
Referenced by feed(), and LoRaDemod().
|
private |
Definition at line 136 of file lorademod.h.
Referenced by feed(), handleMessage(), and LoRaDemod().
|
private |
Definition at line 141 of file lorademod.h.
Referenced by feed(), and LoRaDemod().
|
static |
Definition at line 120 of file lorademod.h.
Referenced by LoRaPlugin::initPlugin(), and LoRaDemod().
|
static |
Definition at line 119 of file lorademod.h.
Referenced by LoRaPlugin::initPlugin(), and LoRaDemodGUI::LoRaDemodGUI().
|
private |
Definition at line 133 of file lorademod.h.
Referenced by handleMessage(), LoRaDemod(), and ~LoRaDemod().
|
private |
Definition at line 139 of file lorademod.h.
Referenced by feed(), and LoRaDemod().
|
private |
Definition at line 143 of file lorademod.h.
Referenced by detect(), and LoRaDemod().
|
private |
Definition at line 131 of file lorademod.h.
Referenced by LoRaDemod(), and ~LoRaDemod().
|
private |
Definition at line 138 of file lorademod.h.
Referenced by LoRaDemod().
|
private |
Definition at line 144 of file lorademod.h.
Referenced by LoRaDemod().
|
private |
Definition at line 155 of file lorademod.h.
Referenced by feed(), handleMessage(), and LoRaDemod().
|
private |
Definition at line 154 of file lorademod.h.
Referenced by feed(), handleMessage(), and LoRaDemod().
|
private |
Definition at line 142 of file lorademod.h.
Referenced by detect(), and LoRaDemod().
|
private |
Definition at line 159 of file lorademod.h.
Referenced by feed().
|
private |
Definition at line 156 of file lorademod.h.
Referenced by feed(), handleMessage(), and LoRaDemod().
|
private |
Definition at line 137 of file lorademod.h.
Referenced by feed(), LoRaDemod::MsgConfigureChannelizer::getSampleRate(), handleMessage(), and LoRaDemod().
|
private |
Definition at line 158 of file lorademod.h.
Referenced by feed(), handleMessage(), and setSpectrumSink().
|
private |
Definition at line 134 of file lorademod.h.
Referenced by deserialize(), handleMessage(), and serialize().
|
private |
Definition at line 160 of file lorademod.h.
Referenced by feed(), and handleMessage().
|
private |
Definition at line 132 of file lorademod.h.
Referenced by LoRaDemod(), and ~LoRaDemod().
|
private |
Definition at line 145 of file lorademod.h.
Referenced by detect(), dumpRaw(), LoRaDemod(), and synch().
|
private |
Definition at line 146 of file lorademod.h.
Referenced by dumpRaw(), LoRaDemod(), and synch().
|
private |
Definition at line 150 of file lorademod.h.
Referenced by detect(), LoRaDemod(), and ~LoRaDemod().
|
private |
Definition at line 149 of file lorademod.h.
Referenced by detect(), LoRaDemod(), and ~LoRaDemod().
1.8.13