Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

PLBmpDecoder Class Reference

Windows bitmap file decoder. More...

#include <plbmpdec.h>

Inheritance diagram for PLBmpDecoder:

Inheritance graph
[legend]
Collaboration diagram for PLBmpDecoder:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 PLBmpDecoder ()
 Creates a decoder.
virtual ~PLBmpDecoder ()
 Destroys a decoder.

Protected Member Functions

virtual void DoDecode (PLBmp *pBmp, PLDataSource *pDataSrc)
 Does the actual decoding of bitmap data.

Private Member Functions

WINBITMAPINFOHEADERgetInfoHeader (PLDataSource *pDataSrc, PLPixel32 *Pal)
void decode1bpp (PLDataSource *pDataSrc, PLBmp *pBmp)
void decode4bpp (PLDataSource *pDataSrc, PLBmp *pBmp)
void decode8bpp (PLDataSource *pDataSrc, PLBmp *pBmp)
void decodeRLE4 (PLDataSource *pDataSrc, PLBmp *pBmp)
void decodeRLE8 (PLDataSource *pDataSrc, PLBmp *pBmp)
void decodeHiColor (PLDataSource *pDataSrc, PLBmp *pBmp, WINBITMAPINFOHEADER *pBMI)
void decodeTrueColor (PLDataSource *pDataSrc, PLBmp *pBmp, int SrcBPP)
void decode15bppLine (PLDataSource *pDataSrc, PLBmp *pBmp, PLBYTE *pDest)
void decode16bppLine (PLDataSource *pDataSrc, PLBmp *pBmp, PLBYTE *pDest)
void decode24bppLine (PLDataSource *pDataSrc, PLBmp *pBmp, PLBYTE *pDest)
void decode32bppLine (PLDataSource *pDataSrc, PLBmp *pBmp, PLBYTE *pDest)
void decode2Nibbles (PLBYTE *pDest, PLBYTE SrcByte)
int readPalette (WINBITMAPINFOHEADER *pBMI, PLDataSource *pDataSrc, PLPixel32 *pPal, int RGBSize)

Detailed Description

Windows bitmap file decoder.

Decodes bitmap files (compressed and uncompressed) of all bit depths. Returns an 8 or 32 bpp bitmap.

Definition at line 25 of file plbmpdec.h.


Constructor & Destructor Documentation

PLBmpDecoder::PLBmpDecoder  ) 
 

Creates a decoder.

Definition at line 21 of file plbmpdec.cpp.

PLBmpDecoder::~PLBmpDecoder  )  [virtual]
 

Destroys a decoder.

Definition at line 28 of file plbmpdec.cpp.


Member Function Documentation

void PLBmpDecoder::decode15bppLine PLDataSource pDataSrc,
PLBmp pBmp,
PLBYTE pDest
[private]
 

Definition at line 635 of file plbmpdec.cpp.

References PLBYTE, and PLWORD.

void PLBmpDecoder::decode16bppLine PLDataSource pDataSrc,
PLBmp pBmp,
PLBYTE pDest
[private]
 

Definition at line 659 of file plbmpdec.cpp.

References PLBYTE, and PLWORD.

void PLBmpDecoder::decode1bpp PLDataSource pDataSrc,
PLBmp pBmp
[private]
 

Definition at line 252 of file plbmpdec.cpp.

References PLBYTE.

void PLBmpDecoder::decode24bppLine PLDataSource pDataSrc,
PLBmp pBmp,
PLBYTE pDest
[private]
 

Definition at line 684 of file plbmpdec.cpp.

References PLBYTE, and WINRGBQUAD.

void PLBmpDecoder::decode2Nibbles PLBYTE pDest,
PLBYTE  SrcByte
[private]
 

Definition at line 719 of file plbmpdec.cpp.

References PLBYTE.

void PLBmpDecoder::decode32bppLine PLDataSource pDataSrc,
PLBmp pBmp,
PLBYTE pDest
[private]
 

Definition at line 708 of file plbmpdec.cpp.

References PLBYTE.

void PLBmpDecoder::decode4bpp PLDataSource pDataSrc,
PLBmp pBmp
[private]
 

Definition at line 322 of file plbmpdec.cpp.

