vdr  2.2.0
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
cDvbSpuDecoder Class Reference

#include <dvbspu.h>

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)
 
- Public Member Functions inherited from cSpuDecoder
virtual ~cSpuDecoder ()
 

Private Types

enum  spFlag { spNONE, spHIDE, spSHOW, spMENU }
 

Private Member Functions

int cmdOffs (void)
 
int spuSize (void)
 
void SetSpuScaling (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 restricted_osd
 
spFlag state
 
cSpuDecoder::eScaleMode scaleMode
 
double xscaling
 
double yscaling
 
bool highlight
 
sDvbSpuRect hlpsize
 
aDvbSpuPalDescr hlpDescr
 
cDvbSpuPalette palette
 
sDvbSpuRect size
 
aDvbSpuPalDescr palDescr
 
uint16_t DCSQ_offset
 
uint16_t prev_DCSQ_offset
 
cDvbSpuBitmapspubmp
 
bool allowedShow
 

Additional Inherited Members

- Public Types inherited from cSpuDecoder
enum  eScaleMode { eSpuNormal, eSpuLetterBox, eSpuPanAndScan }
 

Detailed Description

Definition at line 95 of file dvbspu.h.

Member Enumeration Documentation

enum cDvbSpuDecoder::spFlag
private
Enumerator
spNONE 
spHIDE 
spSHOW 
spMENU 

Definition at line 106 of file dvbspu.h.

Constructor & Destructor Documentation

cDvbSpuDecoder::cDvbSpuDecoder ( )

Definition at line 230 of file dvbspu.c.

cDvbSpuDecoder::~cDvbSpuDecoder ( )

Definition at line 240 of file dvbspu.c.

Member Function Documentation

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

Definition at line 385 of file dvbspu.c.

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

Definition at line 344 of file dvbspu.c.

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

void cDvbSpuDecoder::clearHighlight ( void  )
virtual

Implements cSpuDecoder.

Definition at line 334 of file dvbspu.c.

int cDvbSpuDecoder::cmdOffs ( void  )
inlineprivate

Definition at line 130 of file dvbspu.h.

void cDvbSpuDecoder::Draw ( void  )
virtual
void cDvbSpuDecoder::Empty ( void  )
virtual

Implements cSpuDecoder.

Definition at line 533 of file dvbspu.c.

cSpuDecoder::eScaleMode cDvbSpuDecoder::getScaleMode ( void  )
inlinevirtual

Implements cSpuDecoder.

Definition at line 147 of file dvbspu.h.

void cDvbSpuDecoder::Hide ( void  )
virtual

Implements cSpuDecoder.

Definition at line 526 of file dvbspu.c.

bool cDvbSpuDecoder::IsVisible ( void  )
inlinevirtual

Implements cSpuDecoder.

Definition at line 156 of file dvbspu.h.

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

Implements cSpuDecoder.

Definition at line 277 of file dvbspu.c.

References DEBUG.

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

Implements cSpuDecoder.

Definition at line 306 of file dvbspu.c.

References DEBUG, and sDvbSpuPalDescr::index.

void cDvbSpuDecoder::setPalette ( uint32_t *  pal)
virtual

Implements cSpuDecoder.

Definition at line 301 of file dvbspu.c.

References cDvbSpuPalette::palette.

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

Implements cSpuDecoder.

Definition at line 296 of file dvbspu.c.

void cDvbSpuDecoder::SetSpuScaling ( void  )
private
int cDvbSpuDecoder::setTime ( uint32_t  pts)
virtual
int cDvbSpuDecoder::spuSize ( void  )
inlineprivate

Definition at line 133 of file dvbspu.h.

Member Data Documentation

bool cDvbSpuDecoder::allowedShow
private

Definition at line 128 of file dvbspu.h.

bool cDvbSpuDecoder::clean
private

Definition at line 103 of file dvbspu.h.

uint16_t cDvbSpuDecoder::DCSQ_offset
private

Definition at line 124 of file dvbspu.h.

bool cDvbSpuDecoder::highlight
private

Definition at line 113 of file dvbspu.h.

aDvbSpuPalDescr cDvbSpuDecoder::hlpDescr
private

Definition at line 115 of file dvbspu.h.

sDvbSpuRect cDvbSpuDecoder::hlpsize
private

Definition at line 114 of file dvbspu.h.

cMutex cDvbSpuDecoder::mutex
private

Definition at line 98 of file dvbspu.h.

cOsd* cDvbSpuDecoder::osd
private

Definition at line 97 of file dvbspu.h.

aDvbSpuPalDescr cDvbSpuDecoder::palDescr
private

Definition at line 122 of file dvbspu.h.

cDvbSpuPalette cDvbSpuDecoder::palette
private

Definition at line 118 of file dvbspu.h.

uint16_t cDvbSpuDecoder::prev_DCSQ_offset
private

Definition at line 125 of file dvbspu.h.

bool cDvbSpuDecoder::restricted_osd
private

Definition at line 104 of file dvbspu.h.

cSpuDecoder::eScaleMode cDvbSpuDecoder::scaleMode
private

Definition at line 109 of file dvbspu.h.

sDvbSpuRect cDvbSpuDecoder::size
private

Definition at line 121 of file dvbspu.h.

uint8_t* cDvbSpuDecoder::spu
private

Definition at line 101 of file dvbspu.h.

cDvbSpuBitmap* cDvbSpuDecoder::spubmp
private

Definition at line 127 of file dvbspu.h.

uint32_t cDvbSpuDecoder::spupts
private

Definition at line 102 of file dvbspu.h.

spFlag cDvbSpuDecoder::state
private

Definition at line 107 of file dvbspu.h.

double cDvbSpuDecoder::xscaling
private

Definition at line 110 of file dvbspu.h.

double cDvbSpuDecoder::yscaling
private

Definition at line 110 of file dvbspu.h.


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