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.
Public Member Functions | Private Slots | Private Member Functions | Private Attributes | List of all members
LimeSDROutputGUI Class Reference

#include <limesdroutputgui.h>

+ Inheritance diagram for LimeSDROutputGUI:
+ Collaboration diagram for LimeSDROutputGUI:

Public Member Functions

 LimeSDROutputGUI (DeviceUISet *deviceUISet, QWidget *parent=0)
 
virtual ~LimeSDROutputGUI ()
 
virtual void destroy ()
 
void setName (const QString &name)
 
QString getName () const
 
void resetToDefaults ()
 
virtual qint64 getCenterFrequency () const
 
virtual void setCenterFrequency (qint64 centerFrequency)
 
QByteArray serialize () const
 
bool deserialize (const QByteArray &data)
 
virtual MessageQueuegetInputMessageQueue ()
 
virtual bool handleMessage (const Message &message)
 
- Public Member Functions inherited from PluginInstanceGUI
 PluginInstanceGUI ()
 
virtual ~PluginInstanceGUI ()
 

Private Slots

void handleInputMessages ()
 
void on_startStop_toggled (bool checked)
 
void on_centerFrequency_changed (quint64 value)
 
void on_ncoFrequency_changed (qint64 value)
 
void on_ncoEnable_toggled (bool checked)
 
void on_sampleRate_changed (quint64 value)
 
void on_hwInterp_currentIndexChanged (int index)
 
void on_swInterp_currentIndexChanged (int index)
 
void on_lpf_changed (quint64 value)
 
void on_lpFIREnable_toggled (bool checked)
 
void on_lpFIR_changed (quint64 value)
 
void on_gain_valueChanged (int value)
 
void on_antenna_currentIndexChanged (int index)
 
void on_extClock_clicked ()
 
void on_transverter_clicked ()
 
void on_sampleRateMode_toggled (bool checked)
 
void openDeviceSettingsDialog (const QPoint &p)
 
void updateHardware ()
 
void updateStatus ()
 

Private Member Functions

void displaySettings ()
 
void displaySampleRate ()
 
void setNCODisplay ()
 
void setCenterFrequencyDisplay ()
 
void setCenterFrequencySetting (uint64_t kHzValue)
 
void sendSettings ()
 
void updateSampleRateAndFrequency ()
 
void updateDACRate ()
 
void updateFrequencyLimits ()
 
void blockApplySettings (bool block)
 

Private Attributes

Ui::LimeSDROutputGUI * ui
 
DeviceUISetm_deviceUISet
 
LimeSDROutputm_limeSDROutput
 Same object as above but gives easy access to LimeSDROutput methods and attributes that are used intensively. More...
 
LimeSDROutputSettings m_settings
 
bool m_sampleRateMode
 true: device, false: base band sample rate update mode More...
 
QTimer m_updateTimer
 
QTimer m_statusTimer
 
int m_sampleRate
 
quint64 m_deviceCenterFrequency
 Center frequency in device. More...
 
int m_lastEngineState
 
bool m_doApplySettings
 
bool m_forceSettings
 
int m_statusCounter
 
int m_deviceStatusCounter
 
MessageQueue m_inputMessageQueue
 

Detailed Description

Definition at line 36 of file limesdroutputgui.h.

Constructor & Destructor Documentation

◆ LimeSDROutputGUI()

LimeSDROutputGUI::LimeSDROutputGUI ( DeviceUISet deviceUISet,
QWidget *  parent = 0 
)
explicit

Definition at line 32 of file limesdroutputgui.cpp.

References arg(), displaySettings(), LimeSDROutput::getChannelIndex(), DeviceAPI::getDeviceUID(), LimeSDROutput::getLimeType(), LimeSDROutput::getLORange(), LimeSDROutput::getLPRange(), DeviceAPI::getSampleSink(), LimeSDROutput::getSRRange(), ColorMapper::GrayGold, ColorMapper::GrayGreenYellow, ColorMapper::GrayYellow, handleInputMessages(), DeviceLimeSDRParams::LimeMini, DeviceUISet::m_deviceAPI, m_deviceUISet, m_inputMessageQueue, m_limeSDROutput, m_statusTimer, m_updateTimer, openDeviceSettingsDialog(), sendSettings(), ui, updateHardware(), and updateStatus().

32  :
33  QWidget(parent),
34  ui(new Ui::LimeSDROutputGUI),
35  m_deviceUISet(deviceUISet),
36  m_settings(),
37  m_sampleRateMode(true),
38  m_sampleRate(0),
40  m_doApplySettings(true),
41  m_forceSettings(true),
42  m_statusCounter(0),
44 {
46 
47  ui->setupUi(this);
48 
49  float minF, maxF;
50 
51  m_limeSDROutput->getLORange(minF, maxF);
52  ui->centerFrequency->setColorMapper(ColorMapper(ColorMapper::GrayGold));
53  ui->centerFrequency->setValueRange(7, ((uint32_t) minF)/1000, ((uint32_t) maxF)/1000); // frequency dial is in kHz
54 
55  m_limeSDROutput->getSRRange(minF, maxF);
56  ui->sampleRate->setColorMapper(ColorMapper(ColorMapper::GrayGreenYellow));
57  ui->sampleRate->setValueRange(8, (uint32_t) minF, (uint32_t) maxF);
58 
59  m_limeSDROutput->getLPRange(minF, maxF);
60  ui->lpf->setColorMapper(ColorMapper(ColorMapper::GrayYellow));
61  ui->lpf->setValueRange(6, (minF/1000)+1, maxF/1000);
62 
63  ui->lpFIR->setColorMapper(ColorMapper(ColorMapper::GrayYellow));
64  ui->lpFIR->setValueRange(5, 1U, 56000U);
65 
66  ui->ncoFrequency->setColorMapper(ColorMapper(ColorMapper::GrayGold));
67 
68  ui->channelNumberText->setText(tr("#%1").arg(m_limeSDROutput->getChannelIndex()));
69 
71  {
72  ui->antenna->setItemText(1, "Hi");
73  ui->antenna->setItemText(2, "Lo");
74  }
75  else
76  {
77  ui->antenna->setItemText(1, "Lo");
78  ui->antenna->setItemText(2, "Hi");
79  }
80 
81  ui->hwInterpLabel->setText(QString::fromUtf8("H\u2191"));
82  ui->swInterpLabel->setText(QString::fromUtf8("S\u2191"));
83 
84  connect(&m_updateTimer, SIGNAL(timeout()), this, SLOT(updateHardware()));
85  connect(&m_statusTimer, SIGNAL(timeout()), this, SLOT(updateStatus()));
86  m_statusTimer.start(500);
87 
89 
90  char recFileNameCStr[30];
91  sprintf(recFileNameCStr, "test_%d.sdriq", m_deviceUISet->m_deviceAPI->getDeviceUID());
92 
93  connect(&m_inputMessageQueue, SIGNAL(messageEnqueued()), this, SLOT(handleInputMessages()), Qt::QueuedConnection);
94 
95  CRightClickEnabler *startStopRightClickEnabler = new CRightClickEnabler(ui->startStop);
96  connect(startStopRightClickEnabler, SIGNAL(rightClick(const QPoint &)), this, SLOT(openDeviceSettingsDialog(const QPoint &)));
97 
98  sendSettings();
99 }
MessageQueue m_inputMessageQueue
uint getDeviceUID() const
Return the current device engine unique ID.
Definition: deviceapi.cpp:303
DeviceSampleSink * getSampleSink()
Return pointer to the device sample sink (single Tx) or nullptr.
Definition: deviceapi.cpp:222
unsigned int uint32_t
Definition: rtptypes_win.h:46
Fixed< IntType, IntBits > arg(const std::complex< Fixed< IntType, IntBits > > &val)
Definition: fixed.h:2401
bool m_sampleRateMode
true: device, false: base band sample rate update mode
engine is before initialization
Definition: deviceapi.h:53
void getSRRange(float &minF, float &maxF) const
DeviceAPI * m_deviceAPI
Definition: deviceuiset.h:48
std::size_t getChannelIndex()
void getLPRange(float &minF, float &maxF) const
void getLORange(float &minF, float &maxF) const
DeviceUISet * m_deviceUISet
LimeSDROutput * m_limeSDROutput
Same object as above but gives easy access to LimeSDROutput methods and attributes that are used inte...
LimeSDROutputSettings m_settings
void openDeviceSettingsDialog(const QPoint &p)
DeviceLimeSDRParams::LimeType getLimeType() const
Ui::LimeSDROutputGUI * ui
+ Here is the call graph for this function:

