X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=audiod.h;h=5b1192cf1785a0ddcbf521d72c7ce5f9c7177687;hp=6946fc7888487eb614ff5dc86a4ea3360d00a104;hb=d0d27cfa56d05eaa0e5567c75adfe606eab2957e;hpb=337d7784b0f8bc30b1fa9af56ace503acd97d40d diff --git a/audiod.h b/audiod.h index 6946fc78..5b1192cf 100644 --- a/audiod.h +++ b/audiod.h @@ -1,15 +1,12 @@ /* - * Copyright (C) 2006-2009 Andre Noll + * Copyright (C) 2006-2012 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ -/** \file audiod.h symbols exported from audiod.c */ +/** \file audiod.h Symbols exported from audiod.c. */ -int num_filters(int audio_format_num); -int get_audio_format_num(char *name); - /** enum of audio formats supported by para_audiod */ enum {AUDIOD_AUDIO_FORMATS_ENUM}; @@ -34,12 +31,6 @@ struct audiod_command { const char *name; /** pointer to the function that handles the command */ int (*handler)(int, int, char**); - /** - * if the command prefers to handle the full line (rather than the usual - * argv[] array), it stores a pointer to the corresponding line handling - * function here. In this case, the above \a handler pointer must be NULL. - */ - int (*line_handler)(int, char*); /** one-line description of the command */ const char *description; /** summary of the command line options */ @@ -51,16 +42,12 @@ struct audiod_command { /** * Describes one instance of a receiver-filter-writer chain. * - * \sa receiver_node, receiver, filter, filter_node, filter_chain, writer, - * writer_node, writer_node_group. + * \sa receiver_node, receiver, filter, filter_node, writer, writer_node, + * writer_node_group. */ struct slot_info { /** Number of the audio format in this slot. */ int format; - /** Receiver start time. */ - struct timeval rstime; - /** Writer start time. */ - struct timeval wstime; /** The stream_start status item announced by para_server. */ struct timeval server_stream_start; /** The offset status item announced by para_server. */ @@ -69,10 +56,10 @@ struct slot_info { unsigned seconds_total; /** The receiver info associated with this slot. */ struct receiver_node *receiver_node; - /** The active filter chain. */ - struct filter_chain *fc; - /** The active writer node group. */ - struct writer_node_group *wng; + /** The array of filter nodes. */ + struct filter_node *fns; + /** The array of writers attached to the last filter. */ + struct writer_node *wns; }; extern struct slot_info slot[MAX_STREAM_SLOTS]; @@ -80,9 +67,13 @@ extern struct audiod_args_info conf; extern int audiod_status; void __noreturn clean_exit(int status, const char *msg); -int handle_connect(int accept_fd); +int handle_connect(int accept_fd, fd_set *rfds); void audiod_status_dump(void); char *get_time_string(int slot_num); +struct btr_node *audiod_get_btr_root(void); + +void stat_client_write_item(int item_num); +void clear_and_dump_items(void); /** iterate over all slots */ #define FOR_EACH_SLOT(_slot) for (_slot = 0; _slot < MAX_STREAM_SLOTS; _slot++)