ALSA project - the C library reference
Data Structures | Macros | Typedefs | Enumerations | Functions
timer.h File Reference

Application interface library for the ALSA driver. More...

Go to the source code of this file.

Data Structures

struct  snd_timer_read_t
 
struct  snd_timer_tread_t
 

Macros

#define SND_TIMER_DLSYM_VERSION   _dlsym_timer_001
 
#define SND_TIMER_QUERY_DLSYM_VERSION   _dlsym_timer_query_001
 
#define SND_TIMER_GLOBAL_SYSTEM   0
 
#define SND_TIMER_GLOBAL_RTC   1 /* Obsoleted, due to enough legacy. */
 
#define SND_TIMER_GLOBAL_HPET   2
 
#define SND_TIMER_GLOBAL_HRTIMER   3
 
#define SND_TIMER_OPEN_NONBLOCK   (1<<0)
 
#define SND_TIMER_OPEN_TREAD   (1<<1)
 
#define snd_timer_id_alloca(ptr)   __snd_alloca(ptr, snd_timer_id)
 
#define snd_timer_ginfo_alloca(ptr)   __snd_alloca(ptr, snd_timer_ginfo)
 
#define snd_timer_info_alloca(ptr)   __snd_alloca(ptr, snd_timer_info)
 
#define snd_timer_params_alloca(ptr)   __snd_alloca(ptr, snd_timer_params)
 
#define snd_timer_status_alloca(ptr)   __snd_alloca(ptr, snd_timer_status)
 

Typedefs

typedef struct _snd_timer_id snd_timer_id_t
 
typedef struct _snd_timer_ginfo snd_timer_ginfo_t
 
typedef struct _snd_timer_gparams snd_timer_gparams_t
 
typedef struct _snd_timer_gstatus snd_timer_gstatus_t
 
typedef struct _snd_timer_info snd_timer_info_t
 
typedef struct _snd_timer_params snd_timer_params_t
 
typedef struct _snd_timer_status snd_timer_status_t
 
typedef struct _snd_timer_query snd_timer_query_t
 
typedef struct _snd_timer snd_timer_t
 

Enumerations

enum  snd_timer_class_t {
  SND_TIMER_CLASS_NONE = -1 , SND_TIMER_CLASS_SLAVE = 0 , SND_TIMER_CLASS_GLOBAL , SND_TIMER_CLASS_CARD ,
  SND_TIMER_CLASS_PCM , SND_TIMER_CLASS_LAST = SND_TIMER_CLASS_PCM
}
 
enum  snd_timer_slave_class_t {
  SND_TIMER_SCLASS_NONE = 0 , SND_TIMER_SCLASS_APPLICATION , SND_TIMER_SCLASS_SEQUENCER , SND_TIMER_SCLASS_OSS_SEQUENCER ,
  SND_TIMER_SCLASS_LAST = SND_TIMER_SCLASS_OSS_SEQUENCER
}
 
enum  snd_timer_event_t {
  SND_TIMER_EVENT_RESOLUTION = 0 , SND_TIMER_EVENT_TICK , SND_TIMER_EVENT_START , SND_TIMER_EVENT_STOP ,
  SND_TIMER_EVENT_CONTINUE , SND_TIMER_EVENT_PAUSE , SND_TIMER_EVENT_EARLY , SND_TIMER_EVENT_SUSPEND ,
  SND_TIMER_EVENT_RESUME , SND_TIMER_EVENT_MSTART = SND_TIMER_EVENT_START + 10 , SND_TIMER_EVENT_MSTOP = SND_TIMER_EVENT_STOP + 10 , SND_TIMER_EVENT_MCONTINUE = SND_TIMER_EVENT_CONTINUE + 10 ,
  SND_TIMER_EVENT_MPAUSE = SND_TIMER_EVENT_PAUSE + 10 , SND_TIMER_EVENT_MSUSPEND = SND_TIMER_EVENT_SUSPEND + 10 , SND_TIMER_EVENT_MRESUME = SND_TIMER_EVENT_RESUME + 10
}
 
enum  snd_timer_type_t { SND_TIMER_TYPE_HW = 0 , SND_TIMER_TYPE_SHM , SND_TIMER_TYPE_INET }
 

Functions

int snd_timer_query_open (snd_timer_query_t **handle, const char *name, int mode)
 Opens a new connection to the timer query interface. More...
 
int snd_timer_query_open_lconf (snd_timer_query_t **handle, const char *name, int mode, snd_config_t *lconf)
 Opens a new connection to the timer query interface using local configuration. More...
 
int snd_timer_query_close (snd_timer_query_t *handle)
 close timer query handle More...
 
int snd_timer_query_next_device (snd_timer_query_t *handle, snd_timer_id_t *tid)
 obtain the next timer identification More...
 
int snd_timer_query_info (snd_timer_query_t *handle, snd_timer_ginfo_t *info)
 obtain the timer global information More...
 
int snd_timer_query_params (snd_timer_query_t *handle, snd_timer_gparams_t *params)
 set the timer global parameters More...
 
int snd_timer_query_status (snd_timer_query_t *handle, snd_timer_gstatus_t *status)
 get the timer global status More...
 
int snd_timer_open (snd_timer_t **handle, const char *name, int mode)
 Opens a new connection to the timer interface. More...
 
int snd_timer_open_lconf (snd_timer_t **handle, const char *name, int mode, snd_config_t *lconf)
 Opens a new connection to the timer interface using local configuration. More...
 
int snd_timer_close (snd_timer_t *handle)
 close timer handle More...
 
int snd_async_add_timer_handler (snd_async_handler_t **handler, snd_timer_t *timer, snd_async_callback_t callback, void *private_data)
 Add an async handler for a timer. More...
 
snd_timer_tsnd_async_handler_get_timer (snd_async_handler_t *handler)
 Return timer handle related to an async handler. More...
 
int snd_timer_poll_descriptors_count (snd_timer_t *handle)
 get count of poll descriptors for timer handle More...
 
int snd_timer_poll_descriptors (snd_timer_t *handle, struct pollfd *pfds, unsigned int space)
 get poll descriptors More...
 
int snd_timer_poll_descriptors_revents (snd_timer_t *timer, struct pollfd *pfds, unsigned int nfds, unsigned short *revents)
 get returned events from poll descriptors More...
 
int snd_timer_info (snd_timer_t *handle, snd_timer_info_t *timer)
 get information about timer handle More...
 
int snd_timer_params (snd_timer_t *handle, snd_timer_params_t *params)
 set parameters for timer handle More...
 
int snd_timer_status (snd_timer_t *handle, snd_timer_status_t *status)
 get status from timer handle More...
 
int snd_timer_start (snd_timer_t *handle)
 start the timer More...
 
int snd_timer_stop (snd_timer_t *handle)
 stop the timer More...
 
int snd_timer_continue (snd_timer_t *handle)
 continue the timer More...
 
ssize_t snd_timer_read (snd_timer_t *handle, void *buffer, size_t size)
 read bytes using timer handle More...
 
size_t snd_timer_id_sizeof (void)
 get size of the snd_timer_id_t structure in bytes More...
 
int snd_timer_id_malloc (snd_timer_id_t **ptr)
 allocate a new snd_timer_id_t structure More...
 
void snd_timer_id_free (snd_timer_id_t *obj)
 frees the snd_timer_id_t structure More...
 
void snd_timer_id_copy (snd_timer_id_t *dst, const snd_timer_id_t *src)
 copy one snd_timer_id_t structure to another More...
 
void snd_timer_id_set_class (snd_timer_id_t *id, int dev_class)
 set timer class More...
 
int snd_timer_id_get_class (snd_timer_id_t *id)
 get timer class More...
 
void snd_timer_id_set_sclass (snd_timer_id_t *id, int dev_sclass)
 set timer sub-class More...
 
int snd_timer_id_get_sclass (snd_timer_id_t *id)
 get timer sub-class More...
 
void snd_timer_id_set_card (snd_timer_id_t *id, int card)
 set timer card More...
 
int snd_timer_id_get_card (snd_timer_id_t *id)
 get timer card More...
 
void snd_timer_id_set_device (snd_timer_id_t *id, int device)
 set timer device More...
 
int snd_timer_id_get_device (snd_timer_id_t *id)
 get timer device More...
 
void snd_timer_id_set_subdevice (snd_timer_id_t *id, int subdevice)
 set timer subdevice More...
 
int snd_timer_id_get_subdevice (snd_timer_id_t *id)
 get timer subdevice More...
 
size_t snd_timer_ginfo_sizeof (void)
 get size of the snd_timer_ginfo_t structure in bytes More...
 
int snd_timer_ginfo_malloc (snd_timer_ginfo_t **ptr)
 allocate a new snd_timer_ginfo_t structure More...
 
void snd_timer_ginfo_free (snd_timer_ginfo_t *obj)
 frees the snd_timer_ginfo_t structure More...
 
void snd_timer_ginfo_copy (snd_timer_ginfo_t *dst, const snd_timer_ginfo_t *src)
 copy one snd_timer_info_t structure to another More...
 
int snd_timer_ginfo_set_tid (snd_timer_ginfo_t *obj, snd_timer_id_t *tid)
 set timer identification More...
 
snd_timer_id_tsnd_timer_ginfo_get_tid (snd_timer_ginfo_t *obj)
 get timer identification More...
 
unsigned int snd_timer_ginfo_get_flags (snd_timer_ginfo_t *obj)
 get timer flags More...
 
int snd_timer_ginfo_get_card (snd_timer_ginfo_t *obj)
 get associated card with timer More...
 
char * snd_timer_ginfo_get_id (snd_timer_ginfo_t *obj)
 get timer identification More...
 
char * snd_timer_ginfo_get_name (snd_timer_ginfo_t *obj)
 get timer name More...
 
