class CCamera::CCameraPostImageCaptureControl : public CBase |
CCameraPostImageCaptureControl class exposes an API for retrieving the image data from individual images (in case continuous drive mode is used for capturing the images) and also to apply control on the captured images individually.
CCameraPostImageCaptureControl instances will be owned by CCameraImageCapture and would be available until new capture command is issued using the owning CCameraImageCapture instance. If client wishes to initiate new capture but preserve the CCameraPostImageCaptureControl instances from previous capture, it would have to create a new CCameraImageCapture instance and use that for the new capture.
This class is not intended for sub-classing and used to standardise existing varieties of implementations.
If the class methods leave, the output type parameter value is not guaranteed to be valid.
The use of this class implies that client will be able to issue image capture call even if previous captures are still outstanding.
Clients must implement an MCaptureImageObserver in order to use this CCameraPostImageCaptureControl API. MCameraObserver2::ImageBufferReady will not be used with this class.
Public Member Functions | |
---|---|
~CCameraPostImageCaptureControl() | |
IMPORT_C void | CancelImage() |
IMPORT_C CCameraPostImageCaptureControl * | CreateL(CCameraImageCapture *, TPostCaptureControlId) |
IMPORT_C void | GetBufferStateL(TBufferState &) |
IMPORT_C void | GetImageBufferL(MCameraImageBuffer &) |
IMPORT_C void | GetImagePriorityL(TECamImagePriority &) |
IMPORT_C void | GetImageSequenceNumberL(TUint &) |
IMPORT_C void | GetImageStateL(TImageState &) |
IMPORT_C void | GetPostCaptureControlId(TPostCaptureControlId &) |
IMPORT_C CCamera::CCameraImageCapture * | ImageCaptureHandle() |
IMPORT_C void | PauseProcessing(TUint) |
IMPORT_C void | ResumeProcessingL(TUint) |
IMPORT_C void | SetImagePriorityL(TECamImagePriority) |
Private Member Functions | |
---|---|
CCameraPostImageCaptureControl(CCamera::CCameraImageCapture *, TPostCaptureControlId) | |
void | ConstructL() |
Public Member Enumerations | |
---|---|
enum | TBufferState { EBufferNotPresent, EBufferReady, EBufferReleased } |
enum | TImageState { EProcessingPending, EProcessingOngoing, EProcessingCancelled, EProcessingCompleted } |
Private Attributes | |
---|---|
CCamera::CCameraImageCapture * | iCameraImageCapture |
MCameraPostImageCaptureControl * | iImpl |
TPostCaptureControlId | iPostCaptureControlId |
CCameraPostImageCaptureControl | ( | CCamera::CCameraImageCapture * | aCameraImageCapture, |
TPostCaptureControlId | aPostCaptureControlId | ||
) | [private] |
CCamera::CCameraImageCapture * aCameraImageCapture | |
TPostCaptureControlId aPostCaptureControlId |
IMPORT_C CCameraPostImageCaptureControl * | CreateL | ( | CCameraImageCapture * | aCameraImageCapture, |
TPostCaptureControlId | aPostCaptureControlId | |||
) | [static] |
CCameraImageCapture * aCameraImageCapture | |
TPostCaptureControlId aPostCaptureControlId |
IMPORT_C void | GetBufferStateL | ( | TBufferState & | aBufferState | ) | const |
TBufferState & aBufferState |
IMPORT_C void | GetImageBufferL | ( | MCameraImageBuffer & | aCameraImageBuffer | ) | const |
MCameraImageBuffer & aCameraImageBuffer |
IMPORT_C void | GetImagePriorityL | ( | TECamImagePriority & | aImagePriority | ) | const |
TECamImagePriority & aImagePriority |
IMPORT_C void | GetImageSequenceNumberL | ( | TUint & | aSequenceNumber | ) | const |
TUint & aSequenceNumber |
IMPORT_C void | GetImageStateL | ( | TImageState & | aImageState | ) | const |
TImageState & aImageState |
IMPORT_C void | GetPostCaptureControlId | ( | TPostCaptureControlId & | aPostCaptureControlId | ) | const |
TPostCaptureControlId & aPostCaptureControlId |
IMPORT_C void | PauseProcessing | ( | TUint | aProcessingTypes | ) |
TUint aProcessingTypes |
IMPORT_C void | ResumeProcessingL | ( | TUint | aProcessingTypes | ) |
TUint aProcessingTypes |
IMPORT_C void | SetImagePriorityL | ( | TECamImagePriority | aImagePriority | ) |
TECamImagePriority aImagePriority |
Specifies the various states in which the individual image buffers could be. The enumeration list may be extended in future.
EBufferNotPresent |
If Direct Saving option used, then user accessible buffers are not present. Hence buffer state will always be EBufferNotPresent. If Direct Saving option not used, this buffer state implies that processing options have not been completed. |
EBufferReady |
This buffer state implies that processing options have been completed. Client may retrieve the image buffers once this state is reached. |
EBufferReleased |
This buffer state implies that client has released the image buffers after retrieving the data. |
Specifies the various states in which the individual images could be. The enumeration list may be extended in future.
EProcessingPending |
The image has been exposed to the sensor but still pending for any processing options. |
EProcessingOngoing |
The image is undergoing processing for the required processing options. |
EProcessingCancelled |
The processing options associated with the image has been cancelled. |
EProcessingCompleted |
The processing options associated with the image has been completed. This implies that either the image buffers are ready or the image is directly saved to the file. |
CCamera::CCameraImageCapture * | iCameraImageCapture | [private] |