mixerGetLineControlsA function (mmeapi.h)
The mixerGetLineControls function retrieves one or more controls associated with an audio line.
Syntax
MMRESULT mixerGetLineControlsA(
HMIXEROBJ hmxobj,
LPMIXERLINECONTROLSA pmxlc,
DWORD fdwControls
);
Parameters
hmxobj
Handle to the mixer device object that is being queried.
pmxlc
Pointer to a MIXERLINECONTROLS structure. This structure is used to reference one or more MIXERCONTROL 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.
Value | Meaning |
---|---|
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 value
Returns MMSYSERR_NOERROR if successful or an error otherwise. Possible error values include the following.
Return code | Description |
---|---|
|
The control reference is invalid. |
|
The audio line reference is invalid. |
|
The hmxobj parameter specifies an invalid device identifier. |
|
One or more flags are invalid. |
|
The hmxobj parameter specifies an invalid handle. |
|
One or more parameters are invalid. |
|
No mixer device is available for the object specified by hmxobj. |
Remarks
Note
The mmeapi.h header defines mixerGetLineControls as an alias that automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that is not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see Conventions for Function Prototypes.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 2000 Professional [desktop apps only] |
Minimum supported server | Windows 2000 Server [desktop apps only] |
Target Platform | Windows |
Header | mmeapi.h (include Windows.h) |
Library | Winmm.lib |
DLL | Winmm.dll |