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