From 87ae6839dfc252500e31e09fde73ef66c0bcdedb Mon Sep 17 00:00:00 2001 From: Bernd Jendrissek Date: Fri, 11 May 2018 16:37:31 +0200 Subject: [PATCH] Prepare for run-time control of resolution and history. --- waterfall.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/waterfall.c b/waterfall.c index ecb5567..d177ba7 100644 --- a/waterfall.c +++ b/waterfall.c @@ -367,17 +367,18 @@ int main(int argc, char *argv[]) GError *err = NULL; struct waterfall_context waterfall = { .buf_index = 0, - .integration_samples = INTEGRATION_SAMPLES, .slice = 0, - .n_slices = N_SLICES, .zoom = { .f_low = 0, - .f_high = INTEGRATION_SAMPLES/2, .noise_floor = 5, .sensitivity = 200, }, }; + waterfall.integration_samples = INTEGRATION_SAMPLES; + waterfall.n_slices = N_SLICES; + waterfall.zoom.f_high = waterfall.integration_samples/2; + gtk_init(&argc, &argv); gtk_builder = gtk_builder_new(); @@ -408,15 +409,16 @@ int main(int argc, char *argv[]) g_io_channel_set_encoding(stdin_channel, NULL, &err); g_io_channel_set_buffer_size(stdin_channel, BUF_SAMPLES*SAMPLE_SIZE); waterfall.buf = malloc(BUF_SAMPLES*SAMPLE_SIZE); - waterfall.buf_size = INTEGRATION_SAMPLES*SAMPLE_SIZE; + waterfall.buf_size = waterfall.integration_samples * SAMPLE_SIZE; g_io_add_watch(stdin_channel, G_IO_IN, &waterfall_input, &waterfall); - waterfall.original = gdk_pixbuf_new(GDK_COLORSPACE_RGB, FALSE, 8, waterfall.n_slices, INTEGRATION_SAMPLES/2 + 1); + waterfall.original = gdk_pixbuf_new(GDK_COLORSPACE_RGB, FALSE, 8, + waterfall.n_slices, waterfall.integration_samples/2 + 1); split_pixbuf(&waterfall); - waterfall.fft.samples = fftw_malloc(sizeof (*waterfall.fft.samples) * INTEGRATION_SAMPLES); - waterfall.fft.spectrum = fftw_malloc(sizeof (*waterfall.fft.spectrum) * (INTEGRATION_SAMPLES/2 + 1)); - waterfall.fft.p = fftw_plan_dft_r2c_1d(INTEGRATION_SAMPLES, + waterfall.fft.samples = fftw_malloc(sizeof (*waterfall.fft.samples) * waterfall.integration_samples); + waterfall.fft.spectrum = fftw_malloc(sizeof (*waterfall.fft.spectrum) * (waterfall.integration_samples/2 + 1)); + waterfall.fft.p = fftw_plan_dft_r2c_1d(waterfall.integration_samples, waterfall.fft.samples, waterfall.fft.spectrum, FFTW_ESTIMATE); -- 2.11.4.GIT