Test Dynamic API

Interface

Listed below is the full interface to the dds family of objects.

create()

Create digital synthesizer object

dds_cccf = dds_cccf_create(unsigned int _num_stages, float _fc, float _bw, float _as);
  • unsigned int _num_stages: number of half-band stages

  • float _fc: signal relative center frequency

  • float _bw: signal relative bandwidth

  • float _as: filter stop-band attenuation (dB)

  • returns new dds_cccf object

copy()

Copy object including all internal objects and state

dds_cccf = dds_cccf_copy(dds_cccf _q);
  • dds_cccf _q:

  • returns new dds_cccf object

destroy()

Destroy digital synthesizer object

int = dds_cccf_destroy(dds_cccf _q);
  • dds_cccf _q:

  • returns standard error code

print()

Print synthesizer object internals

int = dds_cccf_print(dds_cccf _q);
  • dds_cccf _q:

  • returns standard error code

reset()

Reset synthesizer object internals

int = dds_cccf_reset(dds_cccf _q);
  • dds_cccf _q:

  • returns standard error code

set_scale()

Set output scaling for synthesizer

int = dds_cccf_set_scale(dds_cccf _q, float complex _scale);
  • dds_cccf _q: synthesizer object

  • float complex _scale: scaling factor to apply to each output sample

  • returns standard error code

get_scale()

Get output scaling for synthesizer

int = dds_cccf_get_scale(dds_cccf _q, float complex * _scale);
  • dds_cccf _q: synthesizer object

  • float complex * _scale: scaling factor to apply to each output sample

  • returns standard error code

get_num_stages()

Get number of half-band states in DDS object

unsigned int = dds_cccf_get_num_stages(dds_cccf _q);
  • dds_cccf _q:

  • returns something good

get_delay_interp()

Get delay (samples) when running as interpolator

unsigned int = dds_cccf_get_delay_interp(dds_cccf _q);
  • dds_cccf _q:

  • returns something good

get_delay_decim()

Get delay (samples) when running as decimator

float = dds_cccf_get_delay_decim(dds_cccf _q);
  • dds_cccf _q:

  • returns something good

decim_execute()

Run DDS object as decimator

int = dds_cccf_decim_execute(dds_cccf _q, float complex * _x, float complex * _y);
  • dds_cccf _q: synthesizer object

  • float complex * _x: input data array

  • float complex * _y: output sample

  • returns standard error code

interp_execute()

Run DDS object as interpolator

int = dds_cccf_interp_execute(dds_cccf _q, float complex _x, float complex * _y);
  • dds_cccf _q: synthesizer object

  • float complex _x: input sample

  • float complex * _y: output data array

  • returns standard error code