class MCaptureVideoObserver |
A mixin class to be implemented by the client in order to use the video capture control API(CCameraVideoCaptureControl). The derived class methods are called by the implementation when the video capture operations are ready to be notified accordingly.
Public Member Functions | |
---|---|
void | ClientHistogramReady ( MHistogramV2Buffer *, TInt ) |
void | ClientSnapshotReady ( MCameraBuffer2 *, TInt ) |
TInt | CustomInterface ( TUid , TAny *&) |
void | DirectVideoCaptureFailed ( TInt ) |
void | ImageProcessingFailed ( TInt ) |
void | VideoBufferReady ( MCameraBuffer2 *, TInt ) |
void | ClientHistogramReady | ( | 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.
Client shall use the currently available histogram for the video frames until a new histogram is available.
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. |
void | ClientSnapshotReady | ( | MCameraBuffer2 * | aSnapshotBuffer, |
TInt | aErrorCode | |||
) | [pure virtual] |
Implementation sends this callback in order to notify the client about the availability of client snapshot data for the video being captured.
If a call to CCameraSnapshot::EnableSnapshotL() (on the CCameraVideoCaptureControl instance) is made without a successful call to CCameraSnapshot::PrepareSnapshotL(const TSnapshotParameters& aSnapshotParameters) (on the CCameraVideoCaptureControl instance), then the callback returns KErrBadHandle.
MCameraBuffer2 * aSnapshotBuffer | Pointer to MCameraBuffer2 class object which retrieves the snapshot for the video being captured. 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. |
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.
void | DirectVideoCaptureFailed | ( | TInt | aErrorCode | ) | [pure virtual] |
Implementation sends this callback in order to notify the client about the failure of direct video capture operation.
TInt aErrorCode | The reason of failure of the direct video capture. The error code could be ECam specific. Client shall be prepared to handle unrecognized error code. |
void | ImageProcessingFailed | ( | TInt | aErrorCode | ) | [pure virtual] |
Implementation sends this callback in order to notify the client about the failure of image processing for the video frames.
TInt aErrorCode | The reason of failure of the image processing. |
void | VideoBufferReady | ( | MCameraBuffer2 * | aVideoBuffer, |
TInt | aErrorCode | |||
) | [pure virtual] |
Implementation sends this callback in order to notify the client about the availability of video frames.
MCameraBuffer2 * aVideoBuffer | Pointer to MCameraBuffer2 class object which retrieves the video frames. 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. |
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.