MCameraObserver2 Class Reference

#include <ecam.h>

class MCameraObserver2
Public Member Functions
pure virtual voidHandleEvent(const TECAMEvent &)
pure virtual voidImageBufferReady(MCameraBuffer &, TInt)
pure virtual voidVideoBufferReady(MCameraBuffer &, TInt)
pure virtual voidViewFinderReady(MCameraBuffer &, TInt)

Detailed Description

Mixin base class V2 for camera clients.

An application must implement an MCameraObserver2 (or MCameraObserver) in order to use the camera API. This derived class is called when the camera is ready for use, an image has been captured or a buffer of video data is ready, including when errors occur.

Member Function Documentation

HandleEvent ( const TECAMEvent & )

voidHandleEvent(const TECAMEvent &aEvent)[pure virtual]
A camera event has completed.
Note:

Implementations of MCameraObserver2 should ignore events which are not recognised and should not leave.

Note:

This may internally call TECAMEvent2::IsEventEncapsulationValid(aEvent) and also for any other derived version of TECAMEvent class to know whether correct version of TECAMEvent base class has been used.

ParameterDescription
aEventA reference to a TECAMEvent. This can be completion of a call to Reserve() or a call to PowerOn() or a notification that the client has lost control of the camera. The event contains a uid identifying the event and an accompanying error code (KErrNone for the successful completion of a request). The error will be KErrNotReady for a request that was made out of the correct sequence. The error will be KErrAccessDenied for a Reserve() request that failed because a higher priority client already controls the camera.

ImageBufferReady ( MCameraBuffer &, TInt )

voidImageBufferReady(MCameraBuffer &aCameraBuffer,
TIntaError
)[pure virtual]

Notifies the client of a new captured camera image. Called asynchronously when CCamera::CaptureImage() completes.

Note:

If new image capture classes used, then this callback will not be used. Refer MCaptureImageObserver

ParameterDescription
aCameraBufferA reference to an MCameraBuffer if successful, or NULL if not successful.
aErrorKErrNone if successful, or an error code if not successful.

VideoBufferReady ( MCameraBuffer &, TInt )

voidVideoBufferReady(MCameraBuffer &aCameraBuffer,
TIntaError
)[pure virtual]

Notifies the client of new captured video. Called asynchronously and periodically after CCamera::StartVideoCapture() is called. The buffer has been filled with the required number of video frames specified PrepareVideoCaptureL().

ParameterDescription
aCameraBufferA reference to an MCameraBuffer if successful, or NULL if not successful.
aErrorKErrNone if successful, or an error code if not successful.

ViewFinderReady ( MCameraBuffer &, TInt )

voidViewFinderReady(MCameraBuffer &aCameraBuffer,
TIntaError
)[pure virtual]

Notifies client of new view finder data. Called periodically in response to the use of CCamera::StartViewFinderL().

ParameterDescription
aCameraBufferA reference to an MCameraBuffer if successful, or NULL if not successful.
aErrorKErrNone if successful, or an error code if not successful.