spwaterfallcf

Variants: spwaterfallcf, spwaterfallf

Spectral periodogram waterfall object for computing time-varying power spectral density estimates

Public Functions

spwaterfallcf spwaterfallcf_create(unsigned int _nfft, int _wtype, unsigned int _window_len, unsigned int _delay, unsigned int _time)
spwaterfallcf spwaterfallcf_create_default(unsigned int _nfft, unsigned int _time)
spwaterfallcf spwaterfallcf_copy(spwaterfallcf _q)
int spwaterfallcf_destroy(spwaterfallcf _q)
int spwaterfallcf_clear(spwaterfallcf _q)
int spwaterfallcf_reset(spwaterfallcf _q)
int spwaterfallcf_print(spwaterfallcf _q)
uint64_t spwaterfallcf_get_num_samples_total(spwaterfallcf _q)
unsigned int spwaterfallcf_get_num_freq(spwaterfallcf _q)
unsigned int spwaterfallcf_get_num_time(spwaterfallcf _q)
unsigned int spwaterfallcf_get_window_len(spwaterfallcf _q)
unsigned int spwaterfallcf_get_delay(spwaterfallcf _q)
int spwaterfallcf_get_wtype(spwaterfallcf _q)
const float * spwaterfallcf_get_psd(spwaterfallcf _q)
int spwaterfallcf_set_freq(spwaterfallcf _q, float _freq)
int spwaterfallcf_set_rate(spwaterfallcf _q, float _rate)
int spwaterfallcf_set_dims(spwaterfallcf _q, unsigned int _width, unsigned int _height)
int spwaterfallcf_set_commands(spwaterfallcf _q, const char * _commands)
int spwaterfallcf_push(spwaterfallcf _q, float complex _x)
int spwaterfallcf_write(spwaterfallcf _q, float complex * _x, unsigned int _n)
int spwaterfallcf_export(spwaterfallcf _q, const char * _base)

Interfaces

spwaterfallcf spwaterfallcf_create(unsigned int _nfft, int _wtype, unsigned int _window_len, unsigned int _delay, unsigned int _time)

Create spwaterfall object, fully defined

  • _nfft : transform (FFT) size, 2 <= _nfft
  • _wtype : window type, e.g. LIQUID_WINDOW_HAMMING
  • _window_len : window length, 1 <= _window_len <= _nfft
  • _delay : delay between transforms, 0 < _delay
  • _time : number of aggregated transforms, 0 < _time

spwaterfallcf spwaterfallcf_create_default(unsigned int _nfft, unsigned int _time)

Create default spwatefall object (Kaiser-Bessel window)

  • _nfft : transform size, 2 <= _nfft
  • _time : delay between transforms, _delay > 0

spwaterfallcf spwaterfallcf_copy(spwaterfallcf _q)

Copy object including all internal objects and state

int spwaterfallcf_destroy(spwaterfallcf _q)

Destroy spwaterfall object, freeing all internally-allocated memory

int spwaterfallcf_clear(spwaterfallcf _q)

Clears the internal state of the object, but not the internal buffer

int spwaterfallcf_reset(spwaterfallcf _q)

Reset the object to its original state completely. This effectively executes the clear() method and then resets the internal buffer

int spwaterfallcf_print(spwaterfallcf _q)

Print internal state of the object to stdout

uint64_t spwaterfallcf_get_num_samples_total(spwaterfallcf _q)

Get number of samples processed since object was created

unsigned int spwaterfallcf_get_num_freq(spwaterfallcf _q)

Get FFT size (columns in PSD output)

unsigned int spwaterfallcf_get_num_time(spwaterfallcf _q)

Get number of accumulated FFTs (rows in PSD output)

unsigned int spwaterfallcf_get_window_len(spwaterfallcf _q)

Get window length used in spectral estimation

unsigned int spwaterfallcf_get_delay(spwaterfallcf _q)

Get delay between transforms used in spectral estimation

int spwaterfallcf_get_wtype(spwaterfallcf _q)

Get window type used in spectral estimation

const float * spwaterfallcf_get_psd(spwaterfallcf _q)

Get power spectral density (PSD), size: nfft x time

int spwaterfallcf_set_freq(spwaterfallcf _q, float _freq)

Set the center frequency of the received signal. This is for display purposes only when generating the output image.

  • _q : spectral periodogram waterfall object
  • _freq : center frequency [Hz]

int spwaterfallcf_set_rate(spwaterfallcf _q, float _rate)

Set the sample rate (frequency) of the received signal. This is for display purposes only when generating the output image.

  • _q : spectral periodogram waterfall object
  • _rate : sample rate [Hz]

int spwaterfallcf_set_dims(spwaterfallcf _q, unsigned int _width, unsigned int _height)

Set the canvas size. This is for display purposes only when generating the output image.

  • _q : spectral periodogram waterfall object
  • _width : image width [pixels]
  • _height : image height [pixels]

int spwaterfallcf_set_commands(spwaterfallcf _q, const char * _commands)

Set commands for executing directly before 'plot' statement.

  • _q : spectral periodogram waterfall object
  • _commands : gnuplot commands separated by semicolons

int spwaterfallcf_push(spwaterfallcf _q, float complex _x)

Push a single sample into the object, executing internal transform as necessary.

  • _q : spwaterfall object
  • _x : input sample

int spwaterfallcf_write(spwaterfallcf _q, float complex * _x, unsigned int _n)

Write a block of samples to the object, executing internal transform as necessary.

  • _q : spwaterfall object
  • _x : input buffer, shape: (_n, 1)
  • _n : input buffer length

int spwaterfallcf_export(spwaterfallcf _q, const char * _base)

Export set of files for plotting

  • _q : spwaterfall object
  • _base : base filename (will export .gnu, .bin, and .png files)