MCameraOverlay Class Reference

class MCameraOverlay

This is a mixin class to be implemented by providers of the camera extension API for image overlays.

Note:

This class is intended for sub classing by licensees only.

CCamera::CCameraOverlay

Member Functions Documentation

CreateOverlayL(const CCamera::CCameraOverlay::TOverlayParameters &, CFbsBitmap *)

TUint CreateOverlayL ( const CCamera::CCameraOverlay::TOverlayParameters & aParameters,
CFbsBitmap * aBitmap
) [pure virtual]

Creates an image overlay object on the ECam implementation, returning a handle to the newly created object.

leave
KErrNoMemory if out of memory; also any system wide error.
leave
KErrArgument if the member variables in TOverlayParameters are such that they create mutual exclusion.

Parameters

const CCamera::CCameraOverlay::TOverlayParameters & aParameters The parameters characterizing the overlay to be created.
CFbsBitmap * aBitmap The image that is to become the overlay. By default this is set to NULL, allowing the client to provide the image at some point after the overlay object has been created, by using SetOverlayBitmapL().

GetAllOverlaysInZOrderL(RArray< TUint > &)

void GetAllOverlaysInZOrderL ( RArray < TUint > & aOverlayHandles ) [pure virtual]

Gets all the overlay handles maintained by the ECam implementation, in order of their Z-Value.

leave
KErrNoMemory if out of memory; also any system wide error.

Parameters

RArray < TUint > & aOverlayHandles Returned list, in Z-Value order, of all the overlay handles maintained on the ECam implementation. The topmost overlay is the first element of the array.

GetOverlayBitmapL(TUint, CFbsBitmap *)

void GetOverlayBitmapL ( TUint aOverlayHandle,
CFbsBitmap * aBitmap
) [pure virtual]

Gets the overlay image data for a specified overlay.

leave
KErrArgument if aOverlayHandle is out of range; also any system wide error.
leave
KErrNotSupported if a sharing client (which did not create the given overlay) tries to retrieve the overlay bitmap and the implementation may not be interested in providing the overlay.
Note:

The ECam implementation will transfer the ownership of the aBitmap to the client.

Parameters

TUint aOverlayHandle The handle of the overlay whose overlay image data is to be obtained.
CFbsBitmap * aBitmap A CFbsBitmap that will receive the returned image data for the overlay.

GetOverlayParametersL(TUint, CCamera::CCameraOverlay::TOverlayParameters &)

void GetOverlayParametersL ( TUint aOverlayHandle,
CCamera::CCameraOverlay::TOverlayParameters & aInfo
) [pure virtual]

Gets the parameters that characterize a given overlay.

leave
KErrArgument if aOverlayHandle is out of range; also any system wide error.

Parameters

TUint aOverlayHandle The handle of the overlay whose parameters are required.
CCamera::CCameraOverlay::TOverlayParameters & aInfo Reference to TOverlayParameters object that will contain the returned overlay parameters.

GetOverlaySupport(CCamera::CCameraOverlay::TOverlaySupportInfo &)

void GetOverlaySupport ( CCamera::CCameraOverlay::TOverlaySupportInfo & aInfo ) [pure virtual]

Gets information on the overlay functionality supported by the ECam implementation.

Parameters

CCamera::CCameraOverlay::TOverlaySupportInfo & aInfo A reference to a TOverlaySupportInfo object that will receive the overlay support information.

Release()

void Release ( ) [pure virtual]

Releases and destroys all overlay handles on the ECam implementation. This function is called from the destructor of CCamera::CCameraOverlay .

ReleaseOverlay(TUint)

void ReleaseOverlay ( TUint aOverlayHandle ) [pure virtual]

Releases the specified overlay handle.

Note:

If the handle specified in aOverlayHandle is invalid (out of range) the function call is ignored and no error is reported.

Parameters

TUint aOverlayHandle The handle of the overlay that is to be released.

SetAllOverlaysInZOrderL(const RArray< TUint > &)

void SetAllOverlaysInZOrderL ( const RArray < TUint > & aOverlayHandles ) [pure virtual]

Sets Z-Order of all the overlay handles known by this CCameraOverlay object.

leave
KErrNoMemory if out of memory; also any system wide error.

Parameters

const RArray < TUint > & aOverlayHandles The overlay handles in aOverlayHandles array. This must be the complete current set of handles known to this CCameraOverlay object. The client specifies the desired order by placing the topmost overlay in the first element of the array.

SetOverlayBitmapL(TUint, const CFbsBitmap *)

void SetOverlayBitmapL ( TUint aOverlayHandle,
const CFbsBitmap * aBitmap
) [pure virtual]

Allows the overlay image data to be changed for a specified overlay. Use this function to set the overlay image data if it was not specified when the overlay was created using CreateOverlayL() .

leave
KErrArgument if aOverlayHandle is out of range; also any system wide error.
Note:

Once this method is called, overlay size should not be changed for the given overlay. Hence, SetOverlayParametersL should not be called after this method.

Parameters

TUint aOverlayHandle The handle of the overlay whose overlay image data is to be changed.
const CFbsBitmap * aBitmap The new image data for the overlay.

SetOverlayParametersL(TUint, const CCamera::CCameraOverlay::TOverlayParameters &)

void SetOverlayParametersL ( TUint aOverlayHandle,
const CCamera::CCameraOverlay::TOverlayParameters & aParameters
) [pure virtual]

Sets new parameters that characterize a given overlay.

leave
KErrNotSupported if TOverlayCameraMode passed in TOverlayParameters is not supported; also any system wide error.
leave
KErrArgument if the member variables in TOverlayParameters are such that they create mutual exclusion.

Parameters

TUint aOverlayHandle The handle of the overlay whose parameters are to be changed.
const CCamera::CCameraOverlay::TOverlayParameters & aParameters The new overlay parameters.