MCameraImageProcessing2 Class Reference

class MCameraImageProcessing2

Mixin class for implementation of extended features like color swap and color accent processing by providers of the Image Processing Camera Extension API.

Member Functions Documentation

CancelColorAccentL()

voidCancelColorAccentL()[pure virtual]

Cancel the color accent process.

leave
May leave as a result of some error.
Note:

Used to cancel the color accent process which might have been just started. If the issued StartColorAccentL() gets cancelled, its event should report KErrCancel.

CancelColorSwappingL()

voidCancelColorSwappingL()[pure virtual]

Cancel the color swapping process.

leave
May leave as a result of some error.
Note:

Used to cancel the color swapping process which might have been just started. If the issued StartColorSwappingL() gets cancelled, its event should report KErrCancel.

GetColorAccentCapabilitiesL(TInt, CCamera::CCameraImageProcessing::TColorOperationCapabilities &)

voidGetColorAccentCapabilitiesL(TIntaIndex,
CCamera::CCameraImageProcessing::TColorOperationCapabilities &aColorAccentCapabilities
)const [pure virtual]

Retrieves the color accent capabilites per entry, if different entries have different capabilities otherwise the same capabilities retrieved for a particular entry can be assumed to be valid for every entry

leave
May leave as a result of some error.

Parameters

TInt aIndexThis is a value from 0 to numOfSimultaneousColorAccent -1. Color accent capabilities specific to a particular entry are retrieved. If uniform capability exists for every entry, then this method need not be called per entry.
CCamera::CCameraImageProcessing::TColorOperationCapabilities & aColorAccentCapabilitiesThis retrieves the color accent capabilities.

GetColorAccentEntryL(TInt, CCamera::CCameraImageProcessing::TColorOperationEntry &)

voidGetColorAccentEntryL(TIntaIndex,
CCamera::CCameraImageProcessing::TColorOperationEntry &aColorAccentParameters
)const [pure virtual]

Get the details of the color accent entry corresponding to the given index

leave
May leave as a result of some error.

Parameters

TInt aIndexThis gives the color accent entry whose information has to be retrieved.
CCamera::CCameraImageProcessing::TColorOperationEntry & aColorAccentParametersThis contains the parameters currently being used by the color accent operation for the given entry. The parameters defined for target colors in TColorOperationEntry are redundant for color accent.

GetColorSwapCapabilitiesL(TInt, CCamera::CCameraImageProcessing::TColorOperationCapabilities &)

voidGetColorSwapCapabilitiesL(TIntaIndex,
CCamera::CCameraImageProcessing::TColorOperationCapabilities &aColorSwapCapabilities
)const [pure virtual]

Retrieves the color swapping capabilites per entry, if different entries have different capabilities otherwise the same capabilities retrieved for a particular entry can be assumed to be valid for every entry

leave
May leave as a result of some error.

Parameters

TInt aIndexThis is a value from 0 to numOfSimultaneousColorSwappings -1. Color swapping capabilities specific to a particular entry are retrieved. If uniform capability exists for every entry, then this method need not be called per entry.
CCamera::CCameraImageProcessing::TColorOperationCapabilities & aColorSwapCapabilitiesThis retrieves the color swap capabilities.

GetColorSwapEntryL(TInt, CCamera::CCameraImageProcessing::TColorOperationEntry &)

voidGetColorSwapEntryL(TIntaIndex,
CCamera::CCameraImageProcessing::TColorOperationEntry &aColorSwapParameters
)const [pure virtual]

Get the details of the color swap entry corresponding to the given index

leave
May leave as a result of some error.

Parameters

TInt aIndexThis gives the color swapping entry whose information has to be retrieved.
CCamera::CCameraImageProcessing::TColorOperationEntry & aColorSwapParametersThis contains the parameters currently being used by the color swapping operation for the given entry.

GetConcurrentColorAccentSupportedL(TInt &)

voidGetConcurrentColorAccentSupportedL(TInt &aConcurrentColorAccentSupported)const [pure virtual]

Retrieves the maximum number of color entries on which simultaneous color accent process is possible.

leave
May leave as a result of some error.

Parameters

TInt & aConcurrentColorAccentSupportedRetrieves the number of color entries on which simultaneous color accent process is possible. Retrieves 0 when color accent process is not supported.

GetConcurrentColorSwappingsSupportedL(TInt &)

voidGetConcurrentColorSwappingsSupportedL(TInt &aConcurrentColorSwappingSupported)const [pure virtual]

Retrieves the maximum number of simultaneous color swapping possible.

leave
May leave as a result of some error.

Parameters

