class CCamera::CCameraContinuousZoom : public CBase |
This API is used to provide advanced continuous zoom support to the user.
This class is not directly created by the client but instead created via CCameraAdvancedSettings::CreateContinuousZoomL() . Ownership of the object is passed back to the client.
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.
Public Member Functions | |
---|---|
~CCameraContinuousZoom () | |
IMPORT_C void | GetContinuousZoomId ( TInt &) |
IMPORT_C void | GetContinuousZoomSupportInfoL ( CCamera::CCameraAdvancedSettings::TContinuousZoomSupportInfo &) |
IMPORT_C void | StartContinuousZoomL ( CCamera::CCameraAdvancedSettings::TContinuousZoomParameters ) |
IMPORT_C void | StopContinuousZoom () |
Private Member Functions | |
---|---|
CCameraContinuousZoom () | |
void | ConstructL ( MContinuousZoomObserver &, CCamera::CCameraAdvancedSettings::TContinuousZoomType , const MImplementationFactory &) |
CCameraContinuousZoom * | CreateL ( MContinuousZoomObserver &, CCamera::CCameraAdvancedSettings::TContinuousZoomType , const MImplementationFactory &) |
Private Attributes | |
---|---|
MCameraContinuousZoom * | iImpl |
void | ConstructL | ( | MContinuousZoomObserver & | aObserver, |
CCamera::CCameraAdvancedSettings::TContinuousZoomType | aContinuousZoomType, | |||
const MImplementationFactory & | aImplFactory | |||
) | [private] |
CCameraContinuousZoom second phase constructor.
Function used to initialise internal state of the object.
MContinuousZoomObserver & aObserver | Continuous zoom observer which is passed to the implementation so it can provide callbacks to the client. |
CCamera::CCameraAdvancedSettings::TContinuousZoomType aContinuousZoomType | The continuous zoom type that the implementation will be initialised with. |
const MImplementationFactory & aImplFactory | A constant reference to the MImplementationFactory derived object. |
CCameraContinuousZoom * | CreateL | ( | MContinuousZoomObserver & | aObserver, |
CCamera::CCameraAdvancedSettings::TContinuousZoomType | aContinuousZoomType, | |||
const MImplementationFactory & | aImplFactory | |||
) | [private, static] |
Factory function that creates a new continuous zoom object.
MContinuousZoomObserver & aObserver | Continuous zoom observer which is passed to the implementation so it can provide callbacks to the client. |
CCamera::CCameraAdvancedSettings::TContinuousZoomType aContinuousZoomType | The continuous zoom type that the implementation will be initialised with. |
const MImplementationFactory & aImplFactory | A constant reference to the MImplementationFactory derived object. |
IMPORT_C void | GetContinuousZoomId | ( | TInt & | aZoomId | ) | const |
Retrieves the unique id of the continuous zoom object. This is used to identify the continuous zoom handle returned to clients via the MContinuousZoomObserver callback.
TInt & aZoomId | The unique id of this Continuous Zoom object. |
IMPORT_C void | GetContinuousZoomSupportInfoL | ( | CCamera::CCameraAdvancedSettings::TContinuousZoomSupportInfo & | aContinuousZoomInfo | ) | const |
Retrieves information about the supported settings related to continuous zoom support.
CCamera::CCameraAdvancedSettings::TContinuousZoomSupportInfo & aContinuousZoomInfo | The information of supported continuous zoom functionality. |
IMPORT_C void | StartContinuousZoomL | ( | CCamera::CCameraAdvancedSettings::TContinuousZoomParameters | aContinuousZoomParameters | ) |
Starts the continuous zoom operation. Clients wil receive MContinuousZoomObserver::ContinuousZoomProgress() callback for intermediate zoom factors achieved. Depending on the implementation, the client may or may not receive this callback for every intermediate zoom factor. Upon completion, the client will receive MContinuousZoomObserver::ContinuousZoomComplete() callback.
If the implementation does not support re-configuring of zoom parameters whilst an existing continuous zoom operation is active then StartContinuousZoomL() will leave with KErrInUse.
If client has selected EDirectionTele zoom direction and the current zoom factor is greater than the target zoom factor, StartContinuousZoomL() will leave with KErrArgument. Similarly, StartContinuousZoomL() will also leave with KErrArgument if client has selected EDirectionWide zoom direction and current zoom factor is less than target zoom factor.
CCamera::CCameraAdvancedSettings::TContinuousZoomParameters aContinuousZoomParameters | The desired parameters to be used for the continuous zoom operation. |
IMPORT_C void | StopContinuousZoom | ( | ) |
Stop any exisiting continuous zoom operation. Since this method is synchronous, no callback shall be issued for the concerned continuous zoom operation.
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.