mirror of
https://github.com/cjcliffe/CubicSDR.git
synced 2026-06-02 06:04:39 -04:00
eliminate fp/int IQ data conversions
This commit is contained in:
@@ -73,7 +73,7 @@ void SpectrumCanvas::OnPaint(wxPaintEvent& WXUNUSED(event)) {
|
||||
SwapBuffers();
|
||||
}
|
||||
|
||||
void SpectrumCanvas::setData(std::vector<signed char> *data) {
|
||||
void SpectrumCanvas::setData(std::vector<liquid_float_complex> *data) {
|
||||
|
||||
if (data && data->size()) {
|
||||
if (spectrum_points.size() < FFT_SIZE * 2) {
|
||||
@@ -81,8 +81,8 @@ void SpectrumCanvas::setData(std::vector<signed char> *data) {
|
||||
}
|
||||
|
||||
for (int i = 0; i < FFT_SIZE; i++) {
|
||||
in[i][0] = (float) (*data)[i * 2] / 127.0f;
|
||||
in[i][1] = (float) (*data)[i * 2 + 1] / 127.0f;
|
||||
in[i][0] = (*data)[i].real;
|
||||
in[i][1] = (*data)[i].imag;
|
||||
}
|
||||
|
||||
fftw_execute(plan);
|
||||
|
||||
@@ -17,7 +17,7 @@ public:
|
||||
SpectrumCanvas(wxWindow *parent, int *attribList = NULL);
|
||||
~SpectrumCanvas();
|
||||
|
||||
void setData(std::vector<signed char> *data);
|
||||
void setData(std::vector<liquid_float_complex> *data);
|
||||
private:
|
||||
void OnPaint(wxPaintEvent& event);
|
||||
|
||||
|
||||
@@ -206,7 +206,7 @@ void WaterfallCanvas::OnKeyDown(wxKeyEvent& event) {
|
||||
}
|
||||
}
|
||||
|
||||
void WaterfallCanvas::setData(std::vector<signed char> *data) {
|
||||
void WaterfallCanvas::setData(std::vector<liquid_float_complex> *data) {
|
||||
|
||||
if (data && data->size()) {
|
||||
if (spectrum_points.size() < FFT_SIZE * 2) {
|
||||
@@ -214,8 +214,8 @@ void WaterfallCanvas::setData(std::vector<signed char> *data) {
|
||||
}
|
||||
|
||||
for (int i = 0; i < FFT_SIZE; i++) {
|
||||
in[i][0] = (float) (*data)[i * 2] / 127.0f;
|
||||
in[i][1] = (float) (*data)[i * 2 + 1] / 127.0f;
|
||||
in[i][0] = (*data)[i].real;
|
||||
in[i][1] = (*data)[i].imag;
|
||||
}
|
||||
|
||||
fftw_execute(plan);
|
||||
|
||||
@@ -21,7 +21,7 @@ public:
|
||||
WaterfallCanvas(wxWindow *parent, int *attribList = NULL);
|
||||
~WaterfallCanvas();
|
||||
|
||||
void setData(std::vector<signed char> *data);
|
||||
void setData(std::vector<liquid_float_complex> *data);
|
||||
int GetFrequencyAt(float x);
|
||||
|
||||
private:
|
||||
|
||||
Reference in New Issue
Block a user