◆ ~LimeSDROutputGUI()

LimeSDROutputGUI::~LimeSDROutputGUI ( )
virtual

Definition at line 101 of file limesdroutputgui.cpp.

References ui.

102 {
103  delete ui;
104 }
Ui::LimeSDROutputGUI * ui

Member Function Documentation

◆ blockApplySettings()

void LimeSDROutputGUI::blockApplySettings ( bool  block)
private

Definition at line 509 of file limesdroutputgui.cpp.

References m_doApplySettings.

Referenced by handleInputMessages(), and handleMessage().

510 {
511  m_doApplySettings = !block;
512 }
+ Here is the caller graph for this function:

◆ deserialize()

bool LimeSDROutputGUI::deserialize ( const QByteArray &  data)
virtual

Implements PluginInstanceGUI.

Definition at line 145 of file limesdroutputgui.cpp.

References LimeSDROutputSettings::deserialize(), displaySettings(), m_forceSettings, m_settings, resetToDefaults(), and sendSettings().

146 {
147  if (m_settings.deserialize(data))
148  {
149  displaySettings();
150  m_forceSettings = true;
151  sendSettings();
152  return true;
153  }
154  else
155  {
156  resetToDefaults();
157  return false;
158  }
159 }
bool deserialize(const QByteArray &data)
LimeSDROutputSettings m_settings
+ Here is the call graph for this function:

◆ destroy()

void LimeSDROutputGUI::destroy ( )
virtual

Implements PluginInstanceGUI.

Definition at line 106 of file limesdroutputgui.cpp.

107 {
108  delete this;
109 }

◆ displaySampleRate()

void LimeSDROutputGUI::displaySampleRate ( )
private

Definition at line 332 of file limesdroutputgui.cpp.

References arg(), LimeSDROutput::getSRRange(), LimeSDROutputSettings::m_devSampleRate, m_limeSDROutput, LimeSDROutputSettings::m_log2SoftInterp, m_sampleRateMode, m_settings, and ui.

Referenced by displaySettings(), on_sampleRateMode_toggled(), on_swInterp_currentIndexChanged(), and updateSampleRateAndFrequency().

333 {
334  float minF, maxF;
335  m_limeSDROutput->getSRRange(minF, maxF);
336 
337  ui->sampleRate->blockSignals(true);
338 
339  if (m_sampleRateMode)
340  {
341  ui->sampleRateMode->setStyleSheet("QToolButton { background:rgb(60,60,60); }");
342  ui->sampleRateMode->setText("SR");
343  ui->sampleRate->setValueRange(8, (uint32_t) minF, (uint32_t) maxF);
344  ui->sampleRate->setValue(m_settings.m_devSampleRate);
345  ui->sampleRate->setToolTip("Host to device sample rate (S/s)");
346  ui->deviceRateText->setToolTip("Baseband sample rate (S/s)");
348  ui->deviceRateText->setText(tr("%1k").arg(QString::number(basebandSampleRate / 1000.0f, 'g', 5)));
349  }
350  else
351  {
352  ui->sampleRateMode->setStyleSheet("QToolButton { background:rgb(50,50,50); }");
353  ui->sampleRateMode->setText("BB");
354  ui->sampleRate->setValueRange(8, (uint32_t) minF/(1<<m_settings.m_log2SoftInterp), (uint32_t) maxF/(1<<m_settings.m_log2SoftInterp));
355  ui->sampleRate->setValue(m_settings.m_devSampleRate/(1<<m_settings.m_log2SoftInterp));
356  ui->sampleRate->setToolTip("Baseband sample rate (S/s)");
357  ui->deviceRateText->setToolTip("Host to device sample rate (S/s)");
358  ui->deviceRateText->setText(tr("%1k").arg(QString::number(m_settings.m_devSampleRate / 1000.0f, 'g', 5)));
359  }
360 
361  ui->sampleRate->blockSignals(false);
362 }
unsigned int uint32_t
Definition: rtptypes_win.h:46
Fixed< IntType, IntBits > arg(const std::complex< Fixed< IntType, IntBits > > &val)
Definition: fixed.h:2401
bool m_sampleRateMode
true: device, false: base band sample rate update mode
void getSRRange(float &minF, float &maxF) const
LimeSDROutput * m_limeSDROutput
Same object as above but gives easy access to LimeSDROutput methods and attributes that are used inte...
LimeSDROutputSettings m_settings
Ui::LimeSDROutputGUI * ui
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ displaySettings()

void LimeSDROutputGUI::displaySettings ( )
private

Definition at line 364 of file limesdroutputgui.cpp.

