ImageProcessor::CImgProcessor Class Reference

#include <imageprocessor/imageprocessor.h>

Link against: imageprocessor.lib

class ImageProcessor::CImgProcessor : public CBase

Inherits from

  • ImageProcessor::CImgProcessor
    Public Member Enumerations
    enumTEvent { EEventInitializing, EEventInitializingComplete, EEventProcessing, EEventProcessingComplete, ..., EEventPreviewRenderingComplete }
    enumTOperation { EOperationNone, EOperationRotate90, EOperationRotate180, EOperationRotate270, ..., EOperationMirrorVerticalAxisRotate90 }
    enumTOptions { EOptionNone, EOptionSyncProcessing, EOptionExifMetadataProcessing }
    enumTState { EUninitialized, EInitializing, EInitialized, EEffectActive, ..., EStatesCount }
    Public Member Functions
    ~CImgProcessor()
    IMPORT_C voidApplyOperationL(CImgProcessor::TOperation)
    IMPORT_C TRgbBackgroundColorL()
    IMPORT_C TIntCalculatePixelBufferSizeL(TSize, TDisplayMode, TUint32)
    IMPORT_C TIntCalculatePixelBufferSizeL(TSize, const TUid &, TUint32)
    IMPORT_C TBoolCanRedoL()
    IMPORT_C TBoolCanUndoL()
    IMPORT_C voidCancel()
    IMPORT_C voidConvertFileExtensionToUidL(const TDesC &, TUid &, TUid &)
    IMPORT_C voidConvertMimeTypeToUidL(const TDesC8 &, TUid &, TUid &)
    IMPORT_C voidConvertUidToFileExtensionL(TDes &, const TUid &, const TUid &)
    IMPORT_C voidConvertUidToMimeTypeL(TDes8 &, const TUid &, const TUid &)
    IMPORT_C voidCreateInputL(CFbsBitmap &)
    IMPORT_C voidCreateInputL(CImageFrame &)
    IMPORT_C voidCreateInputL(const TSize &, const TRgb &)
    IMPORT_C TSizeCurrentSizeL()
    IMPORT_C TEffect *EffectL(TUid)
    IMPORT_C TAny *Extension(TUid)
    IMPORT_C voidInitializeL()
    IMPORT_C voidInitializeL(TUint64)
    IMPORT_C TInputInfo *InputInfoL()
    IMPORT_C voidInputUpdatedL()
    IMPORT_C CImgProcessor *NewL(RFs &, MImgProcessorObserver &, TUid)
    IMPORT_C TUint64Options()
    IMPORT_C TOutputInfo *OutputInfoL()
    IMPORT_C TOverlay *OverlayL()
    IMPORT_C TPreview *PreviewL(TInt)
    IMPORT_C voidProcessL()
    IMPORT_C voidProcessL(const TSize &, TBool)
    IMPORT_C TProgressInfo *ProgressInfoL()
    IMPORT_C voidRedoAllL()
    IMPORT_C voidRedoL()
    IMPORT_C voidResetL()
    IMPORT_C voidSetBackgroundColorL(const TRgb &)
    IMPORT_C voidSetInputL(const TDesC &, const TUid &, const TUid &)
    IMPORT_C voidSetInputL(RFile &, const TUid &, const TUid &)
    IMPORT_C voidSetInputL(TMMSource &, const TUid &, const TUid &)
    IMPORT_C voidSetInputL(const TDesC8 &, const TUid &, const TUid &)
    IMPORT_C voidSetInputL(const CFbsBitmap &, const CFbsBitmap *)
    IMPORT_C voidSetInputL(const CImageFrame &)
    IMPORT_C voidSetInputL(CImagePanorama &)
    IMPORT_C voidSetInputRectL(const TRect &)
    IMPORT_C voidSetOptionsL(TUint64)
    IMPORT_C voidSetOutputL(const TDesC &, const TUid &, const TUid &)
    IMPORT_C voidSetOutputL(RFile &, const TUid &, const TUid &)
    IMPORT_C voidSetOutputL(RBuf8 &, const TUid &, const TUid &)
    IMPORT_C voidSetOutputL(CImageFrame &)
    IMPORT_C voidSetOutputL(CFbsBitmap &, CFbsBitmap *)
    IMPORT_C TStateState()
    IMPORT_C voidSupportedEffectsL(RArray< TUid > &)
    IMPORT_C voidSupportedInputDisplayModesL(RArray< TDisplayMode > &)
    IMPORT_C voidSupportedInputFormatsL(RArray< TUid > &)
    IMPORT_C voidSupportedInputImageFrameFormatsL(RArray< TUid > &)
    IMPORT_C voidSupportedInputSubFormatsL(TUid, RArray< TUid > &)
    IMPORT_C TUintSupportedOperations()
    IMPORT_C TUint64SupportedOptions()
    IMPORT_C voidSupportedOutputDisplayModesL(RArray< TDisplayMode > &)
    IMPORT_C voidSupportedOutputFormatsL(RArray< TUid > &)
    IMPORT_C voidSupportedOutputImageFrameFormatsL(RArray< TUid > &)
    IMPORT_C voidSupportedOutputSubFormatsL(TUid, RArray< TUid > &)
    IMPORT_C voidUndoAllL()
    IMPORT_C voidUndoL()
    Inherited Functions
    CBase::CBase()
    CBase::Delete(CBase *)
    CBase::Extension_(TUint,TAny *&,TAny *)
    CBase::operator new(TUint)
    CBase::operator new(TUint,TAny *)
    CBase::operator new(TUint,TLeave)
    CBase::operator new(TUint,TLeave,TUint)
    CBase::operator new(TUint,TUint)
    CBase::~CBase()

    Detailed Description

    This class provides functions to process images. Those operations can be divided in two groups:
    • effects.

    • geometrical operations.

    Good examples of effects could be the Sepia effect applying shades of brown to an image, or the solarize effect that consists in reversing the tones of a picture and make it look like a negative. Good examples of geometrical operations could be Rotation or Flip.

    The image processor will decode and render an image:

    Inputs can be
    • compressed images (JPEG, GIF, PNG etc)

    • uncompressed images (CFbsBitmap and general pixel buffers e.g. YUV 4:2:0 Interleaved etc)

    Outputs can be
    • compressed images (JPEG, GIF, PNG etc)

    • uncompressed images (CFbsBitmap and general pixel buffers e.g. YUV 4:2:0 Interleaved etc)

    An intermediate generally low resolution uncompressed image providing a preview representation of the output of the processing is provided allowing applications to display the results of the operations applied without needing to fully render the image. Multiple previews are allowed.

    Images may be overlaid onto the main source image.

    The source image can be changed and the current effects and geometric oprations will be re-applied to the new image. The previews will be updated.

    Member Enumeration Documentation

    Enum TEvent

    Events occurring during processing.

    EnumeratorValueDescription
    EEventInitializing0

    The image processor is initializing.

    EEventInitializingComplete

    The image processor has finished initializing.

    EEventProcessing

    Processing is in progress.

    EEventProcessingComplete

    Processing is complete.

    EEventRendering

    Rendering is in progress.

    EEventRenderingComplete

    Event rendering is complete.

    EEventPreviewInitializing

    The preview is initializing.

    EEventPreviewInitializingComplete

    The preview has finished initializing.

    EEventPreviewRendering

    The preview rendering is in progress.

    EEventPreviewRenderingComplete

    The preview rendering is complete.

    Enum TOperation

    Flags to control the operations or transforms on an image.

    EnumeratorValueDescription
    EOperationNone0x0

    No operation.

    EOperationRotate900x1

    Rotate 90 degrees clockwise.

    EOperationRotate1800x2

    Rotate 180 degrees clockwise.

    EOperationRotate2700x4

    Rotate 270 degrees clockwise.

    EOperationMirrorHorizontalAxis0x8

    Horizontal flip (mirror over horizontal axis).

    EOperationMirrorHorizontalAxisRotate900x10

    Horizontal flip (mirror over horizontal axis) then rotate 90 degrees clockwise.

    EOperationMirrorVerticalAxis0x20

    Vertical flip (mirror over vertical axis).

    EOperationMirrorVerticalAxisRotate900x40

    Vertical flip (mirror over vertical axis) then rotate 90 degrees clockwise.

    Enum TOptions

    Flags to control how the image is processed.

    EnumeratorValueDescription
    EOptionNone0x00

    No flag set

    EOptionSyncProcessing0x01

    Effects, geometric operations and rendering are applied synchronously. The default is asynchronously.

    EOptionExifMetadataProcessing0x02

    The Exif data from the source image is parsed and transferred to the destination image.

    Enum TState

    Possible states for the image processor.

    EnumeratorValueDescription
    EUninitialized0

    Image processor not initalized.

    EInitializing

    Image processor initalizing.

    EInitialized

    Image processor initalized.

    EEffectActive

    Effect active.

    EProcessing

    Image processor processing an image.

    EPreviewInitializing

    Preview initializing.

    EPreviewRendering

    Preview Rendering.

    EStatesCount

    Count of valid states (boundary marker - not a true state).

    Constructor & Destructor Documentation

    ~CImgProcessor ( )

    IMPORT_C~CImgProcessor()

    Member Function Documentation

    ApplyOperationL ( CImgProcessor::TOperation )

    IMPORT_C voidApplyOperationL(CImgProcessor::TOperationaOperation)

    Applies a geometrical operation to the image. The image processor needs to be in an initialized state.

    ParameterDescription
    aOperationThe geometrical operation to be applied.

    BackgroundColorL ( )

    IMPORT_C TRgbBackgroundColorL()const

    Retrieves the current background color.

    leave
    KErrNotReady The input of the image processor is not set.
    leave
    Other A range of system wide error codes.

    Returns: The current background color.

    CalculatePixelBufferSizeL ( TSize, TDisplayMode, TUint32 )

    IMPORT_C TIntCalculatePixelBufferSizeL(TSizeaSizeInPixels,
    TDisplayModeaDisplayMode,
    TUint32aScanLineLength = 0
    )const

    Calculates the required pixel buffer size in bytes for the destination image given display mode and scan line length.

    leave
    KErrNotReady The image processor is not in EUninitialized state.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aSizeInPixelsThe size in pixels of the image to calculate buffer size for.
    aDisplayModeThe display mode of the destination image to calculate buffer size for. section for details.
    aScanLineLengthNumber of bytes per image row.

    Returns: The calculated pixel buffer size in bytes.

    CalculatePixelBufferSizeL ( TSize, const TUid &, TUint32 )

    IMPORT_C TIntCalculatePixelBufferSizeL(TSizeaSizeInPixels,
    const TUid &aFormat,
    TUint32aScanLineLength = 0
    )const

    Calculates the required pixel buffer size in bytes for the destination image given destination uncompressed image format and scan line length.

    leave
    KErrNotReady The image processor is not in EUninitialized state.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aSizeInPixelsThe size in pixels of the raw image to calculate buffer size for.
    aFormatThe format of the raw image to calculate buffer size for (one of the valid CImageFrame formats). section for details.
    aScanLineLengthNumber of bytes per image row.

    Returns: The calculated pixel buffer size.

    CanRedoL ( )

    IMPORT_C TBoolCanRedoL()const

    Determines if there are operations on the operation stack which can be re-applied.

    leave
    KErrNotReady The image processor is not initialized or input is not set.

    Returns: ETrue if at least one operation applied to the image can be redone; EFalse otherwise.

    CanUndoL ( )

    IMPORT_C TBoolCanUndoL()const

    Determines if there are operations on the operation stack which can be 'undone'.

    leave
    KErrNotReady The image processor is not initialized or input is not set.
    leave
    Other A range of system wide error codes.

    Returns: ETrue if at least one operation applied to the image can be undone; EFalse otherwise.

    Cancel ( )

    IMPORT_C voidCancel()

    Cancels any current asynchronous operation, for example preview or output rendering. Ignored if no asynchronous operation is in progress.

    ConvertFileExtensionToUidL ( const TDesC &, TUid &, TUid & )

    IMPORT_C voidConvertFileExtensionToUidL(const TDesC &aFileExtension,
    TUid &aFormat,
    TUid &aSubFormat
    )const

    Converts a given file extension to format and sub-format UIDs.

    leave
    KErrNotFound The given file extension is not found in existing formats.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aFileExtensionThe file extension to convert.
    aFormatThe format UID corresponding to the given file extension.
    aSubFormatThe sub-format UID corresponding to the given file extension.

    ConvertMimeTypeToUidL ( const TDesC8 &, TUid &, TUid & )

    IMPORT_C voidConvertMimeTypeToUidL(const TDesC8 &aMimeType,
    TUid &aFormat,
    TUid &aSubFormat
    )const

    Converts a given mime type to format and sub-format UIDs.

    leave
    KErrNotFound The given mime type is not found in existing formats.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aMimeTypeThe mime type to convert.
    aFormatThe format UID corresponding to the given mime type.
    aSubFormatThe sub-format UID corresponding to the given mime type.

    ConvertUidToFileExtensionL ( TDes &, const TUid &, const TUid & )

    IMPORT_C voidConvertUidToFileExtensionL(TDes &aFileExtension,
    const TUid &aFormat,
    const TUid &aSubFormat
    )const

    Converts a format and sub-format UIDs to a file extension.

    leave
    KErrNotFound The given format UID is not found in existing file extensions.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aFileExtensionThe file extension corresponding to the given format and sub-format UIDs. (Consider re-ordering these parameters)
    aFormatThe format UID to convert.
    aSubFormatThe sub-format UID to convert.

    ConvertUidToMimeTypeL ( TDes8 &, const TUid &, const TUid & )

    IMPORT_C voidConvertUidToMimeTypeL(TDes8 &aMimeType,
    const TUid &aFormat,
    const TUid &aSubFormat
    )const

    Converts a format and sub-format UID to a mime type.

    leave
    KErrNotFound The given format UID is not found in existing mime types.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aMimeTypeReturns the mime type corresponding to the given format and sub-format UIDs. (Consider re-ordering these parameters)
    aFormatThe format UID to convert.
    aSubFormatThe sub-format UID to convert.

    CreateInputL ( CFbsBitmap & )

    IMPORT_C voidCreateInputL(CFbsBitmap &aBitmap)

    Creates internal pixel buffer for the input and copies data from source bitmap to internal buffer

    leave
    KErrNotReady The image processor is not initialized.
    leave
    KErrArgument The input bitmap size is 0.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aBitmapThe bitmap to copy.

    CreateInputL ( CImageFrame & )

    IMPORT_C voidCreateInputL(CImageFrame &aPixelBuffer)

    Creates internal pixel buffer the for the source image and copies data from the image frame to the internal buffer

    leave
    KErrNotReady The image processor is not initialized.
    leave
    KErrArgument The input bitmap size is 0.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aPixelBufferThe image frame to copy.

    CreateInputL ( const TSize &, const TRgb & )

    IMPORT_C voidCreateInputL(const TSize &aSize,
    const TRgb &aColor
    )

    Creates internal pixel buffer for the source image using the given size and initializes source image with the given color.

    leave
    KErrNotReady The image processor is not initialized.
    leave
    KErrArgument The input bitmap size is 0.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aSizeThe size of the new source image.
    aColorThe color of the new source image.

    CurrentSizeL ( )

    IMPORT_C TSizeCurrentSizeL()const

    Retrieves the size of the current source image.

    leave
    KErrNotReady The input image source data hasn't been set.
    leave
    Other A range of system wide error codes.

    Returns: The size of the current source image.

    EffectL ( TUid )

    IMPORT_C TEffect *EffectL(TUidaEffect)

    Retrieves the interface to an specific effect (e.g. Sepia effect) given an effect UID.

    leave
    KErrNotReady The image processor is not initialized or is initializing.
    leave
    KErrNotSupported The given effect is not supported.
    leave
    KErrNoMemory Not enough memory.
    leave
    Other A range of system wide error codes.

    Returns: The effect interface corresponding to the given effect UID.

    Extension ( TUid )

    IMPORT_C TAny *Extension(TUidaExtension)

    Retrieves a non-standard extension on the image processor.

    ParameterDescription
    aExtensionThe UID of the extension to be retrieved

    Returns: Extension corresponding to the UID given as a parameter.

    InitializeL ( )

    IMPORT_C voidInitializeL()

    Initializes the image processor asynchronously. After this asynchronous call completes,the image processor's state should normally be EInitialized.

    leave
    KErrNotReady The image processor has already been initialized.
    leave
    Other A range of system wide error codes.

    InitializeL ( TUint64 )

    IMPORT_C voidInitializeL(TUint64aOptions)

    Initializes the image processor. After the initialization completes, the image processor's state should normally be EInitialized.

    leave
    KErrNotReady The image processor has already been initialized.
    leave
    KErrNotSupported The option to set to the image processor is not supported.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aOptionsThe options to set to this image processor with the initialization.

    InputInfoL ( )

    IMPORT_C TInputInfo *InputInfoL()

    Retrieves information about the current source image.

    leave
    KErrNotReady The image processor is not initialized or is initializing.
    leave
    KErrNoMemory Not enough memory.
    leave
    Other A range of system wide error codes.

    Returns: a TInputInfo filled with all available information about the current source image.

    InputUpdatedL ( )

    IMPORT_C voidInputUpdatedL()

    This method needs to be called when the input image source data has been updated externally.

    leave
    KErrNotReady The image processor is not initialized or input image source data hasn't been set.
    leave
    Other A range of system wide error codes.

    NewL ( RFs &, MImgProcessorObserver &, TUid )

    IMPORT_C CImgProcessor *NewL(RFs &aFileServerSession,
    MImgProcessorObserver &aObserver,
    TUidaImageProcessorPluginUid = KNullUid
    )[static]

    Constructs a new image processor object.

    leave
    KErrNoMemory There is insufficient memory available.
    ParameterDescription
    aFileServerSessionA file server session for the image processor to use.
    aObserverThe image processor observer to recieve callbacks.
    aImageProcessorPluginUidThe UID of the image processor plugin to load. Can be set to KUidNull which will load the highest version of the plugin.

    Returns: A pointer to the new image processor object.

    Options ( )

    IMPORT_C TUint64Options()const

    Gets the set of the options set in the image processor.

    See also: CImgProcessor:TOperation

    Returns: A TUint containing the image processor options.

    OutputInfoL ( )

    IMPORT_C TOutputInfo *OutputInfoL()

    Retrieves information about the output image.

    leave
    KErrNotReady The image processor is not initialized or is initializing.
    leave
    KErrNoMemory Not enough memory.
    leave
    Other A range of system wide error codes.

    Returns: a TOutputInfo filled with all available information about the output image.

    OverlayL ( )

    IMPORT_C TOverlay *OverlayL()

    Retrieves this image processor's TOverlay object. TOverlay provides functions to overlay a border or clipart onto an image.

    leave
    KErrNotReady The image processor is not initialized or is initializing.
    leave
    KErrNoMemory Not enough memory.
    leave
    Other A range of system wide error codes.

    Returns: The image processor's overlay object.

    PreviewL ( TInt )

    IMPORT_C TPreview *PreviewL(TIntaPreviewId)

    Displays a low resolution preview of the output image with the effects and/or operations applied before rendering to a high resolution output image. Multiple previews are possible.

    If the requested preview already exists, it will be returned, otherwise a new preview with id aPreviewId will be created and returned.

    leave
    KErrNotReady The image processor is not initialized or is initializing.
    leave
    KErrNoMemory Not enough memory.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aPreviewIdThe unique id for preview image. It is not the index of the preview of Image Processor. Instead any value can be given here to either return an preview previously created or will create a new one with that id.

    Returns: A TPreview object.

    ProcessL ( )

    IMPORT_C voidProcessL()

    All operations and effects are performed on the source image which is then rendered to the output specified. The size for the output image being rendered is the same as the size for the input image. Aspect ratio is maintained.

    The image processor behaves differently according to if ImageProcessor::EOptionSyncProcessing is set or not

    See also: ImageProcessor::CImgProcessor::SetOptionsL. In the asynchronous case the call leaves with KErrNorReady immediately if the image processor is not initialised. If an error occurs during asynchronous processing then the error is reported back to the client via the observer ImageProcessor::MImgProcessorObserver.

    In the synchronous case i.e. when ImageProcessor::EOptionSyncProcessing is set then the same errors are reported except this time by leaving with the error code directly from ProcessL. In this case no callback is made to the observer.

    leave
    KErrNotReady The image processor is not initialized or input is not set or output is not set.
    leave
    Other A range of system wide error codes.

    ProcessL ( const TSize &, TBool )

    IMPORT_C voidProcessL(const TSize &aSize,
    TBoolaMaintainAspectRatio
    )

    All operations and effects are performed on the source image which is then rendered to the output specified. The aspect ratio can be controlled.

    leave
    KErrNotReady The image processor is not initialized or input is not set or output is not set.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aSizeThe proposed size for the output image being rendered. If a size of 0, 0 is passed then the rendered output size is the same as the input size.
    aMaintainAspectRatioETrue to maintain the aspect ratio, EFalse otherwise. Must be ETrue if aSize is passed as 0,0

    ProgressInfoL ( )

    IMPORT_C TProgressInfo *ProgressInfoL()

    The progress infomation of the rendering function which is executed iteratively to enable asynchronous operation. This gives the possibility to show a progress bar in the GUI when performing time consuming renderings. Rendering functions are synchronous if EOptionSyncProcessing option is set on CImgProcessor.

    Retrieves the available progress information in a TProgressInfo obect.

    leave
    KErrNotReady The image processor is not initialized or is initializing.
    leave
    KErrNoMemory Not enough memory.
    leave
    Other A range of system wide error codes.

    Returns: a TProgressInfo object containing all the progress information.

    RedoAllL ( )

    IMPORT_C voidRedoAllL()

    Re-applies all re-doable operations previously undone.

    leave
    KErrNotReady The image processor is not initialized or input is not set.
    leave
    Other A range of system wide error codes.

    RedoL ( )

    IMPORT_C voidRedoL()

    Re-applies the most recent redoable operation.

    leave
    KErrNotReady The image processor is not initialized or input is not set.
    leave
    Other A range of system wide error codes.

    ResetL ( )

    IMPORT_C voidResetL()

    Resets the image processor. image processor's input is reset and image processor's state is set to EInitialized.

    leave
    KErrNotReady The image processor is not initialized or is initializing.
    leave
    Other A range of system wide error codes.

    SetBackgroundColorL ( const TRgb & )

    IMPORT_C voidSetBackgroundColorL(const TRgb &aColor)

    Sets the background color to use for the output image. Any area of the output image which is not rendered to is set to this colour.

    leave
    KErrNotReady The image processor is not initialized or input is not set.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aColorThe background color to set.

    SetInputL ( const TDesC &, const TUid &, const TUid & )

    IMPORT_C voidSetInputL(const TDesC &aFilename,
    const TUid &aFormat = KNullUid,
    const TUid &aSubFormat = KNullUid
    )

    Sets or updates the source image to the specified file name.

    leave
    KErrNotReady The image processor is not initialized.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aFilenameThe filename of the new source image to use.
    aFormatThe format of the new source image to use. If KNullUid is passed then an attempt is made to recognize its format.
    aSubFormatThe sub-format of the new source image to use. If KNullUid is passed then an attempt is made to recognize its sub-format.

    SetInputL ( RFile &, const TUid &, const TUid & )

    IMPORT_C voidSetInputL(RFile &aFile,
    const TUid &aFormat = KNullUid,
    const TUid &aSubFormat = KNullUid
    )

    The source image is set or updated to the given file.

    leave
    KErrNotReady The image processor is not initialized.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aFileThe file handle of the new source image to use.
    aFormatThe format of the new source image to use.
    aSubFormatThe sub-format of the new source image to use.

    SetInputL ( TMMSource &, const TUid &, const TUid & )

    IMPORT_C voidSetInputL(TMMSource &aDrmFile,
    const TUid &aFormat = KNullUid,
    const TUid &aSubFormat = KNullUid
    )

    The source image is set or updated. The source image may be DRM protected.

    leave
    KErrNotReady The image processor is not initialized.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aDrmFileThe DRM file of the new source image to use.
    aFormatThe format of the new source image to use.
    aSubFormatThe sub-format of the new source image to use.

    SetInputL ( const TDesC8 &, const TUid &, const TUid & )

    IMPORT_C voidSetInputL(const TDesC8 &aBuffer,
    const TUid &aFormat = KNullUid,
    const TUid &aSubFormat = KNullUid
    )

    The source image is set or updated to the content of the buffer provided.

    leave
    KErrNotReady The image processor is not initialized.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aBufferThe buffer containing the new source image to use.
    aFormatThe format of the new source image to use.
    aSubFormatThe sub-format of the new source image to use.

    SetInputL ( const CFbsBitmap &, const CFbsBitmap * )

    IMPORT_C voidSetInputL(const CFbsBitmap &aBitmap,
    const CFbsBitmap *aMask = NULL
    )

    The source image is set or updated to the bitmap provided.

    leave
    KErrNotReady The image processor is not initialized.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aBitmapThe bitmap of the new source image to use.
    aMaskThe bitmap mask of the new source image to use.

    SetInputL ( const CImageFrame & )

    IMPORT_C voidSetInputL(const CImageFrame &aPixelBuffer)

    The source image is set or updated to the image frame provided.

    leave
    KErrNotReady The image processor is not initialized.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aPixelBufferThe image frame of the new source image to use.

    SetInputL ( CImagePanorama & )

    IMPORT_C voidSetInputL(CImagePanorama &aPanorama)

    The input is set or updated to the panorama object provided. Any existing options are reset.

    leave
    KErrNotReady The image processor is not initialized.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aPanoramaThe panorama object to use.

    SetInputRectL ( const TRect & )

    IMPORT_C voidSetInputRectL(const TRect &aRect)

    Sets the area of interest of the source image to be used for processing.

    leave
    KErrNotReady The image processor is not initialized or input image source data hasn't been set.
    leave
    KErrArgument The area size is 0 or there is no overlap between aRect and source image.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aRectA reference to a TRect that specifies the location and size of the region to be used for the source image.

    SetOptionsL ( TUint64 )

    IMPORT_C voidSetOptionsL(TUint64aOptions)

    Sets the desired options. Options can be combined using bitwise inclusive OR.

    See also: CImgProcessor:TOptions

    ParameterDescription
    aOptionsThe new options to set to this image processor.

    SetOutputL ( const TDesC &, const TUid &, const TUid & )

    IMPORT_C voidSetOutputL(const TDesC &aFilename,
    const TUid &aFormat =  KImageTypeJPGUid ,
    const TUid &aSubFormat = KNullUid
    )

    Changes the output image to the image specified in the file given. Rendering is not performed.

    leave
    KErrNotReady The image processor is not initialized.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aFilenameThe filename of the new output image to use.
    aFormatThe format of the new output image to use.
    aSubFormatThe sub-format of the new output image to use.

    SetOutputL ( RFile &, const TUid &, const TUid & )

    IMPORT_C voidSetOutputL(RFile &aFile,
    const TUid &aFormat =  KImageTypeJPGUid ,
    const TUid &aSubFormat = KNullUid
    )

    Changes the output image to the image specified in the file given. Rendering is not performed.

    leave
    KErrNotReady The image processor is not initialized.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aFileThe file handle of the new output image to use.
    aFormatThe format of the new output image to use.
    aSubFormatThe sub-format of the new output image to use.

    SetOutputL ( RBuf8 &, const TUid &, const TUid & )

    IMPORT_C voidSetOutputL(RBuf8 &aBuffer,
    const TUid &aFormat =  KImageTypeJPGUid ,
    const TUid &aSubFormat = KNullUid
    )

    Changes the output image to the image specified in the buffer given. Rendering is not performed.

    leave
    KErrNotReady The image processor is not initialized.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aBufferThe buffer containing the new output image to use. This may be re-allocated when rendering is performed if more memory is required.
    aFormatThe format of the new output image to use.
    aSubFormatThe sub-format of the new output image to use.

    SetOutputL ( CImageFrame & )

    IMPORT_C voidSetOutputL(CImageFrame &aPixelBuffer)

    Changes the output image to the image specified in the buffer given. Rendering is not performed.

    leave
    KErrNotReady The image processor is not initialized.
    leave
    KErrArgument The buffer is empty.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aPixelBufferThe image frame of the new output image to use.

    SetOutputL ( CFbsBitmap &, CFbsBitmap * )

    IMPORT_C voidSetOutputL(CFbsBitmap &aBitmap,
    CFbsBitmap *aMask = NULL
    )

    Changes the output image to the image specified in the bitmap given. Rendering is not performed.

    leave
    KErrNotReady The image processor is not initialized.
    leave
    KErrArgument The bitmap is empty or given mask is empty.
    leave
    Other A range of system wide error codes.
    ParameterDescription
    aBitmapThe bitmap of the new output image to use.
    aMaskThe bitmap mask of the new output image to use.

    State ( )

    IMPORT_C TStateState()const

    Returns the state of the image processor.

    See also: CImgProcessor::TState

    Returns: The image processor's state.

    SupportedEffectsL ( RArray< TUid > & )

    IMPORT_C voidSupportedEffectsL(RArray< TUid > &aEffects)const

    Returns a list of effect UIDs which can be applied by this image processor.

    ParameterDescription
    aEffectsArray to be filled by the list of the supported effects.

    SupportedInputDisplayModesL ( RArray< TDisplayMode > & )

    IMPORT_C voidSupportedInputDisplayModesL(RArray< TDisplayMode > &aDisplayModes)const

    Returns a list of supported input display modes (e.g. EColor16M).

    ParameterDescription
    aDisplayModesArray to be filled in by the list of the supported input display modes.

    SupportedInputFormatsL ( RArray< TUid > & )

    IMPORT_C voidSupportedInputFormatsL(RArray< TUid > &aFormats)const

    Returns a list of compressed image formats which are supported (e.g. KImageTypeJPGUid etc).

    ParameterDescription
    aFormatsArray to be filled by the list of the supported input formats.

    SupportedInputImageFrameFormatsL ( RArray< TUid > & )

    IMPORT_C voidSupportedInputImageFrameFormatsL(RArray< TUid > &aFormats)const

    Returns a list of supported image frame formats (e.g. KUidFormat32BitRGB888Interleaved).

    ParameterDescription
    aFormatsArray to be filled in by the list of the supported input formats.

    SupportedInputSubFormatsL ( TUid, RArray< TUid > & )

    IMPORT_C voidSupportedInputSubFormatsL(TUidaFormat,
    RArray< TUid > &aSubFormats
    )const

    Returns a list of the input sub-formats supported.

    ParameterDescription
    aFormatSupported input format.
    aSubFormatsArray to be filled by the list of the supported input sub-formats.

    SupportedOperations ( )

    IMPORT_C TUintSupportedOperations()const

    Gets the set of operations supported.

    See also: CImgProcessor:TOperation

    Returns: A TUint containing the supported operations.

    SupportedOptions ( )

    IMPORT_C TUint64SupportedOptions()const

    Returns the options supported by this image processor as a set of flags.

    See also: CImgProcessor:TOptions

    Returns: A TUint64 containing the supported options.

    SupportedOutputDisplayModesL ( RArray< TDisplayMode > & )

    IMPORT_C voidSupportedOutputDisplayModesL(RArray< TDisplayMode > &aDisplayModes)const

    Returns a list of supported output display modes (e.g. EColor16M).

    ParameterDescription
    aDisplayModesArray to be filled in by the list of the supported output display modes.

    SupportedOutputFormatsL ( RArray< TUid > & )

    IMPORT_C voidSupportedOutputFormatsL(RArray< TUid > &aFormats)const

    Returns a list of supported compressed output image formats (e.g. KImageTypeJPGUid etc.).

    ParameterDescription
    aFormatsArray to be filled in by the list of the supported output formats.

    SupportedOutputImageFrameFormatsL ( RArray< TUid > & )

    IMPORT_C voidSupportedOutputImageFrameFormatsL(RArray< TUid > &aFormats)const

    Returns a list of image frame formats to which the output can be rendered (e.g. KUidFormat32BitRGB888Interleaved).

    ParameterDescription
    aFormatsArray to be filled in by the list of the supported output frame formats.

    SupportedOutputSubFormatsL ( TUid, RArray< TUid > & )

    IMPORT_C voidSupportedOutputSubFormatsL(TUidaFormat,
    RArray< TUid > &aSubFormats
    )const

    Returns a list of the output sub-formats supported.

    ParameterDescription
    aFormatThe supported format of ImageProcessor.
    aSubFormatsArray to be filled in by the list of the supported sub formats of ImageProcessor.

    UndoAllL ( )

    IMPORT_C voidUndoAllL()

    Reverts all operations which can be undone.

    leave
    KErrNotReady The image processor is not initialized or input is not set.
    leave
    Other A range of system wide error codes.

    UndoL ( )

    IMPORT_C voidUndoL()

    Reverts the most recent operation which can be undone.

    leave
    KErrNotReady The image processor is not initialized or input is not set.
    leave
    Other A range of system wide error codes.