mirror of
https://github.com/alsa-project/alsa-lib.git
synced 2025-10-29 05:40:25 -04:00
added snd_user_file() function
alisp extensions - added nth, include, path commands - added auto-exec functionality - added helpers for C<->lisp interoperability
This commit is contained in:
parent
95418afc67
commit
6ad93ac892
13 changed files with 668 additions and 93 deletions
|
|
@ -32,9 +32,22 @@ struct alisp_cfg {
|
|||
};
|
||||
|
||||
struct alisp_instance;
|
||||
struct alisp_object;
|
||||
struct alisp_seq_iterator;
|
||||
|
||||
struct alisp_cfg *alsa_lisp_default_cfg(snd_input_t *input);
|
||||
void alsa_lisp_default_cfg_free(struct alisp_cfg *cfg);
|
||||
int alsa_lisp(struct alisp_cfg *cfg, struct alisp_instance **instance);
|
||||
void alsa_lisp_free(struct alisp_instance *instance);
|
||||
|
||||
extern struct alisp_object alsa_lisp_nil;
|
||||
extern struct alisp_object alsa_lisp_t;
|
||||
int alsa_lisp_function(struct alisp_instance *instance, struct alisp_seq_iterator **result,
|
||||
const char *id, const char *args, ...)
|
||||
#ifndef DOC_HIDDEN
|
||||
__attribute__ ((format (printf, 4, 5)))
|
||||
#endif
|
||||
;
|
||||
int alsa_lisp_seq_first(struct alisp_instance *instance, const char *id,
|
||||
struct alisp_seq_iterator **seq);
|
||||
int alsa_lisp_seq_next(struct alisp_seq_iterator **seq);
|
||||
int alsa_lisp_seq_count(struct alisp_seq_iterator *seq);
|
||||
int alsa_lisp_seq_integer(struct alisp_seq_iterator *seq, long *val);
|
||||
int alsa_lisp_seq_pointer(struct alisp_seq_iterator *seq, const char *ptr_id, void **ptr);
|
||||
|
|
|
|||
|
|
@ -119,13 +119,12 @@ int snd_async_handler_get_fd(snd_async_handler_t *handler);
|
|||
int snd_async_handler_get_signo(snd_async_handler_t *handler);
|
||||
void *snd_async_handler_get_callback_private(snd_async_handler_t *handler);
|
||||
|
||||
/**
|
||||
* \brief Internal structure for an IPC shm area manager.
|
||||
*/
|
||||
struct snd_shm_area *snd_shm_area_create(int shmid, void *ptr);
|
||||
struct snd_shm_area *snd_shm_area_share(struct snd_shm_area *area);
|
||||
int snd_shm_area_destroy(struct snd_shm_area *area);
|
||||
|
||||
int snd_user_file(const char *file, char **result);
|
||||
|
||||
/** Timestamp */
|
||||
typedef struct timeval snd_timestamp_t;
|
||||
/** Hi-res timestamp */
|
||||
|
|
|
|||
|
|
@ -95,6 +95,7 @@ enum sndo_mixer_io_type {
|
|||
};
|
||||
|
||||
typedef struct sndo_mixer sndo_mixer_t;
|
||||
struct alisp_cfg;
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
|
@ -106,7 +107,7 @@ extern "C" {
|
|||
* \{
|
||||
*/
|
||||
|
||||
int sndo_mixer_open(sndo_mixer_t **pmixer, const char *playback_name, const char *capture_name, snd_config_t *lconf);
|
||||
int sndo_mixer_open(sndo_mixer_t **pmixer, const char *playback_name, const char *capture_name, struct alisp_cfg *lconf);
|
||||
int sndo_mixer_close(sndo_mixer_t *mixer);
|
||||
int sndo_mixer_poll_descriptors_count(sndo_mixer_t *mixer);
|
||||
int sndo_mixer_poll_descriptors(sndo_mixer_t *mixer, struct pollfd *pfds, unsigned int space);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue