TFrameInfo Class Reference

#include <icl/imagedata.h>

Link against: imageconversion.lib

class TFrameInfo

Detailed Description

General frame info provided by all plugins.

Member Attribute Documentation

iBackgroundColor

TRgb iBackgroundColor

The background color for the frame.

iBitsPerPixel

TInt iBitsPerPixel

The number of bits per pixel for the frame.

iDelay

The delay in microseconds before displaying the next frame.

iFlags

TUint32 iFlags

Frame information flags. A combination of the values contained in the TFrameInfoFlags enum.

iFrameCoordsInPixels

TRect iFrameCoordsInPixels

The coordinates of the frame within the screen in pixels.

iFrameDisplayMode

TDisplayMode iFrameDisplayMode

The display mode for the frame.

iFrameSizeInPixels

TSize iFrameSizeInPixels

The size of frame in pixels

iFrameSizeInTwips

TSize iFrameSizeInTwips

The size of the frame in twips.

iOverallSizeInPixels

TSize iOverallSizeInPixels

The size of the frame. A frame can occupy a rectangle within the overall image. In this case, the frame size is less than the overall image size. For a GIF image, the following applies: For the first frame of the image, iOverallSizeInPixels will be the greater of the logical screen size and the size of the first frame. The logical screen size is defined in the logical screen descriptor block of the GIF image. If the GIF is animated it will contain a set of frames. The first frame will be full size but subsequent frames are sub-frames and iOverallSizeInPixels may differ for each sub-frame.

Member Enumeration Documentation

Enum TFrameInfoFlags

Flags that define the attributes of a frame. These can be combined using an OR operation.

EnumeratorValueDescription
EColor0x00000001

Indicates whether or not the frame is colour.

ETransparencyPossible0x00000002

Indicates if any part of the frame is transparent.

EFullyScaleable0x00000004

Indicates whether or not the frame can be scaled.

EConstantAspectRatio0x00000008

Indicates whether or not the frame's aspect ratio must be maintained during scaling. If not set, the frame can be stretched.

ECanDither0x00000010

Indicates if the frame can be decoded and drawn dithered. If this is not set, the bitmap must use the recommended display mode.

EAlphaChannel0x00000020

Indicates if the frame contains alpha-blending information. This setting is only valid if ETransparencyPossible is set.

ELeaveInPlace0x00000040

Mutually exclusive image disposal method 1, no disposal specified. Image is not disposed of and graphic is left in place.

ERestoreToBackground0x00000080

Mutually exclusive image disposal method 2, restore to background colour. The area used by the graphic must be restored to the background colour.

ERestoreToPrevious0x00000100

Mutually exclusive image disposal method 3, restore to previous. The decoder is required to restore the area overwritten by the graphic with what was there prior to rendering the graphic.

EPartialDecodeInvalid0x00000200

If this flag is set and an image convert operation returns KErrUnderFlow, the partially decoded bitmap is not suitable for display.

EMngMoreFramesToDecode0x00000400

This flag is used by Mng decoder to indicate that there are more frames to decode

EUsesFrameSizeInPixels0x00000800

This flag is used to indicate that the code sets iFrameSizeInPixels

Enum TFrameInfoState

Indicates the current status of frame processing.

EnumeratorValueDescription
EFrameInfoUninitialised

The frame information has not been initialised.

EFrameInfoProcessingFrameHeader

The frame header is being processed.

EFrameInfoProcessingFrame

The frame is being processed.

EFrameInfoProcessingComplete

The frame has been processed.

Member Function Documentation

CurrentDataOffset ( )

IMPORT_C TIntCurrentDataOffset()const

Returns the current data offset.

Return Value
The data offset.

CurrentFrameState ( )

IMPORT_C TFrameInfoStateCurrentFrameState()const

Returns the current frame state.

Return Value
The frame state.

FrameDataOffset ( )

IMPORT_C TIntFrameDataOffset()const

Returns the frame data offset.

Return Value
The frame data offset.

SetCurrentDataOffset ( TInt )

IMPORT_C voidSetCurrentDataOffset(TIntaOffset)

Sets the current data offset to the supplied value.

Parameters
aOffsetThe data offset.

SetCurrentFrameState ( TFrameInfoState )

IMPORT_C voidSetCurrentFrameState(TFrameInfoStateaFrameInfoState)

Sets the current frame state to the supplied value.

Parameters
aFrameInfoStateThe frame state.

SetFrameDataOffset ( TInt )

IMPORT_C voidSetFrameDataOffset(TIntaOffset)

Sets the frame data offset to the supplied value.

Parameters
aOffsetThe frame data offset.