References arg(), displaySampleRate(), LimeSDROutputSettings::m_antennaPath, LimeSDROutputSettings::m_extClock, LimeSDROutputSettings::m_extClockFreq, LimeSDROutputSettings::m_gain, LimeSDROutputSettings::m_log2HardInterp, LimeSDROutputSettings::m_log2SoftInterp, LimeSDROutputSettings::m_lpfBW, LimeSDROutputSettings::m_lpfFIRBW, LimeSDROutputSettings::m_lpfFIREnable, LimeSDROutputSettings::m_ncoEnable, m_settings, LimeSDROutputSettings::m_transverterDeltaFrequency, LimeSDROutputSettings::m_transverterMode, setCenterFrequencyDisplay(), setNCODisplay(), ui, and updateDACRate().

Referenced by deserialize(), handleInputMessages(), handleMessage(), LimeSDROutputGUI(), resetToDefaults(), and setCenterFrequency().

365 {
366  ui->transverter->setDeltaFrequency(m_settings.m_transverterDeltaFrequency);
367  ui->transverter->setDeltaFrequencyActive(m_settings.m_transverterMode);
368 
369  ui->extClock->setExternalClockFrequency(m_settings.m_extClockFreq);
370  ui->extClock->setExternalClockActive(m_settings.m_extClock);
371 
374 
375  ui->hwInterp->setCurrentIndex(m_settings.m_log2HardInterp);
376  ui->swInterp->setCurrentIndex(m_settings.m_log2SoftInterp);
377 
378  updateDACRate();
379 
380  ui->lpf->setValue(m_settings.m_lpfBW / 1000);
381 
382  ui->lpFIREnable->setChecked(m_settings.m_lpfFIREnable);
383  ui->lpFIR->setValue(m_settings.m_lpfFIRBW / 1000);
384 
385  ui->gain->setValue(m_settings.m_gain);
386  ui->gainText->setText(tr("%1dB").arg(m_settings.m_gain));
387 
388  ui->antenna->setCurrentIndex((int) m_settings.m_antennaPath);
389 
390  setNCODisplay();
391 
392  ui->ncoEnable->setChecked(m_settings.m_ncoEnable);
393 }
uint32_t m_extClockFreq
Frequency (Hz) of external clock source.
Fixed< IntType, IntBits > arg(const std::complex< Fixed< IntType, IntBits > > &val)
Definition: fixed.h:2401
bool m_ncoEnable
Enable TSP NCO and mixing.
bool m_extClock
True if external clock source.
bool m_lpfFIREnable
Enable LMS digital lowpass FIR filters.
LimeSDROutputSettings m_settings
uint32_t m_gain
Optimally distributed gain (dB)
float m_lpfBW
LMS amalog lowpass filter bandwidth (Hz)
float m_lpfFIRBW
LMS digital lowpass FIR filters bandwidth (Hz)
Ui::LimeSDROutputGUI * ui
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getCenterFrequency()

qint64 LimeSDROutputGUI::getCenterFrequency ( ) const
virtual

Implements PluginInstanceGUI.

Definition at line 128 of file limesdroutputgui.cpp.

References LimeSDROutputSettings::m_centerFrequency, LimeSDROutputSettings::m_ncoEnable, LimeSDROutputSettings::m_ncoFrequency, and m_settings.

129 {
131 }
int m_ncoFrequency
Actual NCO frequency (the resulting frequency with mixing is displayed)
bool m_ncoEnable
Enable TSP NCO and mixing.
LimeSDROutputSettings m_settings

◆ getInputMessageQueue()

virtual MessageQueue* LimeSDROutputGUI::getInputMessageQueue ( )
inlinevirtual

Implements PluginInstanceGUI.

Definition at line 52 of file limesdroutputgui.h.

52 { return &m_inputMessageQueue; }
MessageQueue m_inputMessageQueue

◆ getName()

QString LimeSDROutputGUI::getName ( ) const
virtual

Implements PluginInstanceGUI.

Definition at line 116 of file limesdroutputgui.cpp.

117 {
118  return objectName();
119 }

◆ handleInputMessages

void LimeSDROutputGUI::handleInputMessages ( )
privateslot

Definition at line 272 of file limesdroutputgui.cpp.

References blockApplySettings(), displaySettings(), Message::getIdentifier(), LimeSDROutput::MsgConfigureLimeSDR::getSettings(), LimeSDROutput::MsgStartStop::getStartStop(), handleMessage(), m_deviceCenterFrequency, m_inputMessageQueue, m_sampleRate, m_settings, Message::match(), MessageQueue::pop(), ui, and updateSampleRateAndFrequency().

Referenced by LimeSDROutputGUI().

273 {
274  Message* message;
275 
276  while ((message = m_inputMessageQueue.pop()) != 0)
277  {
278  if (DSPSignalNotification::match(*message))
279  {
280  qDebug("LimeSDROutputGUI::handleInputMessages: message: %s", message->getIdentifier());
281  DSPSignalNotification* notif = (DSPSignalNotification*) message;
282  m_sampleRate = notif->getSampleRate();
283  m_deviceCenterFrequency = notif->getCenterFrequency();
284  qDebug("LimeSDROutputGUI::handleInputMessages: DSPSignalNotification: SampleRate: %d, CenterFrequency: %llu", notif->getSampleRate(), notif->getCenterFrequency());
286 
287  delete message;
288  }
290  {
292  m_settings = cfg.getSettings();
293  displaySettings();
294 
295  delete message;
296  }
297  else if (LimeSDROutput::MsgStartStop::match(*message))
298  {
300  blockApplySettings(true);
301  ui->startStop->setChecked(notif.getStartStop());
302  blockApplySettings(false);
303  delete message;
304  }
305  else
306  {
307  if (handleMessage(*message)) {
308  delete message;
309  }
310  }
311  }
312 }
MessageQueue m_inputMessageQueue
Message * pop()
Pop message from queue.
quint64 m_deviceCenterFrequency
Center frequency in device.
void updateSampleRateAndFrequency()
virtual bool handleMessage(const Message &message)
void blockApplySettings(bool block)
static bool match(const Message *message)
Definition: message.cpp:45
const LimeSDROutputSettings & getSettings() const
Definition: limesdroutput.h:44
virtual const char * getIdentifier() const
Definition: message.cpp:35
LimeSDROutputSettings m_settings
Ui::LimeSDROutputGUI * ui
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ handleMessage()

bool LimeSDROutputGUI::handleMessage ( const Message message)
virtual

Implements PluginInstanceGUI.

Definition at line 178 of file limesdroutputgui.cpp.

