External Control Plugin SDK

Data Structures

struct  snd_ctl_ext_t
struct  snd_ctl_ext_callback_t

Files

file  control_ext.c
 

External Control Plugin SDK.


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 unsigned long snd_ctl_ext_key_t

Enumerations

enum  snd_ctl_ext_access_t {
  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 Documentation

#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:

external plugin protocol version

#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 the control plugin

#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 Documentation

typedef unsigned long snd_ctl_ext_key_t

Key to access a control pointer


Enumeration Type Documentation

The access type bits stored in get_attribute callback


Function Documentation

int snd_ctl_ext_create ( snd_ctl_ext_t *  ext,
const char *  name,
int  mode 
)

Create an external control plugin instance.

Parameters:
ext the plugin handle
name name of control
mode control open mode
Returns:
0 if successful, or a negative error code

Creates the external control instance.

int snd_ctl_ext_delete ( snd_ctl_ext_t *  ext  ) 

Delete the external control plugin.

Parameters:
ext the plugin handle
Returns:
0 if successful, or a negative error code
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines

Generated for ALSA project - the C library reference by doxygen 1.6.1