ardour
Classes | Public Member Functions | Protected Attributes | List of all members
RingBuffer< T > Class Template Reference

#include <ringbuffer.h>

Classes

struct  rw_vector
 

Public Member Functions

 RingBuffer (guint sz)
 
virtual ~RingBuffer ()
 
void reset ()
 
void set (guint r, guint w)
 
guint read (T *dest, guint cnt)
 
guint write (T const *src, guint cnt)
 
void get_read_vector (rw_vector *)
 
void get_write_vector (rw_vector *)
 
void decrement_read_idx (guint cnt)
 
void increment_read_idx (guint cnt)
 
void increment_write_idx (guint cnt)
 
guint write_space () const
 
guint read_space () const
 
T * buffer ()
 
guint get_write_idx () const
 
guint get_read_idx () const
 
guint bufsize () const
 

Protected Attributes

T * buf
 
guint size
 
gint write_idx
 
gint read_idx
 
guint size_mask
 

Detailed Description

template<class T>
class RingBuffer< T >

Definition at line 29 of file ringbuffer.h.

Constructor & Destructor Documentation

template<class T>
RingBuffer< T >::RingBuffer ( guint  sz)
inline

Definition at line 32 of file ringbuffer.h.

template<class T>
virtual RingBuffer< T >::~RingBuffer ( )
inlinevirtual

Definition at line 43 of file ringbuffer.h.

Member Function Documentation

template<class T>
T* RingBuffer< T >::buffer ( )
inline

Definition at line 110 of file ringbuffer.h.

template<class T>
guint RingBuffer< T >::bufsize ( ) const
inline

Definition at line 113 of file ringbuffer.h.

template<class T>
void RingBuffer< T >::decrement_read_idx ( guint  cnt)
inline

Definition at line 70 of file ringbuffer.h.

template<class T>
guint RingBuffer< T >::get_read_idx ( ) const
inline

Definition at line 112 of file ringbuffer.h.

template<class T>
void RingBuffer< T >::get_read_vector ( rw_vector )

Definition at line 203 of file ringbuffer.h.

template<class T>
guint RingBuffer< T >::get_write_idx ( ) const
inline

Definition at line 111 of file ringbuffer.h.

template<class T>
void RingBuffer< T >::get_write_vector ( rw_vector )

Definition at line 244 of file ringbuffer.h.

template<class T>
void RingBuffer< T >::increment_read_idx ( guint  cnt)
inline

Definition at line 74 of file ringbuffer.h.

template<class T>
void RingBuffer< T >::increment_write_idx ( guint  cnt)
inline

Definition at line 78 of file ringbuffer.h.

template<class T>
guint RingBuffer< T >::read ( T *  dest,
guint  cnt 
)

Definition at line 124 of file ringbuffer.h.

template<class T>
guint RingBuffer< T >::read_space ( ) const
inline

Definition at line 97 of file ringbuffer.h.

template<class T>
void RingBuffer< T >::reset ( )
inline

Definition at line 47 of file ringbuffer.h.

template<class T>
void RingBuffer< T >::set ( guint  r,
guint  w 
)
inline

Definition at line 53 of file ringbuffer.h.

template<class T>
guint RingBuffer< T >::write ( T const *  src,
guint  cnt 
)

Definition at line 163 of file ringbuffer.h.

template<class T>
guint RingBuffer< T >::write_space ( ) const
inline

Definition at line 82 of file ringbuffer.h.

Member Data Documentation

template<class T>
T* RingBuffer< T >::buf
protected

Definition at line 116 of file ringbuffer.h.

template<class T>
gint RingBuffer< T >::read_idx
mutableprotected

Definition at line 119 of file ringbuffer.h.

template<class T>
guint RingBuffer< T >::size
protected

Definition at line 117 of file ringbuffer.h.

template<class T>
guint RingBuffer< T >::size_mask
protected

Definition at line 120 of file ringbuffer.h.

template<class T>
gint RingBuffer< T >::write_idx
mutableprotected

Definition at line 118 of file ringbuffer.h.


The documentation for this class was generated from the following file: