vdr  1.7.31
Public Member Functions | Private Member Functions | Private Attributes | List of all members
cTSBuffer Class Reference

#include <device.h>

Public Member Functions

 cTSBuffer (int File, int Size, int CardIndex)
 ~cTSBuffer ()
ucharGet (void)
 cTSBuffer (int File, int Size, int CardIndex)
 ~cTSBuffer ()
ucharGet (void)
- Public Member Functions inherited from cThread
 cThread (const char *Description=NULL)
virtual ~cThread ()
void SetDescription (const char *Description,...) __attribute__((format(printf
void bool Start (void)
bool Active (void)
 cThread (const char *Description=NULL)
virtual ~cThread ()
void SetDescription (const char *Description,...) __attribute__((format(printf
void bool Start (void)
bool Active (void)

Private Member Functions

virtual void Action (void)
virtual void Action (void)

Private Attributes

int f
int cardIndex
bool delivered
cRingBufferLinearringBuffer

Additional Inherited Members

- Static Public Member Functions inherited from cThread
static tThreadId ThreadId (void)
static tThreadId IsMainThread (void)
static void SetMainThreadId (void)
static tThreadId ThreadId (void)
static tThreadId IsMainThread (void)
static void SetMainThreadId (void)
- Protected Member Functions inherited from cThread
void SetPriority (int Priority)
void SetIOPriority (int Priority)
void Lock (void)
void Unlock (void)
virtual void Action (void)=0
bool Running (void)
void Cancel (int WaitSeconds=0)
void SetPriority (int Priority)
void SetIOPriority (int Priority)
void Lock (void)
void Unlock (void)
virtual void Action (void)=0
bool Running (void)
void Cancel (int WaitSeconds=0)

Detailed Description

Derived cDevice classes that can receive channels will have to provide Transport Stream (TS) packets one at a time.

cTSBuffer implements a simple buffer that allows the device to read a larger amount of data from the driver with each call to Read(), thus avoiding the overhead of getting each TS packet separately from the driver. It also makes sure the returned data points to a TS packet and automatically re-synchronizes after broken packets.

Definition at line 782 of file device.h.

Constructor & Destructor Documentation

cTSBuffer::cTSBuffer ( int  File,
int  Size,
int  CardIndex 
)
cTSBuffer::~cTSBuffer ( )

Definition at line 1748 of file device.c.

References cThread::Cancel(), and ringBuffer.

cTSBuffer::cTSBuffer ( int  File,
int  Size,
int  CardIndex 
)
cTSBuffer::~cTSBuffer ( )

Member Function Documentation

void cTSBuffer::Action ( void  )
privatevirtual
virtual void cTSBuffer::Action ( void  )
privatevirtual
uchar* cTSBuffer::Get ( void  )
uchar * cTSBuffer::Get ( void  )

Member Data Documentation

int cTSBuffer::cardIndex
private

Definition at line 785 of file device.h.

Referenced by Action(), cTSBuffer(), and Get().

bool cTSBuffer::delivered
private

Definition at line 786 of file device.h.

Referenced by cTSBuffer(), and Get().

int cTSBuffer::f
private

Definition at line 784 of file device.h.

Referenced by Action(), and cTSBuffer().

cRingBufferLinear * cTSBuffer::ringBuffer
private

Definition at line 787 of file device.h.

Referenced by Action(), cTSBuffer(), Get(), and ~cTSBuffer().


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