MCameraAdvancedSettings4 Class Reference

class MCameraAdvancedSettings4

Mixin class for implementation by providers of 'advanced camera feature extensions' of the Advanced Settings Camera Extension API.

Member Functions Documentation

CreateContinuousZoomImplFactoryL(MImplementationFactory *&)

void CreateContinuousZoomImplFactoryL ( MImplementationFactory *& aImplFactoryPtr ) const [pure virtual]

Retrieves the concrete factory handle for the continuous zoom implementation.

leave
May leave with any error code.

Parameters

MImplementationFactory *& aImplFactoryPtr The concrete factory handle for the continuous zoom implementation.

EnumerateOperationPreferenceL(TUint, CCamera::CCameraAdvancedSettings::TPerformanceLevel &, CCamera::CCameraAdvancedSettings::TPerformanceLevel &, CCamera::CCameraAdvancedSettings::TPerformanceLevel &, CCamera::CCameraAdvancedSettings::TPerformanceLevel &)

void EnumerateOperationPreferenceL ( TUint aOperationPreferenceIndex,
CCamera::CCameraAdvancedSettings::TPerformanceLevel & aSpeedLevel,
CCamera::CCameraAdvancedSettings::TPerformanceLevel & aQualityLevel,
CCamera::CCameraAdvancedSettings::TPerformanceLevel & aLowMemoryConsumptionLevel,
CCamera::CCameraAdvancedSettings::TPerformanceLevel & aLowPowerConsumptionLevel
) const [pure virtual]

Enumerate the available operation preferences.

Note:

It is up to the implementation how the performance levels are achieved. For example, shutter opening, JPEQ quality and parallel buffering in case of streamed image output can be controlled in order to provide the desired performance.

leave
May leave with any error code.

Parameters

TUint aOperationPreferenceIndex A particular index which represents an operation preference. The level of different performance vectors may be known through other arguments. This varies from 0 to n-1, where n is given by GetNumOperationPreferenceL(n).
CCamera::CCameraAdvancedSettings::TPerformanceLevel & aSpeedLevel A TPerformanceLevel which specifies the speed level related to the index aOperationPreferenceIndex.
CCamera::CCameraAdvancedSettings::TPerformanceLevel & aQualityLevel A TPerformanceLevel which specifies the quality level related to the index aOperationPreferenceIndex.
CCamera::CCameraAdvancedSettings::TPerformanceLevel & aLowMemoryConsumptionLevel A TPerformanceLevel which specifies the low memory consumption level related to the index aOperationPreferenceIndex. The lower the memory consumption, the higher the level.
CCamera::CCameraAdvancedSettings::TPerformanceLevel & aLowPowerConsumptionLevel A TPerformanceLevel which specifies the low power consumption level related to the index aOperationPreferenceIndex. The lower the power consumption, the higher the level.

GetFocalLengthInfoL(TInt &, TInt &, TInt &)

void GetFocalLengthInfoL ( TInt & aMinFocalLength,
TInt & aCurrentFocalLength,
TInt & aMaxFocalLength
) const [pure virtual]

Retrieves the minimum, current and maximum focal length in millimeters. This information is useful to find out which zoom directions can be used on the fly.

leave
May leave with any error code.

Parameters

TInt & aMinFocalLength Minimum focal length if positive. Error value if negative (for example, KErrNotFound if information not available).
TInt & aCurrentFocalLength Current focal length if positive. Error value if negative (for example, KErrNotFound if information not available).
TInt & aMaxFocalLength Maximum focal length if positive. Error value if negative (for example, KErrNotFound if information not available).

GetIndirectFeatureChangesL(TUid, RArray< TUid > &)

void GetIndirectFeatureChangesL ( TUid aRequestedSetting,
RArray < TUid > & aIndirectFeatureChanges
) const [pure virtual]

Retrieves the indirect feature changes which occur because of a particular requested feature change. Since the camera setting operation is asynchronous in nature, changing a particular camera feature, in certain cases, involves indirectly changing another feature. In order to notify the ECam client about this indirect feature change, event KUidECamEvent2IndirectFeatureChange is issued. After this notification, the client may use this method to retrieve the full list of indirect feature changes.

leave
May leave with any error code.

Parameters

TUid aRequestedSetting The actual requested feature change. This uid is supposed to be ECAM component wide and not restricted to advanced camera settings.
RArray < TUid > & aIndirectFeatureChanges An array of uids which retrieves the indirect feature changes. These uids are supposed to be ECAM component wide and not restricted to advanced camera settings.

GetNumOperationPreferenceL(TUint &)

void GetNumOperationPreferenceL ( TUint & aNumOperationPreferenceSupported ) const [pure virtual]

Retrieves the total number of operation preferences supported by the implementation. Operation preferences are specified in terms of performance vectors, that is, speed, quality, low memory consumption and low power consumption.

leave
May leave with any error code.

Parameters

TUint & aNumOperationPreferenceSupported Retrieves the number of operation preferences supported.

GetOperationPreferenceL(TInt &)

void GetOperationPreferenceL ( TInt & aOperationPreferenceIndex ) const [pure virtual]

Get the current operation preference being used.

leave
May leave with any error code.

Parameters

TInt & aOperationPreferenceIndex Currently used operation preference index.

GetSupportedContinuousZoomTypeL(TUint &)

void GetSupportedContinuousZoomTypeL ( TUint & aSupportedContinuousZoomType ) const [pure virtual]

Retrieves the supported continuous zoom types.

leave
May leave with any error code.

Parameters

TUint & aSupportedContinuousZoomType Retrieves a bitfield of TUint which indicates the supported continuous zoom type as given by CCamera::CCameraAdvancedSettings::TContinuousZoomType

GetSupportedEventsL(RArray< TUid > &)

void GetSupportedEventsL ( RArray < TUid > & aSupportedEvents ) const [pure virtual]

Retrieves the event uids which the underlying implementation supports. The client may use these events notifications as milestones in their application.

leave
May leave with any error code.
Note:

This method may retrieve unrecognized events which may be introduced later on.

Parameters

RArray < TUid > & aSupportedEvents Retrieves as array of TUid. Every member of the array represents a supported event uid. These events are ECAM component wide.

Release()

void Release ( ) [pure virtual]

Releases the interface.

SetOperationPreference(TUint)

void SetOperationPreference ( TUint aOperationPreferenceIndex ) [pure virtual]

Set a particular operation preference.

Note:

Event KUidECamEventCameraSettingOperationPreference is used to notify clients about setting an operation preference.

Parameters

TUint aOperationPreferenceIndex An index which reveals a set of levels to be used for performance vectors, that is, speed, quality, low memory consumption and low power consumption.