References arg(), blockApplySettings(), displaySettings(), LimeSDROutput::MsgReportStreamInfo::getActive(), DeviceLimeSDRShared::MsgReportBuddyChange::getCenterFrequency(), DeviceLimeSDRShared::MsgReportBuddyChange::getDevSampleRate(), LimeSDROutput::MsgReportStreamInfo::getDroppedPackets(), DeviceLimeSDRShared::MsgReportClockSourceChange::getExtClock(), DeviceLimeSDRShared::MsgReportClockSourceChange::getExtClockFeq(), LimeSDROutput::MsgReportStreamInfo::getFifoFilledCount(), LimeSDROutput::MsgReportStreamInfo::getFifoSize(), DeviceLimeSDRShared::MsgReportDeviceInfo::getGPIOPins(), LimeSDROutput::MsgReportStreamInfo::getLinkRate(), DeviceLimeSDRShared::MsgReportBuddyChange::getLog2HardDecimInterp(), LimeSDROutput::MsgReportStreamInfo::getOverrun(), DeviceLimeSDRShared::MsgReportBuddyChange::getRxElseTx(), LimeSDROutput::MsgConfigureLimeSDR::getSettings(), LimeSDROutput::MsgReportStreamInfo::getSuccess(), DeviceLimeSDRShared::MsgReportDeviceInfo::getTemperature(), LimeSDROutput::MsgReportStreamInfo::getUnderrun(), LimeSDROutputSettings::m_centerFrequency, LimeSDROutputSettings::m_devSampleRate, LimeSDROutputSettings::m_extClock, LimeSDROutputSettings::m_extClockFreq, LimeSDROutputSettings::m_log2HardInterp, m_settings, Message::match(), and ui.

Referenced by handleInputMessages().

179 {
181  {
183  m_settings = cfg.getSettings();
184  blockApplySettings(true);
185  displaySettings();
186  blockApplySettings(false);
187  return true;
188  }
190  {
194 
195  if (!report.getRxElseTx()) {
197  }
198 
199  blockApplySettings(true);
200  displaySettings();
201  blockApplySettings(false);
202 
203  return true;
204  }
206  {
209  m_settings.m_extClock = report.getExtClock();
210 
211  blockApplySettings(true);
212  ui->extClock->setExternalClockFrequency(m_settings.m_extClockFreq);
213  ui->extClock->setExternalClockActive(m_settings.m_extClock);
214  blockApplySettings(false);
215 
216  return true;
217  }
219  {
221 
222  if (report.getSuccess())
223  {
224  if (report.getActive()) {
225  ui->streamStatusLabel->setStyleSheet("QLabel { background-color : green; }");
226  } else {
227  ui->streamStatusLabel->setStyleSheet("QLabel { background-color : blue; }");
228  }
229 
230  ui->streamLinkRateText->setText(tr("%1 MB/s").arg(QString::number(report.getLinkRate() / 1000000.0f, 'f', 3)));
231 
232  if (report.getUnderrun() > 0) {
233  ui->underrunLabel->setStyleSheet("QLabel { background-color : red; }");
234  } else {
235  ui->underrunLabel->setStyleSheet("QLabel { background:rgb(79,79,79); }");
236  }
237 
238  if (report.getOverrun() > 0) {
239  ui->overrunLabel->setStyleSheet("QLabel { background-color : red; }");
240  } else {
241  ui->overrunLabel->setStyleSheet("QLabel { background:rgb(79,79,79); }");
242  }
243 
244  if (report.getDroppedPackets() > 0) {
245  ui->droppedLabel->setStyleSheet("QLabel { background-color : red; }");
246  } else {
247  ui->droppedLabel->setStyleSheet("QLabel { background:rgb(79,79,79); }");
248  }
249 
250  ui->fifoBar->setMaximum(report.getFifoSize());
251  ui->fifoBar->setValue(report.getFifoFilledCount());
252  ui->fifoBar->setToolTip(tr("FIFO fill %1/%2 samples").arg(QString::number(report.getFifoFilledCount())).arg(QString::number(report.getFifoSize())));
253  }
254  else
255  {
256  ui->streamStatusLabel->setStyleSheet("QLabel { background:rgb(79,79,79); }");
257  }
258 
259  return true;
260  }
262  {
264  ui->temperatureText->setText(tr("%1C").arg(QString::number(report.getTemperature(), 'f', 0)));
265  ui->gpioText->setText(tr("%1").arg(report.getGPIOPins(), 2, 16, QChar('0')).toUpper());
266  return true;
267  }
268 
269  return false;
270 }
uint32_t m_extClockFreq
Frequency (Hz) of external clock source.
Fixed< IntType, IntBits > arg(const std::complex< Fixed< IntType, IntBits > > &val)
Definition: fixed.h:2401
void blockApplySettings(bool block)
static bool match(const Message *message)
Definition: message.cpp:45
const LimeSDROutputSettings & getSettings() const
Definition: limesdroutput.h:44
bool m_extClock
True if external clock source.
LimeSDROutputSettings m_settings
Ui::LimeSDROutputGUI * ui
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ on_antenna_currentIndexChanged

void LimeSDROutputGUI::on_antenna_currentIndexChanged ( int  index)
privateslot

Definition at line 608 of file limesdroutputgui.cpp.

References LimeSDROutputSettings::m_antennaPath, m_settings, and sendSettings().

+ Here is the call graph for this function:

◆ on_centerFrequency_changed

void LimeSDROutputGUI::on_centerFrequency_changed ( quint64  value)
privateslot

Definition at line 523 of file limesdroutputgui.cpp.

References sendSettings(), and setCenterFrequencySetting().

524 {
526  sendSettings();
527 }
void setCenterFrequencySetting(uint64_t kHzValue)
+ Here is the call graph for this function:

◆ on_extClock_clicked

void LimeSDROutputGUI::on_extClock_clicked ( )
privateslot

Definition at line 614 of file limesdroutputgui.cpp.

References LimeSDROutputSettings::m_extClock, LimeSDROutputSettings::m_extClockFreq, m_settings, sendSettings(), and ui.

615 {
616  m_settings.m_extClock = ui->extClock->getExternalClockActive();
617  m_settings.m_extClockFreq = ui->extClock->getExternalClockFrequency();
618  qDebug("LimeSDROutputGUI::on_extClock_clicked: %u Hz %s", m_settings.m_extClockFreq, m_settings.m_extClock ? "on" : "off");
619  sendSettings();
620 }
uint32_t m_extClockFreq
Frequency (Hz) of external clock source.
bool m_extClock
True if external clock source.
LimeSDROutputSettings m_settings
Ui::LimeSDROutputGUI * ui
+ Here is the call graph for this function:

◆ on_gain_valueChanged

void LimeSDROutputGUI::on_gain_valueChanged ( int  value)
privateslot

Definition at line 601 of file limesdroutputgui.cpp.

References arg(), LimeSDROutputSettings::m_gain, m_settings, sendSettings(), and ui.

