|
vdr 2.6.1
|
#include <ringbuffer.h>
Public Member Functions | |
| cRingBufferFrame (int Size, bool Statistics=false) | |
| virtual | ~cRingBufferFrame () |
| virtual int | Available (void) |
| virtual void | Clear (void) |
| bool | Put (cFrame *Frame) |
| cFrame * | Get (void) |
| void | Drop (cFrame *Frame) |
Public Member Functions inherited from cRingBuffer | |
| cRingBuffer (int Size, bool Statistics=false) | |
| virtual | ~cRingBuffer () |
| void | SetTimeouts (int PutTimeout, int GetTimeout) |
| void | SetIoThrottle (void) |
| void | ReportOverflow (int Bytes) |
Private Member Functions | |
| void | Delete (cFrame *Frame) |
| void | Lock (void) |
| void | Unlock (void) |
Private Attributes | |
| cMutex | mutex |
| cFrame * | head |
| int | currentFill |
Additional Inherited Members | |
Protected Member Functions inherited from cRingBuffer | |
| void | UpdatePercentage (int Fill) |
| void | WaitForPut (void) |
| void | WaitForGet (void) |
| void | EnablePut (void) |
| void | EnableGet (void) |
| virtual void | Clear (void)=0 |
| virtual int | Available (void)=0 |
| virtual int | Free (void) |
| int | Size (void) |
Protected Attributes inherited from cRingBuffer | |
| tThreadId | getThreadTid |
| int | maxFill |
| int | lastPercent |
| bool | statistics |
Definition at line 133 of file ringbuffer.h.
| cRingBufferFrame::cRingBufferFrame | ( | int | Size, |
| bool | Statistics = false |
||
| ) |
Definition at line 420 of file ringbuffer.c.
References currentFill, and head.
|
virtual |
Definition at line 427 of file ringbuffer.c.
References Clear().
|
virtual |
Implements cRingBuffer.
Definition at line 498 of file ringbuffer.c.
References currentFill, Lock(), and Unlock().
|
virtual |
Implements cRingBuffer.
Definition at line 432 of file ringbuffer.c.
References Drop(), cRingBuffer::EnableGet(), cRingBuffer::EnablePut(), Get(), Lock(), and Unlock().
Referenced by cDvbPlayer::Empty(), and ~cRingBufferFrame().
|
private |
Definition at line 471 of file ringbuffer.c.
References cFrame::Count(), and currentFill.
Referenced by Drop().
| void cRingBufferFrame::Drop | ( | cFrame * | Frame | ) |
Definition at line 477 of file ringbuffer.c.
References Delete(), cRingBuffer::EnablePut(), esyslog, head, Lock(), cFrame::next, and Unlock().
Referenced by cDvbPlayer::Action(), and Clear().
| cFrame * cRingBufferFrame::Get | ( | void | ) |
Definition at line 463 of file ringbuffer.c.
References head, Lock(), cFrame::next, and Unlock().
Referenced by cDvbPlayer::Action(), and Clear().
|
inlineprivate |
Definition at line 139 of file ringbuffer.h.
References cMutex::Lock(), and mutex.
Referenced by Available(), Clear(), Drop(), Get(), and Put().
| bool cRingBufferFrame::Put | ( | cFrame * | Frame | ) |
Definition at line 443 of file ringbuffer.c.
References cFrame::Count(), currentFill, cRingBuffer::EnableGet(), cRingBuffer::Free(), head, Lock(), cFrame::next, and Unlock().
Referenced by cDvbPlayer::Action().
|
inlineprivate |
Definition at line 140 of file ringbuffer.h.
References mutex, and cMutex::Unlock().
Referenced by Available(), Clear(), Drop(), Get(), and Put().
|
private |
Definition at line 137 of file ringbuffer.h.
Referenced by Available(), cRingBufferFrame(), Delete(), and Put().
|
private |
Definition at line 136 of file ringbuffer.h.
Referenced by cRingBufferFrame(), Drop(), Get(), and Put().
|
private |
Definition at line 135 of file ringbuffer.h.