mirror of
https://github.com/miek/inspectrum.git
synced 2026-03-12 19:27:07 +01:00
@@ -155,13 +155,13 @@ void InputSource::openFile(const char *filename)
|
||||
invalidate();
|
||||
}
|
||||
|
||||
void InputSource::setSampleRate(size_t rate)
|
||||
void InputSource::setSampleRate(double rate)
|
||||
{
|
||||
sampleRate = rate;
|
||||
invalidate();
|
||||
}
|
||||
|
||||
size_t InputSource::rate()
|
||||
double InputSource::rate()
|
||||
{
|
||||
return sampleRate;
|
||||
}
|
||||
|
||||
@@ -35,7 +35,7 @@ class InputSource : public SampleSource<std::complex<float>>
|
||||
private:
|
||||
QFile *inputFile = nullptr;
|
||||
size_t sampleCount = 0;
|
||||
size_t sampleRate = 0;
|
||||
double sampleRate = 0.0;
|
||||
uchar *mmapData = nullptr;
|
||||
std::unique_ptr<SampleAdapter> sampleAdapter;
|
||||
std::string _fmt;
|
||||
@@ -49,9 +49,9 @@ public:
|
||||
size_t count() {
|
||||
return sampleCount;
|
||||
};
|
||||
void setSampleRate(size_t rate);
|
||||
void setSampleRate(double rate);
|
||||
void setFormat(std::string fmt);
|
||||
size_t rate();
|
||||
double rate();
|
||||
float relativeBandwidth() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
3
main.cpp
3
main.cpp
@@ -59,8 +59,7 @@ int main(int argc, char *argv[])
|
||||
|
||||
if (parser.isSet(rateOption)) {
|
||||
bool ok;
|
||||
// Use toDouble just for scientific notation support
|
||||
int rate = parser.value(rateOption).toDouble(&ok);
|
||||
auto rate = parser.value(rateOption).toDouble(&ok);
|
||||
if(!ok) {
|
||||
fputs("ERROR: could not parse rate\n", stderr);
|
||||
return 1;
|
||||
|
||||
@@ -98,7 +98,7 @@ void MainWindow::openFile(QString fileName)
|
||||
|
||||
void MainWindow::setSampleRate(QString rate)
|
||||
{
|
||||
int sampleRate = rate.toInt();
|
||||
auto sampleRate = rate.toDouble();
|
||||
input->setSampleRate(sampleRate);
|
||||
plots->setSampleRate(sampleRate);
|
||||
|
||||
@@ -107,7 +107,7 @@ void MainWindow::setSampleRate(QString rate)
|
||||
settings.setValue("SampleRate", sampleRate);
|
||||
}
|
||||
|
||||
void MainWindow::setSampleRate(int rate)
|
||||
void MainWindow::setSampleRate(double rate)
|
||||
{
|
||||
dock->sampleRate->setText(QString::number(rate));
|
||||
}
|
||||
|
||||
@@ -30,12 +30,12 @@ class MainWindow : public QMainWindow
|
||||
|
||||
public:
|
||||
MainWindow();
|
||||
void changeSampleRate(int rate);
|
||||
void changeSampleRate(double rate);
|
||||
|
||||
public slots:
|
||||
void openFile(QString fileName);
|
||||
void setSampleRate(QString rate);
|
||||
void setSampleRate(int rate);
|
||||
void setSampleRate(double rate);
|
||||
void setFormat(QString fmt);
|
||||
|
||||
private:
|
||||
|
||||
@@ -563,7 +563,7 @@ void PlotView::updateView(bool reCenter)
|
||||
viewport()->update();
|
||||
}
|
||||
|
||||
void PlotView::setSampleRate(size_t rate)
|
||||
void PlotView::setSampleRate(double rate)
|
||||
{
|
||||
sampleRate = rate;
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ class PlotView : public QGraphicsView, Subscriber
|
||||
|
||||
public:
|
||||
PlotView(InputSource *input);
|
||||
void setSampleRate(size_t rate);
|
||||
void setSampleRate(double rate);
|
||||
|
||||
signals:
|
||||
void timeSelectionChanged(float time);
|
||||
@@ -75,7 +75,7 @@ private:
|
||||
int powerMin;
|
||||
int powerMax;
|
||||
bool cursorsEnabled;
|
||||
size_t sampleRate = 0;
|
||||
double sampleRate = 0.0;
|
||||
bool timeScaleEnabled;
|
||||
int scrollZoomStepsAccumulated = 0;
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@ public:
|
||||
virtual size_t count() {
|
||||
return src->count();
|
||||
};
|
||||
size_t rate() {
|
||||
double rate() {
|
||||
return src->rate();
|
||||
};
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ public:
|
||||
virtual std::unique_ptr<T[]> getSamples(size_t start, size_t length) = 0;
|
||||
virtual void invalidateEvent() { };
|
||||
virtual size_t count() = 0;
|
||||
virtual size_t rate() = 0;
|
||||
virtual double rate() = 0;
|
||||
virtual float relativeBandwidth() = 0;
|
||||
std::type_index sampleType() override;
|
||||
};
|
||||
|
||||
@@ -36,7 +36,9 @@ SpectrogramControls::SpectrogramControls(const QString & title, QWidget * parent
|
||||
layout->addRow(fileOpenButton);
|
||||
|
||||
sampleRate = new QLineEdit();
|
||||
sampleRate->setValidator(new QIntValidator(this));
|
||||
auto double_validator = new QDoubleValidator(this);
|
||||
double_validator->setBottom(0.0);
|
||||
sampleRate->setValidator(double_validator);
|
||||
layout->addRow(new QLabel(tr("Sample rate:")), sampleRate);
|
||||
|
||||
// Spectrogram settings
|
||||
|
||||
Reference in New Issue
Block a user