#
# Direct digital synthesis (dds)
#

dds_cccf dds_cccf_create(unsigned int _num_stages,
                         float _fc,
                         float _bw,
                         float _As);
    Create a DDS object.  The interpolation (decimation) rate is
    equal to 2^_num_stages.

void dds_cccf_destroy(dds_cccf _q);
    Destroy a DDS object, cleaning up all internally-allocated
    memory buffers, arrays, and objects.

void dds_cccf_print(dds_cccf _q);
    Print information about the DDS object.

void dds_cccf_reset(dds_cccf _q);
    Reset/clear the internal buffers of the DDS object.

void dds_cccf_decim_execute(dds_cccf _q,
                            float complex * _x,
                            float complex * _y);
    Run decimation on an input array of 2^_num_stages inputs,
    and store in a single output

void dds_cccf_interp_execute(dds_cccf _q,
                             float complex _x,
                             float complex * _y);
    Run interpolation on a single input and store result into
    an array of 2^_num_stages outputs.


