mixerGetLineControls
The mixerGetLineControls
function retrieves one or more controls associated with an audio line.
MMRESULT mixerGetLineControls(
|
HMIXEROBJ hmxobj, |
|
|
LPMIXERLINECONTROLS pmxlc, |
|
|
DWORD fdwControls |
|
|
); |
|
Parameters
hmxobj
Handle of the
mixer device object that is being queried.
pmxlc
Address of a MIXERLINECONTROLS structure. This structure
is used to reference one or more MIXERCONTROLZG6_Y. structures to be filled with information
about the controls associated with an audio line. The cbStruct member of
the MIXERLINECONTROLS structure must always be initialized to be the
size, in bytes, of the MIXERLINECONTROLS structure.
fdwControls
Flags for
retrieving information about one or more controls associated with an audio line.
The following values are defined:
MIXER_GETLINECONTROLSF_ALL
The pmxlc
parameter references a list of MIXERCONTROL structures that will receive information on all
controls associated with the audio line identified by the dwLineID
member of the MIXERLINECONTROLS structure. The cControls member must be
initialized to the number of controls associated with the line. This number is
retrieved from the cControls member of the MIXERLINE structure returned by the mixerGetLineInfo function. The cbmxctrl
member must be initialized to the size, in bytes, of a single MIXERCONTROL
structure. The pamxctrl member must point to the first MIXERCONTROL
structure to be filled. The dwControlID and dwControlType members
are ignored for this query.
MIXER_GETLINECONTROLSF_ONEBYID
The pmxlc
parameter references a single MIXERCONTROL structure that will receive
information on the control identified by the dwControlID member of the MIXERLINECONTROLS
structure. The cControls member must be initialized to 1. The cbmxctrl
member must be initialized to the size, in bytes, of a single MIXERCONTROL
structure. The pamxctrl member must point to a MIXERCONTROL
structure to be filled. The dwLineID and dwControlType members
are ignored for this query. This query is usually used to refresh a control
after receiving a MM_MIXM_CONTROL_CHANGE control change notification message by the
user-defined callback (see mixerOpen).
MIXER_GETLINECONTROLSF_ONEBYTYPE
The mixerGetLineControls
function retrieves information about the first control of a specific class for
the audio line that is being queried. The pmxlc parameter references a
single MIXERCONTROL
structure that will receive information about the specific control. The audio
line is identified by the dwLineID member. The control class is
specified in the dwControlType member of the MIXERLINECONTROLS structure.
The dwControlID
member is ignored for this query. This query can be used by an application to
get information on a single control associated with a line. For example, you
might want your application to use a peak meter only from a waveform-audio
output line.
MIXER_OBJECTF_AUX
The hmxobj
parameter is an auxiliary device identifier in the range of zero to one less
than the number of devices returned by the auxGetNumDevs function.
MIXER_OBJECTF_HMIDIIN
The hmxobj
parameter is the handle of a MIDI input device. This handle must have been
returned by the midiInOpen
function.
MIXER_OBJECTF_HMIDIOUT
The hmxobj
parameter is the handle of a MIDI output device. This handle must have been
returned by the midiOutOpen
function.
MIXER_OBJECTF_HMIXER
The hmxobj
parameter is a mixer device handle returned by the mixerOpen function. This flag is
optional.
MIXER_OBJECTF_HWAVEIN
The hmxobj
parameter is a waveform-audio input handle returned by the waveInOpen function.
MIXER_OBJECTF_HWAVEOUT
The hmxobj
parameter is a waveform-audio output handle returned by the waveOutOpen function.
MIXER_OBJECTF_MIDIIN
The hmxobj
parameter is the identifier of a MIDI input device. This identifier must be in
the range of zero to one less than the number of devices returned by the midiInGetNumDevs function.
MIXER_OBJECTF_MIDIOUT
The hmxobj
parameter is the identifier of a MIDI output device. This identifier must be in
the range of zero to one less than the number of devices returned by the midiOutGetNumDevs function.
MIXER_OBJECTF_MIXER
The hmxobj
parameter is the identifier of a mixer device in the range of zero to one less
than the number of devices returned by the mixerGetNumDevs function. This flag is
optional.
MIXER_OBJECTF_WAVEIN
The hmxobj
parameter is the identifier of a waveform-audio input device in the range of
zero to one less than the number of devices returned by the waveInGetNumDevs function.
MIXER_OBJECTF_WAVEOUT
The hmxobj
parameter is the identifier of a waveform-audio output device in the range of
zero to one less than the number of devices returned by the waveOutGetNumDevs function.
Return Values
Returns
MMSYSERR_NOERROR if successful or an error otherwise. Possible error values
include the following:
|
MIXERR_INVALCONTROL |
The control
reference is invalid. |
|
MIXERR_INVALLINE |
The audio
line reference is invalid. |
|
MMSYSERR_BADDEVICEID |
The hmxobj
parameter specifies an invalid device identifier. |
|
MMSYSERR_INVALFLAG |
One or more
flags are invalid. |
|
MMSYSERR_INVALHANDLE |
The hmxobj
parameter specifies an invalid handle. |
|
MMSYSERR_INVALPARAM |
One or more
parameters are invalid. |
|
MMSYSERR_NODRIVER |
No mixer
device is available for the object specified by hmxobj. |
See Also