diff options
author | Guenter Bartsch <guenter@users.sourceforge.net> | 2001-10-18 18:50:53 +0000 |
---|---|---|
committer | Guenter Bartsch <guenter@users.sourceforge.net> | 2001-10-18 18:50:53 +0000 |
commit | c633dfb135e832a8a17c90e6a09b6e3ab49875a6 (patch) | |
tree | 340a02c99fef6e7a10077962c6b3a2b75c1dde1a /src/xine-engine/lrb.h | |
parent | 21cfbbe47111fb18000732363de1a30beb5850c6 (diff) | |
download | xine-lib-c633dfb135e832a8a17c90e6a09b6e3ab49875a6.tar.gz xine-lib-c633dfb135e832a8a17c90e6a09b6e3ab49875a6.tar.bz2 |
audio decoder cleanup, tell the audio part of metronom that there are still images so it can increment it's internal pts counters
CVS patchset: 833
CVS date: 2001/10/18 18:50:53
Diffstat (limited to 'src/xine-engine/lrb.h')
-rw-r--r-- | src/xine-engine/lrb.h | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/xine-engine/lrb.h b/src/xine-engine/lrb.h new file mode 100644 index 000000000..debe77a84 --- /dev/null +++ b/src/xine-engine/lrb.h @@ -0,0 +1,54 @@ +/* + * Copyright (C) 2001 the xine project + * + * This file is part of xine, a unix video player. + * + * xine is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * xine is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * + * $Id: lrb.h,v 1.1 2001/10/18 18:50:53 guenter Exp $ + * + * lrb : limited ring buffer + * used for temporal buffer, limited to n elements + * + */ + +#ifndef HAVE_LRB_H +#define HAVE_LRB_H + +#include "buffer.h" + +typedef struct { + + int max_num_entries; + int cur_num_entries; + + buf_element_t *newest, *oldest; + fifo_buffer_t *fifo; + +} lrb_t; + + +lrb_t *lrb_new (int max_num_entries, + fifo_buffer_t *fifo) ; + +void lrb_drop (lrb_t *this) ; + +void lrb_add (lrb_t *this, buf_element_t *buf) ; + +void lrb_feedback (lrb_t *this, fifo_buffer_t *fifo) ; + +void lrb_flush (lrb_t *this) ; + +#endif |