602 {
603  m_settings.m_gain = value;
604  ui->gainText->setText(tr("%1dB").arg(m_settings.m_gain));
605  sendSettings();
606 }
Fixed< IntType, IntBits > arg(const std::complex< Fixed< IntType, IntBits > > &val)
Definition: fixed.h:2401
LimeSDROutputSettings m_settings
uint32_t m_gain
Optimally distributed gain (dB)
Ui::LimeSDROutputGUI * ui
+ Here is the call graph for this function:

◆ on_hwInterp_currentIndexChanged

void LimeSDROutputGUI::on_hwInterp_currentIndexChanged ( int  index)
privateslot

Definition at line 555 of file limesdroutputgui.cpp.

References LimeSDROutputSettings::m_log2HardInterp, m_settings, sendSettings(), setNCODisplay(), and updateDACRate().

556 {
557  if ((index <0) || (index > 5))
558  return;
560  updateDACRate();
561  setNCODisplay();
562  sendSettings();
563 }
LimeSDROutputSettings m_settings
+ Here is the call graph for this function:

◆ on_lpf_changed

void LimeSDROutputGUI::on_lpf_changed ( quint64  value)
privateslot

Definition at line 583 of file limesdroutputgui.cpp.

References LimeSDROutputSettings::m_lpfBW, m_settings, and sendSettings().

584 {
585  m_settings.m_lpfBW = value * 1000;
586  sendSettings();
587 }
LimeSDROutputSettings m_settings
float m_lpfBW
LMS amalog lowpass filter bandwidth (Hz)
+ Here is the call graph for this function:

◆ on_lpFIR_changed

void LimeSDROutputGUI::on_lpFIR_changed ( quint64  value)
privateslot

Definition at line 595 of file limesdroutputgui.cpp.

References LimeSDROutputSettings::m_lpfFIRBW, m_settings, and sendSettings().

596 {
597  m_settings.m_lpfFIRBW = value * 1000;
598  sendSettings();
599 }
LimeSDROutputSettings m_settings
float m_lpfFIRBW
LMS digital lowpass FIR filters bandwidth (Hz)
+ Here is the call graph for this function:

◆ on_lpFIREnable_toggled

void LimeSDROutputGUI::on_lpFIREnable_toggled ( bool  checked)
privateslot

Definition at line 589 of file limesdroutputgui.cpp.

References LimeSDROutputSettings::m_lpfFIREnable, m_settings, and sendSettings().

590 {
591  m_settings.m_lpfFIREnable = checked;
592  sendSettings();
593 }
bool m_lpfFIREnable
Enable LMS digital lowpass FIR filters.
LimeSDROutputSettings m_settings
+ Here is the call graph for this function:

◆ on_ncoEnable_toggled

void LimeSDROutputGUI::on_ncoEnable_toggled ( bool  checked)
privateslot

Definition at line 536 of file limesdroutputgui.cpp.

References LimeSDROutputSettings::m_ncoEnable, m_settings, sendSettings(), and setCenterFrequencyDisplay().

537 {
538  m_settings.m_ncoEnable = checked;
540  sendSettings();
541 }
bool m_ncoEnable
Enable TSP NCO and mixing.
LimeSDROutputSettings m_settings
+ Here is the call graph for this function:

◆ on_ncoFrequency_changed

void LimeSDROutputGUI::on_ncoFrequency_changed ( qint64  value)
privateslot

Definition at line 529 of file limesdroutputgui.cpp.

References LimeSDROutputSettings::m_ncoFrequency, m_settings, sendSettings(), and setCenterFrequencyDisplay().

530 {
531  m_settings.m_ncoFrequency = value;
533  sendSettings();
534 }
int m_ncoFrequency
Actual NCO frequency (the resulting frequency with mixing is displayed)
LimeSDROutputSettings m_settings
+ Here is the call graph for this function:

◆ on_sampleRate_changed

void LimeSDROutputGUI::on_sampleRate_changed ( quint64  value)
privateslot

Definition at line 543 of file limesdroutputgui.cpp.

References LimeSDROutputSettings::m_devSampleRate, LimeSDROutputSettings::m_log2SoftInterp, m_sampleRateMode, m_settings, sendSettings(), setNCODisplay(), and updateDACRate().

544 {
545  if (m_sampleRateMode) {
546  m_settings.m_devSampleRate = value;
547  } else {
549  }
550 
551  updateDACRate();
552  setNCODisplay();
553  sendSettings();}
bool m_sampleRateMode
true: device, false: base band sample rate update mode
LimeSDROutputSettings m_settings
+ Here is the call graph for this function:

◆ on_sampleRateMode_toggled

void LimeSDROutputGUI::on_sampleRateMode_toggled ( bool  checked)
privateslot

Definition at line 632 of file limesdroutputgui.cpp.

References displaySampleRate(), and m_sampleRateMode.

633 {
634  m_sampleRateMode = checked;
636 }
bool m_sampleRateMode
true: device, false: base band sample rate update mode
+ Here is the call graph for this function:

◆ on_startStop_toggled

void LimeSDROutputGUI::on_startStop_toggled ( bool  checked)
privateslot

Definition at line 514 of file limesdroutputgui.cpp.

References LimeSDROutput::MsgStartStop::create(), DeviceSampleSink::getInputMessageQueue(), m_doApplySettings, m_limeSDROutput, and MessageQueue::push().

515 {
516  if (m_doApplySettings)
517  {
520  }
521 }
void push(Message *message, bool emitSignal=true)
Push message onto queue.
MessageQueue * getInputMessageQueue()
static MsgStartStop * create(bool startStop)
Definition: limesdroutput.h:69
LimeSDROutput * m_limeSDROutput
Same object as above but gives easy access to LimeSDROutput methods and attributes that are used inte...
+ Here is the call graph for this function:

◆ on_swInterp_currentIndexChanged

void LimeSDROutputGUI::on_swInterp_currentIndexChanged ( int  index)
privateslot

Definition at line 565 of file limesdroutputgui.cpp.

References displaySampleRate(), LimeSDROutputSettings::m_devSampleRate, LimeSDROutputSettings::m_log2SoftInterp, m_sampleRateMode, m_settings, sendSettings(), and ui.

566 {
567  if ((index <0) || (index > 6)) {
568  return;
569  }
570 
573 
574  if (m_sampleRateMode) {
575  m_settings.m_devSampleRate = ui->sampleRate->getValueNew();
576  } else {
577  m_settings.m_devSampleRate = ui->sampleRate->getValueNew() * (1 << m_settings.m_log2SoftInterp);
578  }
579 
580  sendSettings();
581 }
bool m_sampleRateMode
true: device, false: base band sample rate update mode
LimeSDROutputSettings m_settings
Ui::LimeSDROutputGUI * ui
+ Here is the call graph for this function:

