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

PLPCXDecoder Class Reference

PCX file decoder. More...

#include <plpcxdec.h>

Inheritance diagram for PLPCXDecoder:

Inheritance graph
[legend]
Collaboration diagram for PLPCXDecoder:

Collaboration graph
[legend]
List of all members.

Public Member Functions

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

Protected Member Functions

virtual void DoDecode (PLBmp *pBmp, PLDataSource *pDataSrc)
 Main decoder routine.

Private Member Functions

void PCX_PlanesToPixels (PLBYTE *pixels, PLBYTE *bitplanes, short bytesperline, short planes, short bitsperpixel)
void PCX_UnpackPixels (PLBYTE *pixels, PLBYTE *bitplanes, short bytesperline, short planes, short bitsperpixel)

Detailed Description

PCX file decoder.

Decodes 8, 15, 16, 24 and 32 bpp PCX files (compressed and uncompressed) and returns an 8 or 32 bpp CBitmap. Preserves the alpha channel.

Definition at line 22 of file plpcxdec.h.


Constructor & Destructor Documentation

PLPCXDecoder::PLPCXDecoder  ) 
 

Creates a decoder.

Definition at line 20 of file plpcxdec.cpp.

PLPCXDecoder::~PLPCXDecoder  )  [virtual]
 

Destroys a decoder.

Definition at line 26 of file plpcxdec.cpp.


Member Function Documentation

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

Main decoder routine.

Reads the header, Creates the bitmap, reads the palette, and reads the image data.

Reimplemented from PLPicDecoder.

Definition at line 30 of file plpcxdec.cpp.

References tagPCXHEADER::BitsPerPixel, tagPCXHEADER::BytesPerLine, tagPCXHEADER::ColorMap, tagPCXHEADER::ColorPlanes, PLBmp::Create(), tagPCXHEADER::Encoding, PLBmp::GetLineArray32(), tagPCXHEADER::Hres, PLBmp::Lock(), LPPCXHEADER, tagPCXHEADER::Manufacturer, PCX_PlanesToPixels(), PCX_UnpackPixels(), PL_ERRFORMAT_UNKNOWN, PL_ERRINTERNAL, PL_ERRWRONG_SIGNATURE, PLBYTE, PLPicDecoder::raiseError(), PLPicDecoder::ReadByte(), PLDataSource::ReadNBytes(), PLPixel32::Set(), PLBmp::SetResolution(), PLPicDecoder::Trace(), PLBmp::Unlock(), tagPCXHEADER::Vres, tagPCXHEADER::Xmax, tagPCXHEADER::Xmin, tagPCXHEADER::Ymax, and tagPCXHEADER::Ymin.

Here is the call graph for this function:

void PLPCXDecoder::PCX_PlanesToPixels PLBYTE pixels,
PLBYTE bitplanes,
short  bytesperline,
short  planes,
short  bitsperpixel
[private]
 

Definition at line 219 of file plpcxdec.cpp.

References PL_ERRINTERNAL, PLBYTE, and PLPicDecoder::raiseError().

Referenced by DoDecode().

Here is the call graph for this function:

void PLPCXDecoder::PCX_UnpackPixels PLBYTE pixels,
PLBYTE bitplanes,
short  bytesperline,
short  planes,
short  bitsperpixel
[private]
 

Definition at line 261 of file plpcxdec.cpp.

References PL_ERRINTERNAL, PLBYTE, and PLPicDecoder::raiseError().

Referenced by DoDecode().

Here is the call graph for this function:


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