ALSA:コントロール(要素の情報)

snd_ctl_elem_info要素の情報を取得
操作
snd_ctl_elem_info_sizeofsnd_ctl_elem_info_t のサイズを取得
snd_ctl_elem_info_mallocsnd_ctl_elem_info_t を確保
snd_ctl_elem_info_freesnd_ctl_elem_info_t を解放
snd_ctl_elem_info_clearクリア
snd_ctl_elem_info_copy複製
snd_ctl_elem_type_t要素の内容のタイプ
要素の識別子をセット
snd_ctl_elem_info_set_id要素の識別子をセット
snd_ctl_elem_info_set_numid要素の numid をセット
snd_ctl_elem_info_set_interface要素のインターフェイスをセット
snd_ctl_elem_info_set_device要素のデバイスをセット
snd_ctl_elem_info_set_subdevice要素のサブデバイスをセット
snd_ctl_elem_info_set_name要素の名前をセット
snd_ctl_elem_info_set_index要素のインデックスをセット
情報
snd_ctl_elem_info_get_type要素の内容のタイプを取得
snd_ctl_elem_info_is_readable値が読み込み可能か
snd_ctl_elem_info_is_writable値が書き込み可能か
snd_ctl_elem_info_is_volatile通知が行えるか
snd_ctl_elem_info_is_inactiveスタータスがアクティブか
snd_ctl_elem_info_is_lockedロックされているか
snd_ctl_elem_info_is_tlv_readableTLV で読み込めるか
snd_ctl_elem_info_is_tlv_writableTLV で書き込めるか
snd_ctl_elem_info_is_tlv_commandableTLV コマンドが使えるか
snd_ctl_elem_info_is_ownerロックにより要素を所有しているか
snd_ctl_elem_info_is_userユーザー要素か
状態の変更
snd_ctl_elem_info_set_read_write読み込み/書き込みの不可をセット
snd_ctl_elem_info_set_tlv_read_writeTLV 読み書きの不可をセット
snd_ctl_elem_info_set_inactiveアクティブ状態のセット
取得
snd_ctl_elem_info_get_owner要素をロックしている所有者を取得
snd_ctl_elem_info_get_count値の個数を取得
snd_ctl_elem_info_get_min数値の最小値を取得
snd_ctl_elem_info_get_max数値の最大値を取得
snd_ctl_elem_info_get_step数値のステップ値を取得
snd_ctl_elem_info_get_min6464bit数値の最小値を取得
snd_ctl_elem_info_get_max6464bit数値の最大値を取得
snd_ctl_elem_info_get_step6464bit数値のステップ値を取得
snd_ctl_elem_info_get_items列挙型の値の個数を取得
snd_ctl_elem_info_get_item_name列挙型の選択されている名前を取得
セット
snd_ctl_elem_info_set_item列挙型の番号をセット
要素の識別子を取得
snd_ctl_elem_info_get_id要素の識別子を取得
snd_ctl_elem_info_get_numid要素の numid を取得
snd_ctl_elem_info_get_interface要素のインターフェイスを取得
snd_ctl_elem_info_get_device要素のデバイスを取得
snd_ctl_elem_info_get_subdevice要素のサブデバイスを取得
snd_ctl_elem_info_get_name要素の名前を取得
snd_ctl_elem_info_get_index要素のインデックスを取得
int snd_ctl_elem_info(snd_ctl_t *ctl, snd_ctl_elem_info_t *info);
要素の情報を取得
戻り値
0 で成功、負の値でエラーコード
操作
size_t snd_ctl_elem_info_sizeof(void);
snd_ctl_elem_info_t のサイズを取得
int snd_ctl_elem_info_malloc(snd_ctl_elem_info_t **ptr);
snd_ctl_elem_info_t を確保
void snd_ctl_elem_info_free(snd_ctl_elem_info_t *obj);
snd_ctl_elem_info_t を解放
void snd_ctl_elem_info_clear(snd_ctl_elem_info_t *obj);
クリア
void snd_ctl_elem_info_copy(snd_ctl_elem_info_t *dst, const snd_ctl_elem_info_t *src);
複製
snd_ctl_elem_type_t
要素の内容のタイプ
SND_CTL_ELEM_TYPE_NONE
無効なタイプ
SND_CTL_ELEM_TYPE_BOOLEAN
真偽値
SND_CTL_ELEM_TYPE_INTEGER
符号付き数値
SND_CTL_ELEM_TYPE_ENUMERATED
列挙値
SND_CTL_ELEM_TYPE_BYTES
バイト
SND_CTL_ELEM_TYPE_IEC958
IEC958 (S/PDIF) 設定
SND_CTL_ELEM_TYPE_INTEGER64
64bit 符号付き数値
要素の識別子をセット
void snd_ctl_elem_info_set_id(snd_ctl_elem_info_t *obj, const snd_ctl_elem_id_t *ptr);
要素の識別子をセット
void snd_ctl_elem_info_set_numid(snd_ctl_elem_info_t *obj, unsigned int val);
要素の numid をセット
void snd_ctl_elem_info_set_interface(snd_ctl_elem_info_t *obj, snd_ctl_elem_iface_t val);
要素のインターフェイスをセット
void snd_ctl_elem_info_set_device(snd_ctl_elem_info_t *obj, unsigned int val);
要素のデバイスをセット
void snd_ctl_elem_info_set_subdevice(snd_ctl_elem_info_t *obj, unsigned int val);
要素のサブデバイスをセット
void snd_ctl_elem_info_set_name(snd_ctl_elem_info_t *obj, const char *val);
要素の名前をセット
void snd_ctl_elem_info_set_index(snd_ctl_elem_info_t *obj, unsigned int val);
要素のインデックスをセット
情報
snd_ctl_elem_type_t snd_ctl_elem_info_get_type(const snd_ctl_elem_info_t *obj);
要素の内容のタイプを取得
int snd_ctl_elem_info_is_readable(const snd_ctl_elem_info_t *obj);
値が読み込み可能か
戻り値
1 で読み込み可、0 で読み込み不可
int snd_ctl_elem_info_is_writable(const snd_ctl_elem_info_t *obj);
値が書き込み可能か
int snd_ctl_elem_info_is_volatile(const snd_ctl_elem_info_t *obj);
通知が行えるか
int snd_ctl_elem_info_is_inactive(const snd_ctl_elem_info_t *obj);
スタータスがアクティブか
int snd_ctl_elem_info_is_locked(const snd_ctl_elem_info_t *obj);
ロックされているか
戻り値
ロックされておらず、値が変更可能なら 0。
他のアプリでロックされている場合は 1。
int snd_ctl_elem_info_is_tlv_readable(const snd_ctl_elem_info_t *obj);
TLV で読み込めるか
int snd_ctl_elem_info_is_tlv_writable(const snd_ctl_elem_info_t *obj);
TLV で書き込めるか
int snd_ctl_elem_info_is_tlv_commandable(const snd_ctl_elem_info_t *obj);
TLV コマンドが使えるか
int snd_ctl_elem_info_is_owner(const snd_ctl_elem_info_t *obj);
ロックにより要素を所有しているか
int snd_ctl_elem_info_is_user(const snd_ctl_elem_info_t *obj);
ユーザー要素か
戻り値
0 でシステム要素。1 でユーザーが作成した要素
状態の変更
void snd_ctl_elem_info_set_read_write(snd_ctl_elem_info_t *obj, int rval, int wval);
読み込み/書き込みの不可をセット
rval
読み込み可能か
wval
書き込み可能か
void snd_ctl_elem_info_set_tlv_read_write(snd_ctl_elem_info_t *obj, int rval, int wval);
TLV 読み書きの不可をセット
rval
読み込み可能か
wval
書き込み可能か
void snd_ctl_elem_info_set_inactive(snd_ctl_elem_info_t *obj, int val);
アクティブ状態のセット
val
アクティブか
取得
pid_t snd_ctl_elem_info_get_owner(const snd_ctl_elem_info_t *obj);
要素をロックしている所有者を取得
unsigned int snd_ctl_elem_info_get_count(const snd_ctl_elem_info_t *obj);
値の個数を取得
long snd_ctl_elem_info_get_min(const snd_ctl_elem_info_t *obj);
SND_CTL_ELEM_TYPE_INTEGER タイプの場合、最小値を取得。
long snd_ctl_elem_info_get_max(const snd_ctl_elem_info_t *obj);
SND_CTL_ELEM_TYPE_INTEGER タイプの場合、最大値を取得。
long snd_ctl_elem_info_get_step(const snd_ctl_elem_info_t *obj);
SND_CTL_ELEM_TYPE_INTEGER タイプの場合、ステップ値を取得。
long long snd_ctl_elem_info_get_min64(const snd_ctl_elem_info_t *obj);
SND_CTL_ELEM_TYPE_INTEGER64 タイプの場合、最小値を取得。
long long snd_ctl_elem_info_get_max64(const snd_ctl_elem_info_t *obj);
SND_CTL_ELEM_TYPE_INTEGER64 タイプの場合、最大値を取得。
long long snd_ctl_elem_info_get_step64(const snd_ctl_elem_info_t *obj);
SND_CTL_ELEM_TYPE_INTEGER64 タイプの場合、ステップ値を取得。
unsigned int snd_ctl_elem_info_get_items(const snd_ctl_elem_info_t *obj);
SND_CTL_ELEM_TYPE_ENUMERATED タイプの場合、列挙型の個数を取得。
const char *snd_ctl_elem_info_get_item_name(const snd_ctl_elem_info_t *obj);
SND_CTL_ELEM_TYPE_ENUMERATED タイプの場合、選択されている値の名前を取得。
セット
void snd_ctl_elem_info_set_item(snd_ctl_elem_info_t *obj, unsigned int val);
SND_CTL_ELEM_TYPE_ENUMERATED タイプの場合、指定した値を選択。
要素の識別子を取得
void snd_ctl_elem_info_get_id(const snd_ctl_elem_info_t *obj, snd_ctl_elem_id_t *ptr);
要素の識別子を取得
unsigned int snd_ctl_elem_info_get_numid(const snd_ctl_elem_info_t *obj);
要素の numid を取得
snd_ctl_elem_iface_t snd_ctl_elem_info_get_interface(const snd_ctl_elem_info_t *obj);
要素のインターフェイスを取得
unsigned int snd_ctl_elem_info_get_device(const snd_ctl_elem_info_t *obj);
要素のデバイスを取得
unsigned int snd_ctl_elem_info_get_subdevice(const snd_ctl_elem_info_t *obj);
要素のサブデバイスを取得
const char *snd_ctl_elem_info_get_name(const snd_ctl_elem_info_t *obj);
要素の名前を取得
unsigned int snd_ctl_elem_info_get_index(const snd_ctl_elem_info_t *obj);
要素のインデックスを取得