◆ on_transverter_clicked

void LimeSDROutputGUI::on_transverter_clicked ( )
privateslot

Definition at line 622 of file limesdroutputgui.cpp.

References m_settings, LimeSDROutputSettings::m_transverterDeltaFrequency, LimeSDROutputSettings::m_transverterMode, sendSettings(), setCenterFrequencySetting(), ui, and updateFrequencyLimits().

623 {
624  m_settings.m_transverterMode = ui->transverter->getDeltaFrequencyAcive();
625  m_settings.m_transverterDeltaFrequency = ui->transverter->getDeltaFrequency();
626  qDebug("LimeSDRInputGUI::on_transverter_clicked: %lld Hz %s", m_settings.m_transverterDeltaFrequency, m_settings.m_transverterMode ? "on" : "off");
628  setCenterFrequencySetting(ui->centerFrequency->getValueNew());
629  sendSettings();
630 }
LimeSDROutputSettings m_settings
Ui::LimeSDROutputGUI * ui
void setCenterFrequencySetting(uint64_t kHzValue)
+ Here is the call graph for this function:

◆ openDeviceSettingsDialog

void LimeSDROutputGUI::openDeviceSettingsDialog ( const QPoint &  p)
privateslot

Definition at line 638 of file limesdroutputgui.cpp.

References BasicDeviceSettingsDialog::getReverseAPIAddress(), BasicDeviceSettingsDialog::getReverseAPIDeviceIndex(), BasicDeviceSettingsDialog::getReverseAPIPort(), LimeSDROutputSettings::m_reverseAPIAddress, LimeSDROutputSettings::m_reverseAPIDeviceIndex, LimeSDROutputSettings::m_reverseAPIPort, m_settings, LimeSDROutputSettings::m_useReverseAPI, sendSettings(), BasicDeviceSettingsDialog::setReverseAPIAddress(), BasicDeviceSettingsDialog::setReverseAPIDeviceIndex(), BasicDeviceSettingsDialog::setReverseAPIPort(), BasicDeviceSettingsDialog::setUseReverseAPI(), and BasicDeviceSettingsDialog::useReverseAPI().

Referenced by LimeSDROutputGUI().

639 {
640  BasicDeviceSettingsDialog dialog(this);
641  dialog.setUseReverseAPI(m_settings.m_useReverseAPI);
642  dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
643  dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
644  dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
645 
646  dialog.move(p);
647  dialog.exec();
648 
649  m_settings.m_useReverseAPI = dialog.useReverseAPI();
650  m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
651  m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
652  m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
653 
654  sendSettings();
655 }
LimeSDROutputSettings m_settings
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ resetToDefaults()

void LimeSDROutputGUI::resetToDefaults ( )
virtual

Implements PluginInstanceGUI.

Definition at line 121 of file limesdroutputgui.cpp.

References displaySettings(), m_settings, LimeSDROutputSettings::resetToDefaults(), and sendSettings().

Referenced by deserialize().

122 {
124  displaySettings();
125  sendSettings();
126 }
LimeSDROutputSettings m_settings
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ sendSettings()

void LimeSDROutputGUI::sendSettings ( )
private

◆ serialize()

QByteArray LimeSDROutputGUI::serialize ( ) const
virtual

Implements PluginInstanceGUI.

Definition at line 140 of file limesdroutputgui.cpp.

References m_settings, and LimeSDROutputSettings::serialize().

141 {
142  return m_settings.serialize();
143 }
QByteArray serialize() const
LimeSDROutputSettings m_settings
+ Here is the call graph for this function:

◆ setCenterFrequency()

void LimeSDROutputGUI::setCenterFrequency ( qint64  centerFrequency)
virtual

Implements PluginInstanceGUI.

Definition at line 133 of file limesdroutputgui.cpp.

References displaySettings(), LimeSDROutputSettings::m_centerFrequency, LimeSDROutputSettings::m_ncoEnable, LimeSDROutputSettings::m_ncoFrequency, m_settings, and sendSettings().

134 {
136  displaySettings();
137  sendSettings();
138 }
int m_ncoFrequency
Actual NCO frequency (the resulting frequency with mixing is displayed)
bool m_ncoEnable
Enable TSP NCO and mixing.
LimeSDROutputSettings m_settings
+ Here is the call graph for this function:

◆ setCenterFrequencyDisplay()

void LimeSDROutputGUI::setCenterFrequencyDisplay ( )
private

Definition at line 410 of file limesdroutputgui.cpp.

References arg(), LimeSDROutputSettings::m_centerFrequency, LimeSDROutputSettings::m_ncoEnable, LimeSDROutputSettings::m_ncoFrequency, m_settings, and ui.

Referenced by displaySettings(), on_ncoEnable_toggled(), and on_ncoFrequency_changed().

411 {
412  int64_t centerFrequency = m_settings.m_centerFrequency;
413  ui->centerFrequency->setToolTip(QString("Main center frequency in kHz (LO: %1 kHz)").arg(centerFrequency/1000));
414 
415  if (m_settings.m_ncoEnable) {
416  centerFrequency += m_settings.m_ncoFrequency;
417  }
418 
419  ui->centerFrequency->blockSignals(true);
420  ui->centerFrequency->setValue(centerFrequency < 0 ? 0 : (uint64_t) centerFrequency/1000); // kHz
421  ui->centerFrequency->blockSignals(false);
422 }
int m_ncoFrequency
Actual NCO frequency (the resulting frequency with mixing is displayed)
__int64 int64_t
Definition: rtptypes_win.h:47
Fixed< IntType, IntBits > arg(const std::complex< Fixed< IntType, IntBits > > &val)
Definition: fixed.h:2401
bool m_ncoEnable
Enable TSP NCO and mixing.
LimeSDROutputSettings m_settings
Ui::LimeSDROutputGUI * ui
unsigned __int64 uint64_t
Definition: rtptypes_win.h:48
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setCenterFrequencySetting()

void LimeSDROutputGUI::setCenterFrequencySetting ( uint64_t  kHzValue)
private

Definition at line 424 of file limesdroutputgui.cpp.

References arg(), LimeSDROutputSettings::m_centerFrequency, LimeSDROutputSettings::m_ncoEnable, LimeSDROutputSettings::m_ncoFrequency, m_settings, and ui.

Referenced by on_centerFrequency_changed(), and on_transverter_clicked().

