src/xmms/ringbuf.c File Reference

#include "xmmspriv/xmms_ringbuf.h"
#include <string.h>

Go to the source code of this file.

Typedefs

typedef struct
xmms_ringbuf_hotspot_St 
xmms_ringbuf_hotspot_t

Functions

guint xmms_ringbuf_size (xmms_ringbuf_t *ringbuf)
 The usable size of the ringbuffer.
xmms_ringbuf_txmms_ringbuf_new (guint size)
 Allocate a new ringbuffer.
void xmms_ringbuf_destroy (xmms_ringbuf_t *ringbuf)
 Free all memory used by the ringbuffer.
void xmms_ringbuf_clear (xmms_ringbuf_t *ringbuf)
 Clear the ringbuffers data.
guint xmms_ringbuf_bytes_free (const xmms_ringbuf_t *ringbuf)
 Number of bytes free in the ringbuffer.
guint xmms_ringbuf_bytes_used (const xmms_ringbuf_t *ringbuf)
 Number of bytes used in the buffer.
guint xmms_ringbuf_read (xmms_ringbuf_t *ringbuf, gpointer data, guint len)
 Reads data from the ringbuffer.
guint xmms_ringbuf_peek (xmms_ringbuf_t *ringbuf, gpointer data, guint len)
 Same as xmms_ringbuf_read but does not advance in the buffer after the data has been read.
guint xmms_ringbuf_read_wait (xmms_ringbuf_t *ringbuf, gpointer data, guint len, GMutex *mtx)
 Same as xmms_ringbuf_read but blocks until you have all the data you want.
guint xmms_ringbuf_peek_wait (xmms_ringbuf_t *ringbuf, gpointer data, guint len, GMutex *mtx)
 Same as xmms_ringbuf_peek but blocks until you have all the data you want.
guint xmms_ringbuf_write (xmms_ringbuf_t *ringbuf, gconstpointer data, guint len)
 Write data to the ringbuffer.
guint xmms_ringbuf_write_wait (xmms_ringbuf_t *ringbuf, gconstpointer data, guint len, GMutex *mtx)
 Same as xmms_ringbuf_write but blocks until there is enough free space.
void xmms_ringbuf_wait_free (const xmms_ringbuf_t *ringbuf, guint len, GMutex *mtx)
 Block until we have free space in the ringbuffer.
void xmms_ringbuf_wait_used (const xmms_ringbuf_t *ringbuf, guint len, GMutex *mtx)
 Block until we have used space in the buffer.
gboolean xmms_ringbuf_iseos (const xmms_ringbuf_t *ringbuf)
 Tell if the ringbuffer is EOS.
void xmms_ringbuf_set_eos (xmms_ringbuf_t *ringbuf, gboolean eos)
 Set EOS flag on ringbuffer.
void xmms_ringbuf_wait_eos (const xmms_ringbuf_t *ringbuf, GMutex *mtx)
 Block until we are EOSed.
void xmms_ringbuf_hotspot_set (xmms_ringbuf_t *ringbuf, gboolean(*cb)(void *), void(*destroy)(void *), void *arg)

Function Documentation

void xmms_ringbuf_hotspot_set ( xmms_ringbuf_t ringbuf,
gboolean(*)(void *)  cb,
void(*)(void *)  destroy,
void *  arg 
)

Definition at line 462 of file ringbuf.c.


Generated on Tue Feb 23 18:14:36 2010 for XMMS2 by  doxygen 1.6.1