References PLBYTE.

void PLBmpDecoder::decode8bpp PLDataSource pDataSrc,
PLBmp pBmp
[private]
 

Definition at line 370 of file plbmpdec.cpp.

References PLBYTE.

void PLBmpDecoder::decodeHiColor PLDataSource pDataSrc,
PLBmp pBmp,
WINBITMAPINFOHEADER pBMI
[private]
 

Definition at line 573 of file plbmpdec.cpp.

References BI_BITFIELDS, PLASSERT, PLULONG, and WINBITMAPINFOHEADER.

void PLBmpDecoder::decodeRLE4 PLDataSource pDataSrc,
PLBmp pBmp
[private]
 

Definition at line 405 of file plbmpdec.cpp.

References PL_ERRFORMAT_NOT_SUPPORTED, PLBYTE, and raiseError().

Here is the call graph for this function:

void PLBmpDecoder::decodeRLE8 PLDataSource pDataSrc,
PLBmp pBmp
[private]
 

Definition at line 507 of file plbmpdec.cpp.

References PL_ERRFORMAT_NOT_SUPPORTED, PLBYTE, and raiseError().

Here is the call graph for this function:

void PLBmpDecoder::decodeTrueColor PLDataSource pDataSrc,
PLBmp pBmp,
int  SrcBPP
[private]
 

Definition at line 597 of file plbmpdec.cpp.

References PLASSERT, and PLBYTE.

void PLBmpDecoder::DoDecode PLBmp pBmp,
PLDataSource pDataSrc
[protected, virtual]
 

Does the actual decoding of bitmap data.

Reimplemented from PLPicDecoder.

Definition at line 34 of file plbmpdec.cpp.

References tagWINBITMAPINFOHEADER::biBitCount, tagWINBITMAPINFOHEADER::biCompression, tagWINBITMAPINFOHEADER::biHeight, tagWINBITMAPINFOHEADER::biWidth, tagWINBITMAPINFOHEADER::biXPelsPerMeter, tagWINBITMAPINFOHEADER::biYPelsPerMeter, PL_ERRFORMAT_UNKNOWN, raiseError(), WINBITMAPINFOHEADER, PLPoint::x, and PLPoint::y.

Here is the call graph for this function:

WINBITMAPINFOHEADER * PLBmpDecoder::getInfoHeader PLDataSource pDataSrc,
PLPixel32 Pal
[private]
 

Definition at line 130 of file plbmpdec.cpp.

References tagWINBITMAPFILEHEADER::bfOffBits, tagWINBITMAPFILEHEADER::bfReserved1, tagWINBITMAPFILEHEADER::bfReserved2, tagWINBITMAPFILEHEADER::bfSize, tagWINBITMAPFILEHEADER::bfType, tagWINBITMAPINFOHEADER::biBitCount, tagWINBITMAPINFOHEADER::biClrImportant, tagWINBITMAPINFOHEADER::biClrUsed, tagWINBITMAPINFOHEADER::biCompression, tagWINBITMAPINFOHEADER::biHeight, tagWINBITMAPINFOHEADER::biPlanes, tagWINBITMAPINFOHEADER::biSize, tagWINBITMAPINFOHEADER::biSizeImage, tagWINBITMAPINFOHEADER::biWidth, tagWINBITMAPINFOHEADER::biXPelsPerMeter, tagWINBITMAPINFOHEADER::biYPelsPerMeter, PL_ERRWRONG_SIGNATURE, raiseError(), WINBITMAPFILEHEADER, and WINBITMAPINFOHEADER.

Here is the call graph for this function:

int PLBmpDecoder::readPalette WINBITMAPINFOHEADER pBMI,
PLDataSource pDataSrc,
PLPixel32 pPal,
int  RGBSize
[private]
 

Definition at line 729 of file plbmpdec.cpp.

References PLBYTE, tagWINRGBQUAD::rgbBlue, tagWINRGBQUAD::rgbGreen, tagWINRGBQUAD::rgbRed, WINBITMAPINFOHEADER, and WINRGBQUAD.


The documentation for this class was generated from the following files:
Generated on Wed Dec 15 21:20:59 2004 for vuVolume by  doxygen 1.3.9.1