vdr  1.7.27
Public Member Functions | Private Types | Private Member Functions | Private Attributes
cDvbSpuDecoder Class Reference

#include <dvbspu.h>

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)
 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,
  spNONE, spHIDE, spSHOW, spMENU
}
enum  spFlag {
  spNONE, spHIDE, spSHOW, spMENU,
  spNONE, spHIDE, spSHOW, spMENU
}

Private Member Functions

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

Private Attributes

cOsdosd
cMutex mutex
uint8_t * spu
uint32_t spupts
bool clean
bool ready
bool restricted_osd
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 94 of file dvbspu.h.


Member Enumeration Documentation

enum cDvbSpuDecoder::spFlag [private]
Enumerator:
spNONE 
spHIDE 
spSHOW 
spMENU 
spNONE 
spHIDE 
spSHOW 
spMENU 

Definition at line 106 of file dvbspu.h.

enum cDvbSpuDecoder::spFlag [private]
Enumerator:
spNONE 
spHIDE 
spSHOW 
spMENU 
spNONE 
spHIDE 
spSHOW 
spMENU 

Definition at line 106 of file include/vdr/dvbspu.h.


Constructor & Destructor Documentation

Definition at line 229 of file dvbspu.c.

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

Definition at line 239 of file dvbspu.c.

References osd, spu, and spubmp.


Member Function Documentation

int cDvbSpuDecoder::CalcAreaBpp ( cBitmap fgbmp,
cBitmap bgbmp 
) [private]

Definition at line 353 of file dvbspu.c.

References cDvbSpuBitmap::getMinBpp(), hlpDescr, palDescr, and spubmp.

Referenced by Draw().

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

Definition at line 312 of file dvbspu.c.

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

Referenced by Draw().

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

Implements cSpuDecoder.

Definition at line 302 of file dvbspu.c.

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

Referenced by Empty().

void cDvbSpuDecoder::clearHighlight ( void  ) [virtual]

Implements cSpuDecoder.

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

Definition at line 129 of file include/vdr/dvbspu.h.

References spu.

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

Definition at line 129 of file dvbspu.h.

References spu.

Referenced by processSPU(), and setTime().

void cDvbSpuDecoder::Draw ( void  ) [virtual]
void cDvbSpuDecoder::Draw ( void  ) [virtual]

Implements cSpuDecoder.

void cDvbSpuDecoder::Empty ( void  ) [virtual]

Implements cSpuDecoder.

Definition at line 480 of file dvbspu.c.

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

Referenced by setTime().

void cDvbSpuDecoder::Empty ( void  ) [virtual]

Implements cSpuDecoder.

Implements cSpuDecoder.

Definition at line 145 of file include/vdr/dvbspu.h.

References scaleMode.

Implements cSpuDecoder.

Definition at line 145 of file dvbspu.h.

References scaleMode.

void cDvbSpuDecoder::Hide ( void  ) [virtual]

Implements cSpuDecoder.

void cDvbSpuDecoder::Hide ( void  ) [virtual]

Implements cSpuDecoder.

Definition at line 473 of file dvbspu.c.

References mutex, and osd.

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

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

Implements cSpuDecoder.

Definition at line 154 of file include/vdr/dvbspu.h.

References osd.

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

Implements cSpuDecoder.

Definition at line 154 of file dvbspu.h.

References osd.

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

Implements cSpuDecoder.

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

Implements cSpuDecoder.

Definition at line 246 of file dvbspu.c.

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

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

Implements cSpuDecoder.

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

Implements cSpuDecoder.

Definition at line 270 of file dvbspu.c.

References palette, and cDvbSpuPalette::setPalette().

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

Implements cSpuDecoder.

Implements cSpuDecoder.

Definition at line 265 of file dvbspu.c.

References scaleMode.

Implements cSpuDecoder.

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

Implements cSpuDecoder.

int cDvbSpuDecoder::setTime ( uint32_t  pts) [virtual]
int cDvbSpuDecoder::spuSize ( void  ) [inline, private]

Definition at line 132 of file include/vdr/dvbspu.h.

References spu.

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

Definition at line 132 of file dvbspu.h.

References spu.


Member Data Documentation

Definition at line 127 of file dvbspu.h.

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

bool cDvbSpuDecoder::clean [private]

Definition at line 102 of file dvbspu.h.

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

uint16_t cDvbSpuDecoder::DCSQ_offset [private]

Definition at line 123 of file dvbspu.h.

Referenced by processSPU(), and setTime().

bool cDvbSpuDecoder::highlight [private]

Definition at line 112 of file dvbspu.h.

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

Definition at line 114 of file dvbspu.h.

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

Definition at line 113 of file dvbspu.h.

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

Definition at line 97 of file dvbspu.h.

Referenced by Draw(), and Hide().

Definition at line 96 of file dvbspu.h.

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

Definition at line 121 of file dvbspu.h.

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

Definition at line 117 of file dvbspu.h.

Referenced by Draw(), and setPalette().

Definition at line 124 of file dvbspu.h.

Referenced by processSPU(), and setTime().

bool cDvbSpuDecoder::ready [private]

Definition at line 103 of file dvbspu.h.

Definition at line 104 of file dvbspu.h.

Referenced by Draw().

Definition at line 109 of file dvbspu.h.

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

Definition at line 120 of file dvbspu.h.

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

uint8_t * cDvbSpuDecoder::spu [private]

Definition at line 100 of file dvbspu.h.

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

Definition at line 126 of file dvbspu.h.

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

uint32_t cDvbSpuDecoder::spupts [private]

Definition at line 101 of file dvbspu.h.

Referenced by processSPU(), and setTime().

Definition at line 107 of file dvbspu.h.

Referenced by setTime().


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