TInt & aConcurrentColorSwappingSupportedRetrieves the number of simultaneous color swapping supported. Retrieves 0 when swapping feature is not supported.

Release()

voidRelease()[pure virtual]

Releases the interface.

RemoveColorAccentEntry(TInt)

voidRemoveColorAccentEntry(TIntaIndex)[pure virtual]

Removes the color accent entry corresponding to the given index

Note:

Triggers KUidECamEventCIPRemoveColorAccentEntry to all MCameraObserver2 clients of the camera. HandleEvent is used to report the result or any possible error. TECAMEvent2 class should be used in order to provide the entry no. of the color being removed. Implementation Hint: On success, entry status (iEntryStatus) for that entry should be set to TValueInfo::ENotActive and saved on the implementation side.

Parameters

TInt aIndexThis gives the color accent entry to be removed.

RemoveColorSwapEntry(TInt)

voidRemoveColorSwapEntry(TIntaIndex)[pure virtual]

Removes the color swap entry corresponding to the given index

Note:

Triggers KUidECamEventCIPRemoveColorSwapEntry to all MCameraObserver2 clients of the camera. HandleEvent is used to report the result or any possible error. TECAMEvent2 class should be used in order to provide the entry no. of the color being removed. Implementation Hint: On success, entry status (iEntryStatus) for that entry should be set to TValueInfo::ENotActive and saved on the implementation side.

Parameters

TInt aIndexThis gives the color swapping entry to be removed.

SetColorAccentEntry(TInt, const CCamera::CCameraImageProcessing::TColorOperationEntry &)

voidSetColorAccentEntry(TIntaIndex,
const CCamera::CCameraImageProcessing::TColorOperationEntry &aColorAccentParameters
)[pure virtual]

Set the color accent entries

Note:

Triggers KUidECamEventCIPSetColorAccentEntry to all MCameraObserver2 clients of the camera. HandleEvent is used to report the result or any possible error. TECAMEvent2 class should be used in order to provide the entry no. of the color being set. Implementation Hint: On success, entry status (iEntryStatus) for that entry should be set to TValueInfo::EDiscreteSteps and saved on the implementation side.

Parameters

TInt aIndexThis is a value from 0 to numOfSimultaneousColorAccent -1. This helps in managing the limited no. of simultaneous color accent. If parameters are already set for the given entry, then it's up to the implementation to replace the existing one or discard it.
const CCamera::CCameraImageProcessing::TColorOperationEntry & aColorAccentParametersThe parameters necessary to define clearly the color accent operation for the given entry. iEntryStatus has to be updated by the implementation as per the result of the setting operation. So, iEntryStatus value is redundant at this point. The parameters defined for target colors in TColorOperationEntry are redundant for color accent.

SetColorSwapEntry(TInt, const CCamera::CCameraImageProcessing::TColorOperationEntry &)

voidSetColorSwapEntry(TIntaIndex,
const CCamera::CCameraImageProcessing::TColorOperationEntry &aColorSwapParameters
)[pure virtual]

Set the color swap entries

Note:

Triggers KUidECamEventCIPSetColorSwapEntry to all MCameraObserver2 clients of the camera. HandleEvent is used to report the result or any possible error. TECAMEvent2 class should be used in order to provide the entry no. of the color being set. Implementation Hint: On success, entry status (iEntryStatus) for that entry should be set to TValueInfo::EDiscreteSteps and saved on the implementation side.

Parameters

TInt aIndexThis is a value from 0 to numOfSimultaneousColorSwappings -1. This helps in managing the limited no. of simultaneous color swaps. If parameters are already set for the given entry, then it's up to the implementation to replace the existing one or discard it.
const CCamera::CCameraImageProcessing::TColorOperationEntry & aColorSwapParametersThe parameters necessary to define clearly the color swapping operation for the given entry. iEntryStatus has to be updated by the implementation as per the result of the setting operation. So, iEntryStatus value is redundant at this point.

StartColorAccent()

voidStartColorAccent()[pure virtual]

Starts the color accent process after taking into account the color accent entries updated up to this point.

Note:

Triggers KUidECamEventCIPStartColorAccent to all MCameraObserver2 clients of the camera. HandleEvent is used to report the result or any possible error.

StartColorSwapping()

voidStartColorSwapping()[pure virtual]

Starts the color swapping process after taking into account the color swap entries updated up to this point.

Note:

Triggers KUidECamEventCIPStartColorSwap to all MCameraObserver2 clients of the camera. HandleEvent is used to report the result or any possible error. One possible error case is when more than one entry describe the same color source. New ecam error KErrECamColorOperationConflict used in such a case.