425 {
426  int64_t centerFrequency = kHzValue*1000;
427 
428  if (m_settings.m_ncoEnable) {
429  centerFrequency -= m_settings.m_ncoFrequency;
430  }
431 
432  m_settings.m_centerFrequency = centerFrequency < 0 ? 0 : (uint64_t) centerFrequency;
433  ui->centerFrequency->setToolTip(QString("Main center frequency in kHz (LO: %1 kHz)").arg(centerFrequency/1000));
434 }
int m_ncoFrequency
Actual NCO frequency (the resulting frequency with mixing is displayed)
__int64 int64_t
Definition: rtptypes_win.h:47
Fixed< IntType, IntBits > arg(const std::complex< Fixed< IntType, IntBits > > &val)
Definition: fixed.h:2401
bool m_ncoEnable
Enable TSP NCO and mixing.
LimeSDROutputSettings m_settings
Ui::LimeSDROutputGUI * ui
unsigned __int64 uint64_t
Definition: rtptypes_win.h:48
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setName()

void LimeSDROutputGUI::setName ( const QString &  name)
virtual

Implements PluginInstanceGUI.

Definition at line 111 of file limesdroutputgui.cpp.

112 {
113  setObjectName(name);
114 }

◆ setNCODisplay()

void LimeSDROutputGUI::setNCODisplay ( )
private

Definition at line 395 of file limesdroutputgui.cpp.

References arg(), LimeSDROutputSettings::m_devSampleRate, LimeSDROutputSettings::m_log2HardInterp, LimeSDROutputSettings::m_ncoFrequency, m_settings, and ui.

Referenced by displaySettings(), on_hwInterp_currentIndexChanged(), and on_sampleRate_changed().

396 {
397  int ncoHalfRange = (m_settings.m_devSampleRate * (1<<(m_settings.m_log2HardInterp)))/2;
398  ui->ncoFrequency->setValueRange(
399  false,
400  8,
401  -ncoHalfRange,
402  ncoHalfRange);
403 
404  ui->ncoFrequency->blockSignals(true);
405  ui->ncoFrequency->setToolTip(QString("NCO frequency shift in Hz (Range: +/- %1 kHz)").arg(ncoHalfRange/1000));
406  ui->ncoFrequency->setValue(m_settings.m_ncoFrequency);
407  ui->ncoFrequency->blockSignals(false);
408 }
int m_ncoFrequency
Actual NCO frequency (the resulting frequency with mixing is displayed)
Fixed< IntType, IntBits > arg(const std::complex< Fixed< IntType, IntBits > > &val)
Definition: fixed.h:2401
LimeSDROutputSettings m_settings
Ui::LimeSDROutputGUI * ui
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ updateDACRate()

void LimeSDROutputGUI::updateDACRate ( )
private

Definition at line 321 of file limesdroutputgui.cpp.

References arg(), LimeSDROutputSettings::m_devSampleRate, LimeSDROutputSettings::m_log2HardInterp, m_settings, and ui.

Referenced by displaySettings(), on_hwInterp_currentIndexChanged(), and on_sampleRate_changed().

322 {
324 
325  if (dacRate < 100000000) {
326  ui->dacRateLabel->setText(tr("%1k").arg(QString::number(dacRate / 1000.0f, 'g', 5)));
327  } else {
328  ui->dacRateLabel->setText(tr("%1M").arg(QString::number(dacRate / 1000000.0f, 'g', 5)));
329  }
330 }
unsigned int uint32_t
Definition: rtptypes_win.h:46
Fixed< IntType, IntBits > arg(const std::complex< Fixed< IntType, IntBits > > &val)
Definition: fixed.h:2401
LimeSDROutputSettings m_settings
Ui::LimeSDROutputGUI * ui
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ updateFrequencyLimits()

void LimeSDROutputGUI::updateFrequencyLimits ( )
private

Definition at line 161 of file limesdroutputgui.cpp.

References LimeSDROutput::getLORange(), m_limeSDROutput, m_settings, LimeSDROutputSettings::m_transverterDeltaFrequency, LimeSDROutputSettings::m_transverterMode, and ui.

Referenced by on_transverter_clicked().

162 {
163  // values in kHz
164  float minF, maxF;
165  qint64 deltaFrequency = m_settings.m_transverterMode ? m_settings.m_transverterDeltaFrequency/1000 : 0;
166  m_limeSDROutput->getLORange(minF, maxF);
167  qint64 minLimit = minF/1000 + deltaFrequency;
168  qint64 maxLimit = maxF/1000 + deltaFrequency;
169 
170  minLimit = minLimit < 0 ? 0 : minLimit > 9999999 ? 9999999 : minLimit;
171  maxLimit = maxLimit < 0 ? 0 : maxLimit > 9999999 ? 9999999 : maxLimit;
172 
173  qDebug("LimeSDROutputGUI::updateFrequencyLimits: delta: %lld min: %lld max: %lld", deltaFrequency, minLimit, maxLimit);
174 
175  ui->centerFrequency->setValueRange(7, minLimit, maxLimit);
176 }
void getLORange(float &minF, float &maxF) const
LimeSDROutput * m_limeSDROutput
Same object as above but gives easy access to LimeSDROutput methods and attributes that are used inte...
LimeSDROutputSettings m_settings
Ui::LimeSDROutputGUI * ui
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ updateHardware

void LimeSDROutputGUI::updateHardware ( )
privateslot

Definition at line 442 of file limesdroutputgui.cpp.

References LimeSDROutput::MsgConfigureLimeSDR::create(), DeviceSampleSink::getInputMessageQueue(), m_doApplySettings, m_forceSettings, m_limeSDROutput, m_settings, m_updateTimer, and MessageQueue::push().

Referenced by LimeSDROutputGUI().

443 {
444  if (m_doApplySettings)
445  {
446  qDebug() << "LimeSDROutputGUI::updateHardware";
449  m_forceSettings = false;
450  m_updateTimer.stop();
451  }
452 }
void push(Message *message, bool emitSignal=true)
Push message onto queue.
static MsgConfigureLimeSDR * create(const LimeSDROutputSettings &settings, bool force)
Definition: limesdroutput.h:47
MessageQueue * getInputMessageQueue()
LimeSDROutput * m_limeSDROutput
Same object as above but gives easy access to LimeSDROutput methods and attributes that are used inte...
LimeSDROutputSettings m_settings
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ updateSampleRateAndFrequency()

void LimeSDROutputGUI::updateSampleRateAndFrequency ( )
private

Definition at line 314 of file limesdroutputgui.cpp.

References displaySampleRate(), DeviceUISet::getSpectrum(), m_deviceCenterFrequency, m_deviceUISet, m_sampleRate, GLSpectrum::setCenterFrequency(), and GLSpectrum::setSampleRate().

Referenced by handleInputMessages().

