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.
wfmdemodgui.h
Go to the documentation of this file.
1 #ifndef INCLUDE_WFMDEMODGUI_H
2 #define INCLUDE_WFMDEMODGUI_H
3 
5 #include "gui/rollupwidget.h"
6 #include "dsp/channelmarker.h"
7 #include "util/messagequeue.h"
8 
9 #include "wfmdemodsettings.h"
10 
11 class PluginAPI;
12 class DeviceUISet;
13 class BasebandSampleSink;
14 class WFMDemod;
15 
16 namespace Ui {
17  class WFMDemodGUI;
18 }
19 
20 class WFMDemodGUI : public RollupWidget, public PluginInstanceGUI {
21  Q_OBJECT
22 
23 public:
24  static WFMDemodGUI* create(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, BasebandSampleSink *rxChannel);
25  virtual void destroy();
26 
27  void setName(const QString& name);
28  QString getName() const;
29  virtual qint64 getCenterFrequency() const;
30  virtual void setCenterFrequency(qint64 centerFrequency);
31 
32  void resetToDefaults();
33  QByteArray serialize() const;
34  bool deserialize(const QByteArray& data);
35  virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; }
36  virtual bool handleMessage(const Message& message);
37 
38 public slots:
39  void channelMarkerChangedByCursor();
40  void channelMarkerHighlightedByCursor();
41 
42 private:
43  Ui::WFMDemodGUI* ui;
52 
55 
56  explicit WFMDemodGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, BasebandSampleSink *rxChannel, QWidget* parent = 0);
57  virtual ~WFMDemodGUI();
58 
59  void blockApplySettings(bool block);
60  void applySettings(bool force = false);
61  void displaySettings();
62 
63  void leaveEvent(QEvent*);
64  void enterEvent(QEvent*);
65 
66 private slots:
67  void on_deltaFrequency_changed(qint64 value);
68  void on_rfBW_changed(quint64 value);
69  void on_afBW_valueChanged(int value);
70  void on_volume_valueChanged(int value);
71  void on_squelch_valueChanged(int value);
72  void on_audioMute_toggled(bool checked);
73  void onWidgetRolled(QWidget* widget, bool rollDown);
74  void onMenuDialogCalled(const QPoint& p);
75  void handleInputMessages();
76  void audioSelect();
77  void tick();
78 };
79 
80 #endif // INCLUDE_WFMDEMODGUI_H
bool m_basicSettingsShown
Definition: wfmdemodgui.h:48
WFMDemod * m_wfmDemod
Definition: wfmdemodgui.h:53
MessageQueue m_inputMessageQueue
Definition: wfmdemodgui.h:54
Ui::WFMDemodGUI * ui
Definition: wfmdemodgui.h:43
PluginAPI * m_pluginAPI
Definition: wfmdemodgui.h:44
bool m_doApplySettings
Definition: wfmdemodgui.h:49
void * create(QString type)
bool m_audioMute
Definition: wfmdemodgui.h:50
WFMDemodSettings m_settings
Definition: wfmdemodgui.h:47
DeviceUISet * m_deviceUISet
Definition: wfmdemodgui.h:45
bool m_squelchOpen
Definition: wfmdemodgui.h:51
ChannelMarker m_channelMarker
Definition: wfmdemodgui.h:46
virtual MessageQueue * getInputMessageQueue()
Definition: wfmdemodgui.h:35