mirror of https://gitee.com/openkylin/linux.git
ALSA: doc: Recommend the use of snd_ctl_elem_info()
Instead of the open code for the info call back of enum elements, recommend the use of snd_ctl_elem_info(), which will reduce lots of codes. Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
f114040e3e
commit
be93709cb1
|
@ -3657,6 +3657,29 @@ struct _snd_pcm_runtime {
|
|||
</informalexample>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The above callback can be simplified with a helper function,
|
||||
<function>snd_ctl_enum_info</function>. The final code
|
||||
looks like below.
|
||||
(You can pass ARRAY_SIZE(texts) instead of 4 in the third
|
||||
argument; it's a matter of taste.)
|
||||
|
||||
<informalexample>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
static int snd_myctl_enum_info(struct snd_kcontrol *kcontrol,
|
||||
struct snd_ctl_elem_info *uinfo)
|
||||
{
|
||||
static char *texts[4] = {
|
||||
"First", "Second", "Third", "Fourth"
|
||||
};
|
||||
return snd_ctl_enum_info(uinfo, 1, 4, texts);
|
||||
}
|
||||
]]>
|
||||
</programlisting>
|
||||
</informalexample>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Some common info callbacks are available for your convenience:
|
||||
<function>snd_ctl_boolean_mono_info()</function> and
|
||||
|
|
Loading…
Reference in New Issue