cDvbSpuDecoder Class Reference

#include <dvbspu.h>

Inheritance diagram for cDvbSpuDecoder:

Inheritance graph
[legend]
Collaboration diagram for cDvbSpuDecoder:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 cDvbSpuDecoder ()
 ~cDvbSpuDecoder ()
int setTime (uint32_t pts)
cSpuDecoder::eScaleMode getScaleMode (void)
void setScaleMode (cSpuDecoder::eScaleMode ScaleMode)
void setPalette (uint32_t *pal)
void setHighlight (uint16_t sx, uint16_t sy, uint16_t ex, uint16_t ey, uint32_t palette)
void clearHighlight (void)
void Empty (void)
void Hide (void)
void Draw (void)
bool IsVisible (void)
void processSPU (uint32_t pts, uint8_t *buf, bool AllowedShow)

Private Types

enum  spFlag { spNONE, spHIDE, spSHOW, spMENU }

Private Member Functions

int cmdOffs (void)
int spuSize (void)
sDvbSpuRect CalcAreaSize (sDvbSpuRect fgsize, cBitmap *fgbmp, sDvbSpuRect bgsize, cBitmap *bgbmp)

Private Attributes

cOsdosd
cMutex mutex
uint8_t * spu
uint32_t spupts
bool clean
bool ready
spFlag state
cSpuDecoder::eScaleMode scaleMode
bool highlight
sDvbSpuRect hlpsize
aDvbSpuPalDescr hlpDescr
cDvbSpuPalette palette
sDvbSpuRect size
aDvbSpuPalDescr palDescr
uint16_t DCSQ_offset
uint16_t prev_DCSQ_offset
cDvbSpuBitmapspubmp
bool allowedShow


Detailed Description

Definition at line 92 of file dvbspu.h.


Member Enumeration Documentation

enum cDvbSpuDecoder::spFlag [private]

Enumerator:
spNONE 
spHIDE 
spSHOW 
spMENU 

Definition at line 103 of file dvbspu.h.


Constructor & Destructor Documentation

cDvbSpuDecoder::cDvbSpuDecoder (  ) 

Definition at line 225 of file dvbspu.c.

References allowedShow, clean, cSpuDecoder::eSpuNormal, osd, scaleMode, spu, and spubmp.

cDvbSpuDecoder::~cDvbSpuDecoder (  ) 

Definition at line 235 of file dvbspu.c.

References osd, spu, and spubmp.


Member Function Documentation

int cDvbSpuDecoder::cmdOffs ( void   )  [inline, private]

Definition at line 126 of file dvbspu.h.

References spu.

Referenced by processSPU(), and setTime().

int cDvbSpuDecoder::spuSize ( void   )  [inline, private]

Definition at line 129 of file dvbspu.h.

References spu.

sDvbSpuRect cDvbSpuDecoder::CalcAreaSize ( sDvbSpuRect  fgsize,
cBitmap fgbmp,
sDvbSpuRect  bgsize,
cBitmap bgbmp 
) [private]

Definition at line 308 of file dvbspu.c.

References max(), min(), size, sDvbSpuRect::x1, sDvbSpuRect::x2, sDvbSpuRect::y1, and sDvbSpuRect::y2.

Referenced by Draw().

Here is the call graph for this function:

int cDvbSpuDecoder::setTime ( uint32_t  pts  )  [virtual]

Implements cSpuDecoder.

Definition at line 412 of file dvbspu.c.

References allowedShow, clean, CMD_SPU_CHG_COLCON, CMD_SPU_EOF, CMD_SPU_HIDE, CMD_SPU_MENU, CMD_SPU_SET_ALPHA, CMD_SPU_SET_PALETTE, CMD_SPU_SET_PXD_OFFSET, CMD_SPU_SET_SIZE, CMD_SPU_SHOW, cmdOffs(), DCSQ_offset, DEBUG, Draw(), Empty(), esyslog, Hide(), palDescr, prev_DCSQ_offset, size, spHIDE, spMENU, spNONE, spSHOW, spu, spubmp, spupts, spuU32, state, sDvbSpuRect::x1, sDvbSpuRect::x2, sDvbSpuRect::y1, and sDvbSpuRect::y2.

Referenced by processSPU().

Here is the call graph for this function:

cSpuDecoder::eScaleMode cDvbSpuDecoder::getScaleMode ( void   )  [inline, virtual]

Implements cSpuDecoder.

Definition at line 141 of file dvbspu.h.

References scaleMode.

void cDvbSpuDecoder::setScaleMode ( cSpuDecoder::eScaleMode  ScaleMode  )  [virtual]

Implements cSpuDecoder.

Definition at line 261 of file dvbspu.c.

References scaleMode.

void cDvbSpuDecoder::setPalette ( uint32_t *  pal  )  [virtual]

Implements cSpuDecoder.

Definition at line 266 of file dvbspu.c.

References palette, and cDvbSpuPalette::setPalette().

Here is the call graph for this function:

void cDvbSpuDecoder::setHighlight ( uint16_t  sx,
uint16_t  sy,
uint16_t  ex,
uint16_t  ey,
uint32_t  palette 
) [virtual]

Implements cSpuDecoder.

Definition at line 271 of file dvbspu.c.

References clean, DEBUG, highlight, hlpDescr, hlpsize, sDvbSpuPalDescr::index, sDvbSpuRect::x1, sDvbSpuRect::x2, sDvbSpuRect::y1, and sDvbSpuRect::y2.

void cDvbSpuDecoder::clearHighlight ( void   )  [virtual]

Implements cSpuDecoder.

