00001
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038 #ifndef __ALSA_USE_CASE_H
00039 #define __ALSA_USE_CASE_H
00040
00041 #ifdef __cplusplus
00042 extern "C" {
00043 #endif
00044
00091
00092
00093
00094
00095
00096
00097
00098 #define SND_USE_CASE_VERB_INACTIVE "Inactive"
00099 #define SND_USE_CASE_VERB_HIFI "HiFi"
00100 #define SND_USE_CASE_VERB_HIFI_LOW_POWER "HiFi Low Power"
00101 #define SND_USE_CASE_VERB_VOICE "Voice"
00102 #define SND_USE_CASE_VERB_VOICE_LOW_POWER "Voice Low Power"
00103 #define SND_USE_CASE_VERB_VOICECALL "Voice Call"
00104 #define SND_USE_CASE_VERB_IP_VOICECALL "Voice Call IP"
00105 #define SND_USE_CASE_VERB_ANALOG_RADIO "FM Analog Radio"
00106 #define SND_USE_CASE_VERB_DIGITAL_RADIO "FM Digital Radio"
00107
00108
00109
00110
00111
00112
00113
00114
00115
00116 #define SND_USE_CASE_DEV_NONE "None"
00117 #define SND_USE_CASE_DEV_SPEAKER "Speaker"
00118 #define SND_USE_CASE_DEV_LINE "Line"
00119 #define SND_USE_CASE_DEV_HEADPHONES "Headphones"
00120 #define SND_USE_CASE_DEV_HEADSET "Headset"
00121 #define SND_USE_CASE_DEV_HANDSET "Handset"
00122 #define SND_USE_CASE_DEV_BLUETOOTH "Bluetooth"
00123 #define SND_USE_CASE_DEV_EARPIECE "Earpiece"
00124 #define SND_USE_CASE_DEV_SPDIF "SPDIF"
00125 #define SND_USE_CASE_DEV_HDMI "HDMI"
00126
00127
00128
00129
00130
00131
00132
00133
00134
00135
00136
00137
00138
00139
00140
00141
00142
00143
00144
00145
00146
00147 #define SND_USE_CASE_MOD_CAPTURE_VOICE "Capture Voice"
00148 #define SND_USE_CASE_MOD_CAPTURE_MUSIC "Capture Music"
00149 #define SND_USE_CASE_MOD_PLAY_MUSIC "Play Music"
00150 #define SND_USE_CASE_MOD_PLAY_VOICE "Play Voice"
00151 #define SND_USE_CASE_MOD_PLAY_TONE "Play Tone"
00152 #define SND_USE_CASE_MOD_ECHO_REF "Echo Reference"
00153
00154
00155
00164 #define SND_USE_CASE_TQ_MUSIC "Music"
00165 #define SND_USE_CASE_TQ_VOICE "Voice"
00166 #define SND_USE_CASE_TQ_TONES "Tones"
00167
00169 typedef struct snd_use_case_mgr snd_use_case_mgr_t;
00170
00177 char *snd_use_case_identifier(const char *fmt, ...);
00178
00185 int snd_use_case_free_list(const char *list[], int items);
00186
00208 int snd_use_case_get_list(snd_use_case_mgr_t *uc_mgr,
00209 const char *identifier,
00210 const char **list[]);
00211
00212
00240 int snd_use_case_get(snd_use_case_mgr_t *uc_mgr,
00241 const char *identifier,
00242 const char **value);
00243
00255 int snd_use_case_geti(snd_use_case_mgr_t *uc_mgr,
00256 const char *identifier,
00257 long *value);
00258
00281 int snd_use_case_set(snd_use_case_mgr_t *uc_mgr,
00282 const char *identifier,
00283 const char *value);
00284
00291 int snd_use_case_mgr_open(snd_use_case_mgr_t **uc_mgr, const char *card_name);
00292
00293
00299 int snd_use_case_mgr_reload(snd_use_case_mgr_t *uc_mgr);
00300
00306 int snd_use_case_mgr_close(snd_use_case_mgr_t *uc_mgr);
00307
00313 int snd_use_case_mgr_reset(snd_use_case_mgr_t *uc_mgr);
00314
00315
00316
00317
00318
00324 static inline int snd_use_case_card_list(const char **list[])
00325 {
00326 return snd_use_case_get_list(NULL, NULL, list);
00327 }
00328
00335 static inline int snd_use_case_verb_list(snd_use_case_mgr_t *uc_mgr,
00336 const char **list[])
00337 {
00338 return snd_use_case_get_list(uc_mgr, "_verbs", list);
00339 }
00340
00345 #ifdef __cplusplus
00346 }
00347 #endif
00348
00349 #endif