class TFrameInfo |
General frame info provided by all plugins.
Public Member Functions | |
---|---|
IMPORT_C TInt | CurrentDataOffset() |
IMPORT_C TFrameInfoState | CurrentFrameState() |
IMPORT_C TInt | FrameDataOffset() |
IMPORT_C void | SetCurrentDataOffset(TInt) |
IMPORT_C void | SetCurrentFrameState(TFrameInfoState) |
IMPORT_C void | SetFrameDataOffset(TInt) |
Public Member Enumerations | |
---|---|
enum | TFrameInfoFlags { EColor = 0x00000001, ETransparencyPossible = 0x00000002, EFullyScaleable = 0x00000004, EConstantAspectRatio = 0x00000008, ECanDither = 0x00000010, EAlphaChannel = 0x00000020, ELeaveInPlace = 0x00000040, ERestoreToBackground = 0x00000080, ERestoreToPrevious = 0x00000100, EPartialDecodeInvalid = 0x00000200, EMngMoreFramesToDecode = 0x00000400, EUsesFrameSizeInPixels = 0x00000800 } |
enum | TFrameInfoState { EFrameInfoUninitialised, EFrameInfoProcessingFrameHeader, EFrameInfoProcessingFrame, EFrameInfoProcessingComplete } |
Private Attributes | |
---|---|
TInt | iCurrentDataOffset |
TFrameInfoState | iCurrentFrameState |
TInt | iFrameDataOffset |
TInt | iReserved_1 |
IMPORT_C void | SetCurrentFrameState | ( | TFrameInfoState | aFrameInfoState | ) |
TFrameInfoState aFrameInfoState |
Flags that define the attributes of a frame. These can be combined using an OR operation.
EColor = 0x00000001 |
Indicates whether or not the frame is colour. |
ETransparencyPossible = 0x00000002 |
Indicates if any part of the frame is transparent. |
EFullyScaleable = 0x00000004 |
Indicates whether or not the frame can be scaled. |
EConstantAspectRatio = 0x00000008 |
Indicates whether or not the frame's aspect ratio must be maintained during scaling. If not set, the frame can be stretched. |
ECanDither = 0x00000010 |
Indicates if the frame can be decoded and drawn dithered. If this is not set, the bitmap must use the recommended display mode. |
EAlphaChannel = 0x00000020 |
Indicates if the frame contains alpha-blending information. This setting is only valid if ETransparencyPossible is set. |
ELeaveInPlace = 0x00000040 |
Mutually exclusive image disposal method 1, no disposal specified. Image is not disposed of and graphic is left in place. |
ERestoreToBackground = 0x00000080 |
Mutually exclusive image disposal method 2, restore to background colour. The area used by the graphic must be restored to the background colour. |
ERestoreToPrevious = 0x00000100 |
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. |
EPartialDecodeInvalid = 0x00000200 |
If this flag is set and an image convert operation returns KErrUnderFlow, the partially decoded bitmap is not suitable for display. |
EMngMoreFramesToDecode = 0x00000400 |
This flag is used by Mng decoder to indicate that there are more frames to decode |
EUsesFrameSizeInPixels = 0x00000800 |
This flag is used to indicate that the code sets iFrameSizeInPixels |
Indicates the current status of frame processing.
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. |
TTimeIntervalMicroSeconds | iDelay |
The delay in microseconds before displaying the next frame.
TUint32 | iFlags |
Frame information flags. A combination of the values contained in the TFrameInfoFlags enum.
TRect | iFrameCoordsInPixels |
The coordinates of the frame within the screen in pixels.
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.