Definition at line 298 of file dvbspu.c.

References clean, highlight, hlpsize, sDvbSpuRect::x1, sDvbSpuRect::x2, sDvbSpuRect::y1, and sDvbSpuRect::y2.

Referenced by Empty().

void cDvbSpuDecoder::Empty ( void   )  [virtual]

Implements cSpuDecoder.

Definition at line 398 of file dvbspu.c.

References clean, clearHighlight(), Hide(), spu, and spubmp.

Referenced by setTime().

Here is the call graph for this function:

void cDvbSpuDecoder::Hide ( void   )  [virtual]

Implements cSpuDecoder.

Definition at line 391 of file dvbspu.c.

References mutex, and osd.

Referenced by Draw(), Empty(), and setTime().

void cDvbSpuDecoder::Draw ( void   )  [virtual]

Implements cSpuDecoder.

Definition at line 338 of file dvbspu.c.

References CalcAreaSize(), clean, cOsd::DrawBitmap(), dsyslog, cOsd::Flush(), cDvbSpuBitmap::getBitmap(), cDvbSpuBitmap::getMinSize(), Hide(), highlight, hlpDescr, hlpsize, mutex, cOsdProvider::NewOsd(), oeOk, osd, palDescr, palette, cOsd::SetAreas(), spubmp, sDvbSpuRect::width(), sDvbSpuRect::x1, sDvbSpuRect::x2, sDvbSpuRect::y1, and sDvbSpuRect::y2.

Referenced by setTime().

Here is the call graph for this function:

bool cDvbSpuDecoder::IsVisible ( void   )  [inline, virtual]

Implements cSpuDecoder.

Definition at line 150 of file dvbspu.h.

References osd.

void cDvbSpuDecoder::processSPU ( uint32_t  pts,
uint8_t *  buf,
bool  AllowedShow 
) [virtual]

Implements cSpuDecoder.

Definition at line 242 of file dvbspu.c.

References allowedShow, clean, cmdOffs(), DCSQ_offset, DEBUG, prev_DCSQ_offset, setTime(), spu, spubmp, and spupts.

Here is the call graph for this function:


Member Data Documentation

cOsd* cDvbSpuDecoder::osd [private]

Definition at line 94 of file dvbspu.h.

Referenced by cDvbSpuDecoder(), Draw(), Hide(), IsVisible(), and ~cDvbSpuDecoder().

cMutex cDvbSpuDecoder::mutex [private]

Definition at line 95 of file dvbspu.h.

Referenced by Draw(), and Hide().

uint8_t* cDvbSpuDecoder::spu [private]

Definition at line 98 of file dvbspu.h.

Referenced by cDvbSpuDecoder(), cmdOffs(), Empty(), processSPU(), setTime(), spuSize(), and ~cDvbSpuDecoder().

uint32_t cDvbSpuDecoder::spupts [private]

Definition at line 99 of file dvbspu.h.

Referenced by processSPU(), and setTime().

bool cDvbSpuDecoder::clean [private]

Definition at line 100 of file dvbspu.h.

Referenced by cDvbSpuDecoder(), clearHighlight(), Draw(), Empty(), processSPU(), setHighlight(), and setTime().

bool cDvbSpuDecoder::ready [private]

Definition at line 101 of file dvbspu.h.

spFlag cDvbSpuDecoder::state [private]

Definition at line 104 of file dvbspu.h.

Referenced by setTime().

cSpuDecoder::eScaleMode cDvbSpuDecoder::scaleMode [private]

Definition at line 106 of file dvbspu.h.

Referenced by cDvbSpuDecoder(), getScaleMode(), and setScaleMode().

bool cDvbSpuDecoder::highlight [private]

Definition at line 109 of file dvbspu.h.

Referenced by clearHighlight(), Draw(), and setHighlight().

sDvbSpuRect cDvbSpuDecoder::hlpsize [private]

Definition at line 110 of file dvbspu.h.

Referenced by clearHighlight(), Draw(), and setHighlight().

aDvbSpuPalDescr cDvbSpuDecoder::hlpDescr [private]

Definition at line 111 of file dvbspu.h.

Referenced by Draw(), and setHighlight().

cDvbSpuPalette cDvbSpuDecoder::palette [private]

Definition at line 114 of file dvbspu.h.

Referenced by Draw(), and setPalette().

sDvbSpuRect cDvbSpuDecoder::size [private]

Definition at line 117 of file dvbspu.h.

Referenced by CalcAreaSize(), and setTime().

aDvbSpuPalDescr cDvbSpuDecoder::palDescr [private]

Definition at line 118 of file dvbspu.h.

Referenced by Draw(), and setTime().

uint16_t cDvbSpuDecoder::DCSQ_offset [private]

Definition at line 120 of file dvbspu.h.

Referenced by processSPU(), and setTime().

uint16_t cDvbSpuDecoder::prev_DCSQ_offset [private]

Definition at line 121 of file dvbspu.h.

Referenced by processSPU(), and setTime().

cDvbSpuBitmap* cDvbSpuDecoder::spubmp [private]

Definition at line 123 of file dvbspu.h.

Referenced by cDvbSpuDecoder(), Draw(), Empty(), processSPU(), setTime(), and ~cDvbSpuDecoder().

bool cDvbSpuDecoder::allowedShow [private]

Definition at line 124 of file dvbspu.h.

Referenced by cDvbSpuDecoder(), processSPU(), and setTime().


The documentation for this class was generated from the following files:
Generated on Tue Nov 6 20:11:08 2007 for VDR by  doxygen 1.5.3-20071008