MCaptureVideoObserver Class Reference
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.
CCamera::CCameraVideoCaptureControl
Member Functions Documentation
ClientHistogramReady(MHistogramV2Buffer *, TInt)
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 video frames until a new histogram is available.
Parameters
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. |
ClientSnapshotReady(MCameraBuffer2 *, TInt)
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.
Parameters
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. |
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. |
DirectVideoCaptureFailed(TInt)
void | DirectVideoCaptureFailed | ( | TInt | aErrorCode | ) | [pure virtual] |
Implementation sends this callback in order to notify the client about the failure of direct video capture operation.
Parameters
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. |
ImageProcessingFailed(TInt)
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.
Parameters
TInt aErrorCode | The reason of failure of the image processing. |
VideoBufferReady(MCameraBuffer2 *, TInt)
Implementation sends this callback in order to notify the client about the availability of video frames.
Parameters
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.