315 {
319 }
void setSampleRate(qint32 sampleRate)
Definition: glspectrum.cpp:211
quint64 m_deviceCenterFrequency
Center frequency in device.
GLSpectrum * getSpectrum()
Direct spectrum getter.
Definition: deviceuiset.h:57
DeviceUISet * m_deviceUISet
void setCenterFrequency(qint64 frequency)
Definition: glspectrum.cpp:175
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ updateStatus

void LimeSDROutputGUI::updateStatus ( )
privateslot

Definition at line 454 of file limesdroutputgui.cpp.

References LimeSDROutput::MsgGetStreamInfo::create(), LimeSDROutput::MsgGetDeviceInfo::create(), DeviceAPI::errorMessage(), DeviceSampleSink::getInputMessageQueue(), DeviceAPI::isBuddyLeader(), DeviceUISet::m_deviceAPI, m_deviceStatusCounter, m_deviceUISet, m_lastEngineState, m_limeSDROutput, m_statusCounter, MessageQueue::push(), DeviceAPI::state(), DeviceAPI::StError, DeviceAPI::StIdle, DeviceAPI::StNotStarted, DeviceAPI::StRunning, and ui.

Referenced by LimeSDROutputGUI().

455 {
456  int state = m_deviceUISet->m_deviceAPI->state();
457 
458  if(m_lastEngineState != state)
459  {
460  switch(state)
461  {
463  ui->startStop->setStyleSheet("QToolButton { background:rgb(79,79,79); }");
464  break;
465  case DeviceAPI::StIdle:
466  ui->startStop->setStyleSheet("QToolButton { background-color : blue; }");
467  break;
469  ui->startStop->setStyleSheet("QToolButton { background-color : green; }");
470  break;
471  case DeviceAPI::StError:
472  ui->startStop->setStyleSheet("QToolButton { background-color : red; }");
473  QMessageBox::information(this, tr("Message"), m_deviceUISet->m_deviceAPI->errorMessage());
474  break;
475  default:
476  break;
477  }
478 
479  m_lastEngineState = state;
480  }
481 
482  if (m_statusCounter < 1)
483  {
484  m_statusCounter++;
485  }
486  else
487  {
490  m_statusCounter = 0;
491  }
492 
493  if (m_deviceStatusCounter < 10)
494  {
496  }
497  else
498  {
500  {
503  }
504 
506  }
507 }
void push(Message *message, bool emitSignal=true)
Push message onto queue.
bool isBuddyLeader() const
Definition: deviceapi.h:163
static MsgGetDeviceInfo * create()
QString errorMessage()
Last error message from the device engine.
Definition: deviceapi.cpp:290
engine is before initialization
Definition: deviceapi.h:53
EngineState state() const
Return the state of the device engine corresponding to the stream type.
Definition: deviceapi.cpp:277
DeviceAPI * m_deviceAPI
Definition: deviceuiset.h:48
engine is idle
Definition: deviceapi.h:54
MessageQueue * getInputMessageQueue()
static MsgGetStreamInfo * create()
Definition: limesdroutput.h:86
DeviceUISet * m_deviceUISet
LimeSDROutput * m_limeSDROutput
Same object as above but gives easy access to LimeSDROutput methods and attributes that are used inte...
engine is running
Definition: deviceapi.h:56
Ui::LimeSDROutputGUI * ui
engine is in error
Definition: deviceapi.h:57
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ m_deviceCenterFrequency

quint64 LimeSDROutputGUI::m_deviceCenterFrequency
private

Center frequency in device.

Definition at line 65 of file limesdroutputgui.h.

Referenced by handleInputMessages(), and updateSampleRateAndFrequency().

◆ m_deviceStatusCounter

int LimeSDROutputGUI::m_deviceStatusCounter
private

Definition at line 70 of file limesdroutputgui.h.

Referenced by updateStatus().

◆ m_deviceUISet

DeviceUISet* LimeSDROutputGUI::m_deviceUISet
private

Definition at line 58 of file limesdroutputgui.h.

Referenced by LimeSDROutputGUI(), updateSampleRateAndFrequency(), and updateStatus().

◆ m_doApplySettings

bool LimeSDROutputGUI::m_doApplySettings
private

Definition at line 67 of file limesdroutputgui.h.

Referenced by blockApplySettings(), on_startStop_toggled(), and updateHardware().

◆ m_forceSettings

bool LimeSDROutputGUI::m_forceSettings
private

Definition at line 68 of file limesdroutputgui.h.

Referenced by deserialize(), and updateHardware().

◆ m_inputMessageQueue

MessageQueue LimeSDROutputGUI::m_inputMessageQueue
private

Definition at line 71 of file limesdroutputgui.h.

Referenced by handleInputMessages(), and LimeSDROutputGUI().

◆ m_lastEngineState

int LimeSDROutputGUI::m_lastEngineState
private

Definition at line 66 of file limesdroutputgui.h.

Referenced by updateStatus().

◆ m_limeSDROutput

LimeSDROutput* LimeSDROutputGUI::m_limeSDROutput
private

Same object as above but gives easy access to LimeSDROutput methods and attributes that are used intensively.

Definition at line 59 of file limesdroutputgui.h.

Referenced by displaySampleRate(), LimeSDROutputGUI(), on_startStop_toggled(), updateFrequencyLimits(), updateHardware(), and updateStatus().

◆ m_sampleRate

int LimeSDROutputGUI::m_sampleRate
private

Definition at line 64 of file limesdroutputgui.h.

Referenced by handleInputMessages(), and updateSampleRateAndFrequency().

◆ m_sampleRateMode

bool LimeSDROutputGUI::m_sampleRateMode
private

true: device, false: base band sample rate update mode

Definition at line 61 of file limesdroutputgui.h.

Referenced by displaySampleRate(), on_sampleRate_changed(), on_sampleRateMode_toggled(), and on_swInterp_currentIndexChanged().

◆ m_settings

LimeSDROutputSettings LimeSDROutputGUI::m_settings
private

◆ m_statusCounter

int LimeSDROutputGUI::m_statusCounter
private

Definition at line 69 of file limesdroutputgui.h.

Referenced by updateStatus().

◆ m_statusTimer

QTimer LimeSDROutputGUI::m_statusTimer
private

Definition at line 63 of file limesdroutputgui.h.

Referenced by LimeSDROutputGUI().

◆ m_updateTimer

QTimer LimeSDROutputGUI::m_updateTimer
private

Definition at line 62 of file limesdroutputgui.h.

Referenced by LimeSDROutputGUI(), sendSettings(), and updateHardware().

◆ ui

Ui::LimeSDROutputGUI* LimeSDROutputGUI::ui
private

The documentation for this class was generated from the following files: