/** timer status structure */
typedef struct _snd_timer_status snd_timer_status_t;
/** timer read structure */
-typedef struct sndrv_timer_read snd_timer_read_t;
+typedef struct _snd_timer_read {
+ unsigned int resolution; /**< tick resolution in nanoseconds */
+ unsigned int ticks; /**< count of happened ticks */
+} snd_timer_read_t;
/** timer master class */
typedef enum _snd_timer_class {
/** timer handle */
typedef struct _snd_timer snd_timer_t;
+
#ifdef __cplusplus
extern "C" {
#endif
void snd_timer_params_set_auto_start(snd_timer_params_t * params, int auto_start);
void snd_timer_params_set_ticks(snd_timer_params_t * params, long ticks);
-int snd_timer_params_get_ticks(snd_timer_params_t * params);
+long snd_timer_params_get_ticks(snd_timer_params_t * params);
void snd_timer_params_set_queue_size(snd_timer_params_t * params, long queue_size);
long snd_timer_params_get_queue_size(snd_timer_params_t * params);
* \param params pointer to #snd_timer_params_t structure
* \return timer ticks
*/
-int snd_timer_params_get_ticks(snd_timer_params_t * params)
+long snd_timer_params_get_ticks(snd_timer_params_t * params)
{
assert(params);
return params->ticks;
const char *str;
char buf[256];
int err;
- snd_config_t *conf, *type_conf;
+ snd_config_t *conf, *type_conf = NULL;
snd_config_iterator_t i, next;
const char *lib = NULL, *open_name = NULL;
int (*open_func)(snd_timer_query_t **, const char *, snd_config_t *, snd_config_t *, int) = NULL;
{
int err;
snd_config_t *timer_conf;
- err = snd_config_search_definition(root, "timer", name, &timer_conf);
+ err = snd_config_search_definition(root, "timer_query", name, &timer_conf);
if (err < 0) {
SNDERR("Unknown timer %s", name);
return err;