| Classes - Annotated - Tree - Functions - Home - Structure

# QImageDecoder Class Reference

Incremental image decoder for all supported image formats. More...

`#include <qasyncimageio.h>`

List of all member functions.

## Public Members

- QImageDecoder ( QImageConsumer * c )
- ~QImageDecoder ()
- const QImage& image ()
- int decode ( const uchar * buffer, int length )

## Static Public Members

- const char* formatName ( const uchar * buffer, int length )
- QImageFormatType* format ( const char * name )
- QStrList inputFormats ()
- void registerDecoderFactory ( QImageFormatType * )
- void unregisterDecoderFactory ( QImageFormatType * )

## Detailed Description

Incremental image decoder for all supported image formats.

New formats are installed by creating objects of class QImageFormatType, and the QMovie class can be used for using all installed incremental image formats; QImageDecoder is only useful for creating new ways of feeding data to an QImageConsumer.

Qt supports GIF reading, if it is configured that way during installation (see qgif.h). If it is, we are required to state that "The Graphics Interchange Format(c) is the Copyright property of CompuServe Incorporated. GIF(sm) is a Service Mark property of CompuServe Incorporated.".

## Member Function Documentation

### QImageDecoder::QImageDecoder ( QImageConsumer * c )

Constructs a QImageDecoder which will send change information to a given QImageConsumer.

### QImageDecoder::~QImageDecoder ()

Destroys a QImageDecoder. The image it built is destroyed. The decoder built by the factory for the file format is destroyed. The consumer for which it decoded the image is not destroyed.

### int QImageDecoder::decode ( const uchar * buffer, int length )

Call this function to decode some data into image changes. The data will be decoded, sending change information to the QImageConsumer of this QImageDecoder, until one of the change functions of the consumer returns FALSE.

Returns the number of bytes consumed, 0 if consumption is complete, and -1 if decoding fails due to invalid data.

### QImageFormatType* QImageDecoder::format ( const char * name ) `[static]`

Returns a QImageFormatType by name. This might be used in cases where the user needs to force data to be interpreted as being in a certain format. name is one of the formats listed by QImageDecoder::inputFormats(). Note that you will still need to supply decodable data to result->decoderFor() before you can begin decoding the data.

### const char* QImageDecoder::formatName ( const uchar * buffer, int length ) `[static]`

Call this function to find the name of the format of the given header. The returned string is statically allocated.

Returns 0 if the format is not recognized.

### const QImage& QImageDecoder::image ()

Returns the image currently being decoded.

### QStrList QImageDecoder::inputFormats () `[static]`

Returns a sorted list of formats for which asynchronous loading is supported.

### void QImageDecoder::registerDecoderFactory ( QImageFormatType * f ) `[static]`

Registers a new QImageFormatType. This is not needed in application code as factories call this themselves.

### void QImageDecoder::unregisterDecoderFactory ( QImageFormatType * f ) `[static]`

Unregisters a new QImageFormatType. This is not needed in application code as factories call this themselves.

Search the documentation, FAQ, qt-interest archive and more (uses www.trolltech.com):

This file is part of the Qt toolkit, copyright © 1995-2001 Trolltech, all rights reserved.