unsigned long snd_timer_ginfo_get_resolution (snd_timer_ginfo_t *obj)
 get timer resolution in ns More...
 
unsigned long snd_timer_ginfo_get_resolution_min (snd_timer_ginfo_t *obj)
 get timer minimal resolution in ns More...
 
unsigned long snd_timer_ginfo_get_resolution_max (snd_timer_ginfo_t *obj)
 get timer maximal resolution in ns More...
 
unsigned int snd_timer_ginfo_get_clients (snd_timer_ginfo_t *obj)
 get current timer clients More...
 
size_t snd_timer_info_sizeof (void)
 get size of the snd_timer_info_t structure in bytes More...
 
int snd_timer_info_malloc (snd_timer_info_t **ptr)
 allocate a new snd_timer_info_t structure More...
 
void snd_timer_info_free (snd_timer_info_t *obj)
 frees the snd_timer_info_t structure More...
 
void snd_timer_info_copy (snd_timer_info_t *dst, const snd_timer_info_t *src)
 copy one snd_timer_info_t structure to another More...
 
int snd_timer_info_is_slave (snd_timer_info_t *info)
 determine, if timer is slave More...
 
int snd_timer_info_get_card (snd_timer_info_t *info)
 get timer card More...
 
const char * snd_timer_info_get_id (snd_timer_info_t *info)
 get timer id More...
 
const char * snd_timer_info_get_name (snd_timer_info_t *info)
 get timer name More...
 
long snd_timer_info_get_resolution (snd_timer_info_t *info)
 get timer resolution in us More...
 
size_t snd_timer_params_sizeof (void)
 get size of the snd_timer_params_t structure in bytes More...
 
int snd_timer_params_malloc (snd_timer_params_t **ptr)
 allocate a new snd_timer_params_t structure More...
 
void snd_timer_params_free (snd_timer_params_t *obj)
 frees the snd_timer_params_t structure More...
 
void snd_timer_params_copy (snd_timer_params_t *dst, const snd_timer_params_t *src)
 copy one snd_timer_params_t structure to another More...
 
int snd_timer_params_set_auto_start (snd_timer_params_t *params, int auto_start)
 set timer auto start More...
 
int snd_timer_params_get_auto_start (snd_timer_params_t *params)
 determine if timer has auto start flag More...
 
int snd_timer_params_set_exclusive (snd_timer_params_t *params, int exclusive)
 set timer exclusive use More...
 
int snd_timer_params_get_exclusive (snd_timer_params_t *params)
 determine if timer has exclusive flag More...
 
int snd_timer_params_set_early_event (snd_timer_params_t *params, int early_event)
 set timer early event More...
 
int snd_timer_params_get_early_event (snd_timer_params_t *params)
 determine if timer has early event flag More...
 
void snd_timer_params_set_ticks (snd_timer_params_t *params, long ticks)
 set timer ticks More...
 
long snd_timer_params_get_ticks (snd_timer_params_t *params)
 get timer ticks More...
 
void snd_timer_params_set_queue_size (snd_timer_params_t *params, long queue_size)
 set timer queue size (32-1024) More...
 
long snd_timer_params_get_queue_size (snd_timer_params_t *params)
 get queue size More...
 
void snd_timer_params_set_filter (snd_timer_params_t *params, unsigned int filter)
 set timer event filter More...
 
unsigned int snd_timer_params_get_filter (snd_timer_params_t *params)
 get timer event filter More...
 
size_t snd_timer_status_sizeof (void)
 get size of the snd_timer_status_t structure in bytes More...
 
int snd_timer_status_malloc (snd_timer_status_t **ptr)
 allocate a new snd_timer_status_t structure More...
 
void snd_timer_status_free (snd_timer_status_t *obj)
 frees the snd_timer_status_t structure More...
 
void snd_timer_status_copy (snd_timer_status_t *dst, const snd_timer_status_t *src)
 copy one snd_timer_status_t structure to another More...
 
snd_htimestamp_t snd_timer_status_get_timestamp (snd_timer_status_t *status)
 get timestamp More...
 
long snd_timer_status_get_resolution (snd_timer_status_t *status)
 get resolution in us More...
 
long snd_timer_status_get_lost (snd_timer_status_t *status)
 get master tick lost count More...
 
long snd_timer_status_get_overrun (snd_timer_status_t *status)
 get overrun count More...
 
long snd_timer_status_get_queue (snd_timer_status_t *status)
 get count of used queue elements More...
 
long snd_timer_info_get_ticks (snd_timer_info_t *info)
 (DEPRECATED) get maximum timer ticks More...
 

Detailed Description

Application interface library for the ALSA driver.

Author
Jaroslav Kysela perex.nosp@m.@per.nosp@m.ex.cz
Abramo Bagnara abram.nosp@m.o@al.nosp@m.sa-pr.nosp@m.ojec.nosp@m.t.org
Takashi Iwai tiwai.nosp@m.@sus.nosp@m.e.de
Date
1998-2001

Application interface library for the ALSA driver