Files | |
file | control_ext.c |
External Control Plugin SDK. | |
Data Structures | |
struct | snd_ctl_ext |
struct | snd_ctl_ext_callback |
Defines | |
#define | SND_CTL_PLUGIN_ENTRY(name) _snd_ctl_##name##_open |
#define | SND_CTL_PLUGIN_SYMBOL(name) SND_DLSYM_BUILD_VERSION(SND_CTL_PLUGIN_ENTRY(name), SND_CONTROL_DLSYM_VERSION); |
#define | SND_CTL_PLUGIN_DEFINE_FUNC(plugin) |
#define | SND_CTL_EXT_VERSION_MAJOR 1 |
#define | SND_CTL_EXT_VERSION_MINOR 0 |
#define | SND_CTL_EXT_VERSION_TINY 0 |
#define | SND_CTL_EXT_VERSION |
#define | SND_CTL_EXT_KEY_NOT_FOUND (snd_ctl_ext_key_t)(-1) |
Typedefs | |
typedef snd_ctl_ext | snd_ctl_ext_t |
typedef snd_ctl_ext_callback | snd_ctl_ext_callback_t |
typedef unsigned long | snd_ctl_ext_key_t |
typedef enum snd_ctl_ext_access | snd_ctl_ext_access_t |
Enumerations | |
enum | snd_ctl_ext_access { SND_CTL_EXT_ACCESS_READ = (1<<0), SND_CTL_EXT_ACCESS_WRITE = (1<<1), SND_CTL_EXT_ACCESS_READWRITE = (3<<0), SND_CTL_EXT_ACCESS_VOLATILE = (1<<2), SND_CTL_EXT_ACCESS_INACTIVE = (1<<8) } |
Functions | |
int | snd_ctl_ext_create (snd_ctl_ext_t *ext, const char *name, int mode) |
Create an external control plugin instance. | |
int | snd_ctl_ext_delete (snd_ctl_ext_t *ext) |
Delete the external control plugin. |
#define SND_CTL_EXT_KEY_NOT_FOUND (snd_ctl_ext_key_t)(-1) |
find_elem callback returns this if no matching control element is found
#define SND_CTL_EXT_VERSION |
Value:
((SND_CTL_EXT_VERSION_MAJOR<<16) |\ (SND_CTL_EXT_VERSION_MINOR<<8) |\ (SND_CTL_EXT_VERSION_TINY))
#define SND_CTL_EXT_VERSION_MAJOR 1 |
Protocol major version
#define SND_CTL_EXT_VERSION_MINOR 0 |
Protocol minor version
#define SND_CTL_EXT_VERSION_TINY 0 |
Protocol tiny version
#define SND_CTL_PLUGIN_DEFINE_FUNC | ( | plugin | ) |
Value:
int SND_CTL_PLUGIN_ENTRY(plugin) (snd_ctl_t **handlep, const char *name,\ snd_config_t *root, snd_config_t *conf, int mode)
#define SND_CTL_PLUGIN_ENTRY | ( | name | ) | _snd_ctl_##name##_open |
Define the object entry for external control plugins
#define SND_CTL_PLUGIN_SYMBOL | ( | name | ) | SND_DLSYM_BUILD_VERSION(SND_CTL_PLUGIN_ENTRY(name), SND_CONTROL_DLSYM_VERSION); |
Define the symbols of the given control plugin with versions
typedef enum snd_ctl_ext_access snd_ctl_ext_access_t |
The access type bits stored in get_attribute callback
typedef struct snd_ctl_ext_callback snd_ctl_ext_callback_t |
Callback table of control ext
typedef unsigned long snd_ctl_ext_key_t |
Key to access a control pointer
typedef struct snd_ctl_ext snd_ctl_ext_t |
External control plugin handle
enum snd_ctl_ext_access |
The access type bits stored in get_attribute callback
int snd_ctl_ext_create | ( | snd_ctl_ext_t * | ext, | |
const char * | name, | |||
int | mode | |||
) |
Create an external control plugin instance.
ext | the plugin handle | |
name | name of control | |
mode | control open mode |
int snd_ctl_ext_delete | ( | snd_ctl_ext_t * | ext | ) |
Delete the external control plugin.
ext | the plugin handle |