Custom data types

Your Audio HW DLL might need to keep some internal data for its own use. The Audio DDK lets you define context-sensitive data for your hardware as well as the mixers.

To make the API more flexible (and readable), the Audio DDK uses these types that you can define as you wish:

HW_CONTEXT_T
Data you want to associate with the hardware.
MIXER_CONTEXT_T
Data you want to associate with a mixer.

By default, these types are empty structures. Use a #define directive to set these types as appropriate before including any of the Audio DDK header files. For example:

#define HW_CONTEXT_T    my_hw_context_t
#define MIXER_CONTEXT_T my_mixer_context_t

If you wish, you can even define HW_CONTEXT_T and MIXER_CONTEXT_T to be the same type.

Note: The MIXER_CONTEXT_T is stored as part of the ado_mixer_t structure. If you need to access the mixer context, you need to call ado_mixer_get_context() because ado_mixer_t is an opaque data type.