MDirectViewFinderObserver Class Reference

class MDirectViewFinderObserver

A mixin class to be implemented by the client in order to use the V2 direct view finder API CCameraV2DirectViewFinder. The derived class methods are called by the implementation when the direct view finder operations are ready to be notified accordingly. Implementation shall keep track of CCameraV2DirectViewFinder object deletion. It has to ensure that a callback is not send should the client destroy the particular CCameraV2DirectViewFinder class object when the callback is queued to be send across. Ownership of CCameraV2DirectViewFinder is retained by the client.

CCamera::CCameraV2DirectViewFinder

Member Functions Documentation

ClientHistogramReady(CCamera::CCameraV2DirectViewFinder &, MHistogramV2Buffer *, TInt)

void ClientHistogramReady ( CCamera::CCameraV2DirectViewFinder & aDirectViewFinderHandle,
MHistogramV2Buffer * aClientHistogramBuffer,
TInt aErrorCode
) [pure virtual]

Implementation sends this callback in order to notify the client about availability of the histogram data. If a call to CCameraV2Histogram::StartHistogram() is made without a previous successful call to CCameraV2Histogram:: PrepareClientHistogramL() then the callback returns KErrBadHandle.

Note:

Client shall use the currently available histogram for the direct viewfinder frames until a new histogram is available.

Parameters

CCamera::CCameraV2DirectViewFinder & aDirectViewFinderHandle Reference to CCameraV2DirectViewFinder class object which refers a particular direct viewfinder for which the client histogram data have been generated.
MHistogramV2Buffer * aClientHistogramBuffer Pointer to MHistogramV2Buffer which retrieves a single histogram alongwith relevant information about it. The ownership will be retained by the implementation. Client needs to call Release in order to indicate the implementation that the buffer can be re-used. Client shall never try to delete the pointer. NULL, if error.
TInt aErrorCode Appropriate error code.

CustomInterface(TUid, TAny *&)

TInt CustomInterface ( TUid aInterface,
TAny *& aPtrInterface
) [pure virtual]

Gets a custom interface for future callbacks. This method will be called by the implementation to get a new interface which would support future callbacks.

Parameters

TUid aInterface The Uid of the particular interface function required for callbacks.
TAny *& aPtrInterface The implementation has to type-cast the retrieved custom interface pointer to the appropriate type.

DirectHistogramDisplayed(CCamera::CCameraV2DirectViewFinder &, CCamera::CCameraV2Histogram &, TInt)

void DirectHistogramDisplayed ( CCamera::CCameraV2DirectViewFinder & aDirectViewFinderHandle,
CCamera::CCameraV2Histogram & aDirectHistogramDisplayed,
TInt aErrorCode
) [pure virtual]

Implementation sends this callback in order to notify the client when the direct histogram data gets displayed on the screen for the first time after starting/resuming a particular direct viewfinder. If a call to CCameraV2Histogram:: StartHistogram() is made without a previous successful call to CCameraV2Histogram::PrepareDirectHistogramL() then the callback returns KErrBadHandle.

Parameters

CCamera::CCameraV2DirectViewFinder & aDirectViewFinderHandle Reference to CCameraV2DirectViewFinder class object which refers a particular direct viewfinder for which the direct histogram data has been displayed.
CCamera::CCameraV2Histogram & aDirectHistogramDisplayed Reference to CCameraV2Histogram class object which refers a particular type of histogram being displayed.
TInt aErrorCode Appropriate error code.

DirectSnapshotForImageDisplayed(CCamera::CCameraV2DirectViewFinder &, CCamera::CCameraImageCapture &, TPostCaptureControlId, TInt)

void DirectSnapshotForImageDisplayed ( CCamera::CCameraV2DirectViewFinder & aDirectViewFinderHandle,
CCamera::CCameraImageCapture & aCaptureImageHandle,
TPostCaptureControlId aPostCaptureControlId,
TInt aErrorCode
) [pure virtual]

Implementation sends this callback as a notification of the display of direct snapshot for still images on the display screen.

Parameters

CCamera::CCameraV2DirectViewFinder & aDirectViewFinderHandle Reference to CCameraV2DirectViewFinder class object which refers a particular direct viewfinder on which the direct snapshot data for still images have been displayed.
CCamera::CCameraImageCapture & aCaptureImageHandle Reference to CCameraImageCapture class object which was used to issue the capture image operation.
TPostCaptureControlId aPostCaptureControlId Id used to identify a particular CCameraPostImageCaptureControl object associated with the given CCameraImageCapture class object. This is needed to identify the image which is represented by this snapshot.
TInt aErrorCode Appropriate error code.

DirectViewFinderFailed(CCamera::CCameraV2DirectViewFinder &, TInt)

void DirectViewFinderFailed ( CCamera::CCameraV2DirectViewFinder & aDirectViewFinderHandle,
TInt aErrorCode
) [pure virtual]

Implementation sends this callback in order to notify the client about failure with the direct viewfinder.

Parameters

CCamera::CCameraV2DirectViewFinder & aDirectViewFinderHandle Reference to CCameraV2DirectViewFinder class object which refers a particular direct viewfinder.
TInt aErrorCode The reason of failure of the direct viewfinder.

DirectViewFinderFirstFrameDisplayed(CCamera::CCameraV2DirectViewFinder &, TInt)

void DirectViewFinderFirstFrameDisplayed ( CCamera::CCameraV2DirectViewFinder & aDirectViewFinderHandle,
TInt aErrorCode
) [pure virtual]

Implementation sends this callback in order to notify the client when the first direct viewfinder frame gets displayed after starting/resuming a particular direct viewfinder.

Parameters

CCamera::CCameraV2DirectViewFinder & aDirectViewFinderHandle Reference to CCameraV2DirectViewFinder class object which refers a particular direct viewfinder.
TInt aErrorCode Appropriate error code.