cRingBufferFrame Class Reference

#include <ringbuffer.h>

Inheritance diagram for cRingBufferFrame:

Inheritance graph
[legend]
Collaboration diagram for cRingBufferFrame:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 cRingBufferFrame (int Size, bool Statistics=false)
virtual ~cRingBufferFrame ()
virtual int Available (void)
virtual void Clear (void)
bool Put (cFrame *Frame)
cFrameGet (void)
void Drop (cFrame *Frame)

Private Member Functions

void Delete (cFrame *Frame)
void Lock (void)
void Unlock (void)

Private Attributes

cMutex mutex
cFramehead
int currentFill


Detailed Description

Definition at line 123 of file ringbuffer.h.


Constructor & Destructor Documentation

cRingBufferFrame::cRingBufferFrame ( int  Size,
bool  Statistics = false 
)

Definition at line 362 of file ringbuffer.c.

References currentFill, and head.

cRingBufferFrame::~cRingBufferFrame (  )  [virtual]

Definition at line 369 of file ringbuffer.c.

References Clear().

Here is the call graph for this function:


Member Function Documentation

void cRingBufferFrame::Delete ( cFrame Frame  )  [private]

Definition at line 413 of file ringbuffer.c.

References cFrame::Count(), and currentFill.

Referenced by Drop().

Here is the call graph for this function:

void cRingBufferFrame::Lock ( void   )  [inline, private]

Definition at line 129 of file ringbuffer.h.

References cMutex::Lock(), and mutex.

Referenced by Available(), Clear(), Drop(), Get(), and Put().

Here is the call graph for this function:

void cRingBufferFrame::Unlock ( void   )  [inline, private]

Definition at line 130 of file ringbuffer.h.

References mutex, and cMutex::Unlock().

Referenced by Available(), Clear(), Drop(), Get(), and Put().

Here is the call graph for this function:

int cRingBufferFrame::Available ( void   )  [virtual]

Implements cRingBuffer.

Definition at line 440 of file ringbuffer.c.

References currentFill, Lock(), and Unlock().

Referenced by cDvbPlayer::Action().

Here is the call graph for this function:

void cRingBufferFrame::Clear ( void   )  [virtual]

Implements cRingBuffer.

Definition at line 374 of file ringbuffer.c.

References Drop(), cRingBuffer::EnableGet(), cRingBuffer::EnablePut(), Get(), Lock(), and Unlock().

Referenced by cDvbPlayer::Empty(), and ~cRingBufferFrame().

Here is the call graph for this function:

bool cRingBufferFrame::Put ( cFrame Frame  ) 

Definition at line 385 of file ringbuffer.c.

References cFrame::Count(), currentFill, cRingBuffer::EnableGet(), cRingBuffer::Free(), head, Lock(), cFrame::next, and Unlock().

Referenced by cDvbPlayer::Action().

Here is the call graph for this function:

cFrame * cRingBufferFrame::Get ( void   ) 

Definition at line 405 of file ringbuffer.c.

References head, Lock(), cFrame::next, and Unlock().

Referenced by cDvbPlayer::Action(), and Clear().

Here is the call graph for this function:

void cRingBufferFrame::Drop ( cFrame Frame  ) 

Definition at line 419 of file ringbuffer.c.

References Delete(), cRingBuffer::EnablePut(), esyslog, head, Lock(), cFrame::next, and Unlock().

Referenced by cDvbPlayer::Action(), and Clear().

Here is the call graph for this function:


Member Data Documentation

Definition at line 125 of file ringbuffer.h.

Referenced by Lock(), and Unlock().

Definition at line 126 of file ringbuffer.h.

Referenced by cRingBufferFrame(), Drop(), Get(), and Put().

Definition at line 127 of file ringbuffer.h.

Referenced by Available(), cRingBufferFrame(), Delete(), and Put().


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

Generated on Tue Jan 13 14:31:47 2009 for VDR by  doxygen 1.5.6