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 116 of file ringbuffer.h.


Constructor & Destructor Documentation

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

Definition at line 358 of file ringbuffer.c.

References currentFill, and head.

cRingBufferFrame::~cRingBufferFrame (  )  [virtual]

Definition at line 365 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 409 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 122 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 123 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 436 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 370 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 381 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 401 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 415 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

cMutex cRingBufferFrame::mutex [private]

Definition at line 118 of file ringbuffer.h.

Referenced by Lock(), and Unlock().

cFrame* cRingBufferFrame::head [private]

Definition at line 119 of file ringbuffer.h.

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

int cRingBufferFrame::currentFill [private]

Definition at line 120 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 Nov 6 20:25:34 2007 for VDR by  doxygen 1.5.3-20071008