ALSA:コントロール(要素の識別子)

snd_ctl_elem_id_sizeofsnd_ctl_elem_id_t のサイズを取得
snd_ctl_elem_id_mallocsnd_ctl_elem_id_t を確保
snd_ctl_elem_id_freesnd_ctl_elem_id_t を解放
snd_ctl_elem_id_clearクリア
snd_ctl_elem_id_copy複製
ASCII
snd_ctl_ascii_elem_id_getASCII文字列にして返す
snd_ctl_ascii_elem_id_parseASCII文字列から解析
比較
snd_ctl_elem_id_compare_numid比較 (numid)
snd_ctl_elem_id_compare_set比較 (セット)
取得
snd_ctl_elem_id_get_numidnumid を取得
snd_ctl_elem_id_get_interfaceインターフェイスを取得
snd_ctl_elem_id_get_deviceデバイスを取得
snd_ctl_elem_id_get_subdeviceサブデバイスを取得
snd_ctl_elem_id_get_name名前を取得
snd_ctl_elem_id_get_indexインデックスを取得
セット
snd_ctl_elem_id_set_numidnumid をセット
snd_ctl_elem_id_set_interfaceインターフェイスをセット
snd_ctl_elem_id_set_deviceデバイスをセット
snd_ctl_elem_id_set_subdeviceサブデバイスをセット
snd_ctl_elem_id_set_name名前をセット
snd_ctl_elem_id_set_indexインデックスをセット
一つの要素を識別するための ID。
複数の値で構成されている。
size_t snd_ctl_elem_id_sizeof(void);
snd_ctl_elem_id_t のサイズを取得
int snd_ctl_elem_id_malloc(snd_ctl_elem_id_t **ptr);
snd_ctl_elem_id_t を、malloc で確保する。
戻り値
0 で成功、負の値でエラーコード
void snd_ctl_elem_id_free(snd_ctl_elem_id_t *obj);
確保された snd_ctl_elem_id_t を解放する。
void snd_ctl_elem_id_clear(snd_ctl_elem_id_t *obj);
クリア
void snd_ctl_elem_id_copy(snd_ctl_elem_id_t *dst, const snd_ctl_elem_id_t *src);
複製
ASCII
char *snd_ctl_ascii_elem_id_get(snd_ctl_elem_id_t *id);
ASCII文字列にして返す
戻り値
strdup で複製された文字列
int snd_ctl_ascii_elem_id_parse(snd_ctl_elem_id_t *dst, const char *str);
ASCII文字列から解析
戻り値
0 で成功、負の値でエラーコード
比較
int snd_ctl_elem_id_compare_numid(const snd_ctl_elem_id_t *id1, const snd_ctl_elem_id_t *id2);
numid で比較する。
戻り値は、qsort() のようなソートに使用でき、永続的な結果が得られる。
戻り値
値が同じ場合は 0、異なる場合は他の値
int snd_ctl_elem_id_compare_set(const snd_ctl_elem_id_t *id1, const snd_ctl_elem_id_t *id2);
セット部分で比較し、numid は無視される。
「インターフェイス、デバイス、サブデバイス、名前、インデックス」の順序で比較される。

戻り値は、qsort() のようなソートに使用でき、永続的な結果が得られる。
戻り値
値が同じ場合は 0、異なる場合は他の値 (strcmp などによる結果)
取得
unsigned int snd_ctl_elem_id_get_numid(const snd_ctl_elem_id_t *obj);
numid を取得
snd_ctl_elem_iface_t snd_ctl_elem_id_get_interface(const snd_ctl_elem_id_t *obj);
インターフェイスを取得
unsigned int snd_ctl_elem_id_get_device(const snd_ctl_elem_id_t *obj);
デバイスを取得
unsigned int snd_ctl_elem_id_get_subdevice(const snd_ctl_elem_id_t *obj);
サブデバイスを取得
const char *snd_ctl_elem_id_get_name(const snd_ctl_elem_id_t *obj);
名前を取得
unsigned int snd_ctl_elem_id_get_index(const snd_ctl_elem_id_t *obj);
インデックスを取得
セット
void snd_ctl_elem_id_set_numid(snd_ctl_elem_id_t *obj, unsigned int val);
numid をセット
void snd_ctl_elem_id_set_interface(snd_ctl_elem_id_t *obj, snd_ctl_elem_iface_t val);
インターフェイスをセット
void snd_ctl_elem_id_set_device(snd_ctl_elem_id_t *obj, unsigned int val);
デバイスをセット
void snd_ctl_elem_id_set_subdevice(snd_ctl_elem_id_t *obj, unsigned int val);
サブデバイスをセット
void snd_ctl_elem_id_set_name(snd_ctl_elem_id_t *obj, const char *val);
名前をセット
void snd_ctl_elem_id_set_index(snd_ctl_elem_id_t *obj, unsigned int val);
インデックスをセット