MCPcopy Create free account
hub / github.com/Serial-Studio/Serial-Studio / buildFftRangeRows

Method buildFftRangeRows

app/src/DataModel/ProjectEditor.cpp:3708–3766  ·  view source on GitHub ↗

* @brief Appends FFT window-size, sampling rate, and min/max range rows. */

Source from the content-addressed store, hash-verified

3706 * @brief Appends FFT window-size, sampling rate, and min/max range rows.
3707 */
3708void DataModel::ProjectEditor::buildFftRangeRows(CustomModel* model,
3709 const DataModel::Dataset& dataset)
3710{
3711 const bool fftSettingsEditable = dataset.fft || dataset.waterfall;
3712
3713 const auto windowSize = QString::number(dataset.fftSamples);
3714 int windowIndex = m_fftSamples.indexOf(windowSize);
3715 if (windowIndex < 0)
3716 windowIndex = 7;
3717
3718 auto* fftWindow = new QStandardItem();
3719 fftWindow->setEditable(fftSettingsEditable);
3720 fftWindow->setData(ComboBox, WidgetType);
3721 fftWindow->setData(m_fftSamples, ComboBoxData);
3722 fftWindow->setData(windowIndex, EditableValue);
3723 fftWindow->setData(fftWindow->isEditable(), Active);
3724 fftWindow->setData(kDatasetView_FFT_Samples, ParameterType);
3725 fftWindow->setData(tr("FFT Window Size"), ParameterName);
3726 fftWindow->setData(tr("Number of samples used for each FFT calculation window"),
3727 ParameterDescription);
3728 model->appendRow(fftWindow);
3729
3730 auto* fftRate = new QStandardItem();
3731 fftRate->setEditable(fftSettingsEditable);
3732 fftRate->setData(IntField, WidgetType);
3733 fftRate->setData(100, PlaceholderValue);
3734 fftRate->setData(fftRate->isEditable(), Active);
3735 fftRate->setData(dataset.fftSamplingRate, EditableValue);
3736 fftRate->setData(kDatasetView_FFT_SamplingRate, ParameterType);
3737 fftRate->setData(tr("FFT Sampling Rate (Hz, required)"), ParameterName);
3738 fftRate->setData(tr("Sampling frequency used for FFT (in Hz)"), ParameterDescription);
3739 model->appendRow(fftRate);
3740
3741 auto* fftMin = new QStandardItem();
3742 fftMin->setEditable(fftSettingsEditable);
3743 fftMin->setData(0, PlaceholderValue);
3744 fftMin->setData(FloatField, WidgetType);
3745 fftMin->setData(fftMin->isEditable(), Active);
3746 fftMin->setData(dataset.fftMin, EditableValue);
3747 fftMin->setData(kDatasetView_FFTMin, ParameterType);
3748 fftMin->setData(tr("Minimum Value (optional)"), ParameterName);
3749 fftMin->setData(tr("Lower bound for data normalization; falls back to the dataset value "
3750 "range when left unset"),
3751 ParameterDescription);
3752 model->appendRow(fftMin);
3753
3754 auto* fftMax = new QStandardItem();
3755 fftMax->setEditable(fftSettingsEditable);
3756 fftMax->setData(0, PlaceholderValue);
3757 fftMax->setData(FloatField, WidgetType);
3758 fftMax->setData(fftMax->isEditable(), Active);
3759 fftMax->setData(dataset.fftMax, EditableValue);
3760 fftMax->setData(kDatasetView_FFTMax, ParameterType);
3761 fftMax->setData(tr("Maximum Value (optional)"), ParameterName);
3762 fftMax->setData(tr("Upper bound for data normalization; falls back to the dataset value "
3763 "range when left unset"),
3764 ParameterDescription);
3765 model->appendRow(fftMax);

Callers

nothing calls this directly

Calls 1

indexOfMethod · 0.45

Tested by

no test coverage detected