X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=grab_client.h;h=59ba697ede885c73c548a0e885bc816eb2a35284;hp=04e0a75b15a32f5ccf13ec1c2fe40ddde6336acc;hb=1d7a26dca86a639db694663738ccc01acaa88aba;hpb=9facffb38faa01da0d1ba9574f9cc1c47b1deb2e diff --git a/grab_client.h b/grab_client.h index 04e0a75b..59ba697e 100644 --- a/grab_client.h +++ b/grab_client.h @@ -22,38 +22,28 @@ enum grab_mode { /** Flags specified as arguments to the grab command. */ enum grab_flags { - /** Grab the filter input instead of its output. */ - GF_INPUT_GRAB = 1, /** Stop grabbing if audio file changes. */ - GF_ONE_SHOT = 2, + GF_ONE_SHOT = 1, }; -/** - * Describes one active grab client. - * - * \sa filter_callback, filter_node::callbacks. - */ +/** Describes one active grab client. */ struct grab_client { + /* The value of the -p option. */ + char *parent; /** The file descriptor to send the grabbed stream to. */ int fd; - /** Non-zero if the write() to \a fd failed. */ - int error; /** See \ref grab_mode. */ enum grab_mode mode; - /** Point of filter chain to grab. */ - int32_t filter_num; - /** The number of the desired audio format. */ - int audio_format_num; /** Flags given at the command line. */ enum grab_flags flags; - /** The callback data which gets attached to a suitable filter_node. */ - struct filter_callback fcb; + /** The point of the grab client's node in the buffer tree. */ + struct btr_node *btrn; + /* The task of this grab client. */ + struct task task; /** All grab clients belong either to a filter node or to the inactive list. */ struct list_head node; }; int grab_client_new(int fd, int argc, char **argv); -void activate_inactive_grab_clients(int audio_format_num, - struct filter_chain *fc); -void activate_grab_client(struct grab_client *gc, struct filter_node *fn); +void activate_grab_clients(void); void init_grabbing(void);