#include <ecamadvsettings.h>
class CCamera::CCameraAdvancedSettings : public CBase |
CCamera advanced settings class exposes an API for controlling individually digital camera advanced settings. These settings directly relate to the image acquisition phase both for still images and video.
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.
Specifies the different types of auto focus assistant light
Specifies Bracket mode.
Enumerator | Value | Description |
---|---|---|
EBracketModeOff | 0x0000 |
Bracket mode is switched off. Default value. |
EBracketMode3Image | 0x0001 |
Bracket mode on. Three consecutive pictures are taken in order under (-1), on (0), over (+1), where correction magnitude is defined by bracket step size and by TBracketParameter See also: TBracketStep TBracketParameter |
EBracketMode5Image | 0x0002 |
Bracket mode on. Five consecutive pictures are taken in order under (-2),under (-1), on (0), over (+1), over (+2), where correction magnitude is defined by bracket step size and by TBracketParameter See also: TBracketStep TBracketParameter |
Bracket mode parameter value changes by a selected uniform step between successive image shots.
See also: TBracketStep TBracketMode.
Specifies the magnitude of bracketing step. The actual value and availability is parameter dependent.
See also: TBracketParameter
Color channels on which manual gain can be selectively applied. The enumeration list may be extended in future.
Specifies the different types of continuous zoom supported. The enumeration list may be extended in future.
Specifies the drive mode for the camera. This determines how and in what sucession are images shot. EDriveModeSingleShot is the default.
Enumerator | Value | Description |
---|---|---|
EDriveModeAuto | 0x0000 |
Automatic. Default |
EDriveModeSingleShot | 0x0001 |
Camera takes a single image/shot. |
EDriveModeContinuous | 0x0002 |
Camera continuously captures images (as fast as it can) until stopped or out of storage medium. |
EDriveModeBracket | 0x0004 |
Camera is in bracketing mode, producing individual frames. See also: TBracketMode |
EDriveModeBracketMerge | 0x0008 |
Camera is in bracketing mode, but producing a single image. See also: TBracketMode |
EDriveModeTimed | 0x0010 |
camera captures a single shot after specified time period. See also: Timer() |
EDriveModeTimeLapse | 0x0020 |
Camera captures a set of images with an uniform interval between them. See also: TimeLapse() |
EDriveModeBurst | 0x0040 |
Camera captures a set of images as fast as it can, but in batches(bursts). |
EDriveModeTimeNudgeCapture | 0x0080 |
Camera captures a set of images before and after camera capture key press event. Client can specify the amount of pre-capture and post-capture images to be saved via TDriveModeDependentAttributes. The total amount of images to be saved will be pre-capture images + 1 + post-capture images. Note:
This drive mode is only available to clients using the CCamera::New2L() or CCamera::NewDuplicate2L() in addition to the new image capture APIs ie. CCameraPreImageCaptureControl, CCameraImageCapture and CCameraPostImageCaptureControl. |
Specifies flicker removal options. The enumeration list may be extended in future.
Supported focus ranges.
Enumerator | Value | Description |
---|---|---|
EFocusRangeAuto | 0x00 |
Auto. Default |
EFocusRangeMacro | 0x01 |
Focus operates in close range (macro). |
EFocusRangeNormal | 0x02 |
Normal operation. |
EFocusRangeTele | 0x04 |
Extended (tele) operation. |
EFocusRangePortrait | 0x08 |
Focus at larger areas at short to medium distance. |
EFocusRangeSuperMacro | 0x10 |
Optimised macro operation, where depth of field is very shallow and observation area changes quickly. |
EFocusRangeHyperfocal | 0x20 |
All objects at distances from half of the hyperfocal distance out to infinity will be in focus. This gives gives maximum depth of field. This enum value is available from the 'supported' or 'getter' methods only to the API clients using CCamera::New2L() or CCamera::NewDuplicate2L(). |
EFocusRangeInfinite | 0x40 |
When there is a near obstacle or better focus wanted for far away objects. This enum value is available from the 'supported' or 'getter' methods only to the API clients using CCamera::New2L() or CCamera::NewDuplicate2L(). |
Specifies the ISO type supported by the camera. ISO refers to the sensivity of the image sensor and is one of the factors influencing the exposure.
Specifes the type of LED effects available. The enumeration list may be extended in future.
Specifies the various events for which the LED effects could be used. The enumeration list may be extended in future.
Specifies the Metering mode for the camera. EMeteringModeAuto is the default value.
Specifes the type of neutral density filters available. The enumeration list may be extended in future.
Different levels for performance vectors like speed, quality, low memory consumption and low power consumption. The enumeration list may be extended in future.
It is specified as a fraction of (x) horizontal pixel size divided by vertical (y) pixel size. The pixel aspect ratio for square pixels is 1/1.
Enumerator | Value | Description |
---|---|---|
EPixelAspectUnknown | 0x00 |
Pixel ratio undetermined |
EPixelAspect1To1 | 0x01 |
Pixel Ratio 1:1. |
EPixelAspect12To11 | 0x02 |
Pixel Ratio 12:11 |
EEPixelAspect11To10 | 0x04 |
Pixel Ratio 11:10. |
EEPixelAspect59To54 | 0x08 |
Pixel Ratio 59:54. |
EEPixelAspect16To11 | 0x10 |
Pixel Ratio 16:11.
Note:
This value is available only to the API clients using CCamera::New2L() or CCamera::NewDuplicate2L() |
EEPixelAspect10To11 | 0x20 |
Pixel Ratio 10:11.
Note:
This value is available only to the API clients using CCamera::New2L() or CCamera::NewDuplicate2L() |
EEPixelAspect40To33 | 0x40 |
Pixel Ratio 40:33.
Note:
This value is available only to the API clients using CCamera::New2L() or CCamera::NewDuplicate2L() |
Specifies the unfavourable circumstances as pre capture warnings which may be issued before image/video capture.
Enumerator | Value | Description |
---|---|---|
EPCWNone | 0x0000 |
No warnings |
EPCWOverExposure | 0x0001 |
warning to indicate that camera sensor is over exposed |
EPCWUnderExposure | 0x0002 |
warning to indicate that camera sensor is under exposed |
EPCWLowLight | 0x0004 |
warning to indicate that camera operates under insufficient lightning conditions |
EPCWBadFocus | 0x0008 |
warning to indicate that focussing is not optimum. This is valid for manual/fixed focus only |
EPCWHandShakePossible | 0x0010 |
warning to indicate that camera might not be firmly gripped (Tripod required). This is same as long exposure |
EPCWNotEnoughPowerForFlash | 0x0020 |
warning to indicate that camera has not enough power to survive the flash operations (battery discharged) |
EPCWWrongWhiteBalanceValue | 0x0040 |
warning to indicate that the current white balance is not the desired one |
EPCWWrongFlashValue | 0x0080 |
warning to indicate that the current flash value is not the desired one |
EPCWWrongDigiZoomValue | 0x0100 |
warning to indicate that the current digital zoom value is not the desired one |
EPCWDigiZoomBadQuality | 0x0200 |
warning to indicate that the desired digital zoom affects the quality of image |
EPCWFlashNotReady | 0x0400 |
warning to indicate that flash is not ready. Recommendation: user may subscribe for this warning or issue IsFlashReady() also. Using both options is not encouraged |
EPCWGeneralWarning | 0x0800 |
unknown reason |
EPCWFlashOverheated | 0x1000 |
warning to indicate that flash has been overheated. Note:
This value is available only to the API clients using CCamera::New2L() or CCamera::NewDuplicate2L() |
EPCWFlashNotNeeded | 0x2000 |
warning to indicate that flash will not be fired because of enough ambient light. Note:
This value is available only to the API clients using CCamera::New2L() or CCamera::NewDuplicate2L() |
Supported stabilization algorithms, graded on complexity.
Supported magnitudes of stabilization effect when in manual mode.
Specifies stabilization mode of the camera.
video compressors often use narrower than the default range. The nominal Y range is [16:235] and the U and V ranges [16:240].
IMPORT_C TInt | Aperture | ( | ) | const |
Get current aperture value. The default aperture value is ECAM implementation specific and could be either auto aperture or any other supported value.
Returns: Current aperture value as an integer, multiplied by KECamFineResolutionFactor. For example the function will return 280 for the actual aperture of F2.8. Negative value returned means error case (system wide error code) and positive value means current aperture.
IMPORT_C TBool | ApertureExposureLockOn | ( | ) | const |
Gets the current state for aperture and exposure lock.
Returns: ETrue if aperture and exposure values are locked together, EFalse if these are not locked.
IMPORT_C TAutoFocusArea | AutoFocusArea | ( | ) | const |
Gets current chosen auto focus area on the camera.
Returns: a CCamera::TAutoFocusArea value.
IMPORT_C TBool | AutoFocusLockOn | ( | ) | const |
Checks whether AutoFocus value is locked or not.
Returns: whether AutoFocus value is locked or not. ETrue if locked, EFalse otherwise.
IMPORT_C TAutoFocusType | AutoFocusType | ( | ) | const |
Gets current auto focus type on the camera.
See also: TAutoFocusType
Returns: a CCamera::TAutoFocusType value.
IMPORT_C TBool | AutomaticSizeSelectionChangeOn | ( | ) | const |
Retrieves the state for automatic size selection option. Default value is EFalse.
Returns: ETrue if the automatic selection is switched on. Default value is EFalse.
IMPORT_C TBracketMode | BracketMode | ( | ) | const |
Get current bracket mode.
Returns: the current bracket mode TBracketMode.
IMPORT_C TBracketParameter | BracketParameter | ( | ) | const |
Get current bracket parameter.
Returns: the current bracket mode TBracketParameter.
IMPORT_C TBracketStep | BracketStep | ( | ) | const |
Get current bracket step.
Returns: the current bracket mode TBracketStep.
IMPORT_C TInt | BurstImages | ( | ) | const |
: due to memory or image size limitations the actual number may be less.
Returns: the number of images set to capture in burst mode.
IMPORT_C TInt | CameraIndex | ( | ) | const |
Gets current camera index. The index uniquely identifies the camera on the device.
Returns: camera index in the inclusive range of [0:CCamera::CamerasAvailable() - 1].
IMPORT_C TCameraType | CameraType | ( | ) | const |
Gets the type of this camera.
See also: TCameraType
Returns: the type of this camera
IMPORT_C TCameraType | CameraType | ( | TInt | aCameraIndex | ) |
Get the type of a specific camera denoted by its index. A pluggable camera may not necessarily be physically present. The type denotes whether the slot allocated to that index is for pluggable or onboard camera.
See also: TCameraType
Parameter | Description |
---|---|
aCameraIndex | An integer in the range of [0: CCamera::CamerasAvailable()-1]. |
Returns: the TCameraType value for the specific camera. If the index is out of range, the return value is ECameraUnknown.
IMPORT_C TInt | ContinuousAutoFocusTimeout | ( | ) | const |
Gets the current value for continuous autofocus timeout. Timeouts are in microseconds.
Returns: the timeout value in microseconds. Negative value returned means error case (system wide error code) and positive value means current value for continuous autofocus timeout.
IMPORT_C void | CreateContinuousZoomL | ( | MContinuousZoomObserver & | aObserver, |
TContinuousZoomType | aContinuousZoomType, | |||
CCameraContinuousZoom *& | aContinuousZoom | |||
) |
Creates an instance of a CCameraContinuousZoom object and returns it to the client. Ownership of the object is passed to the client.
Client must not delete the continuous zoom object if CCameraContinuousZoom::StartContinuousZoomL() has been called as MContinuousZoomObserver callbacks are still expected by the implementation. Clients should therefore only delete the object once the MContinuousZoomObserver::ContinuousZoomCompleted() callback has been received or has explicitly stopped the continuous zoom via StopContinuousZoom().
Parameter | Description |
---|---|
aObserver | Reference to a continuous zoom observer which will be used to issue callbacks to the client. |
aContinuousZoomType | The continuous zoom type with which the continuous zoom object will be initialised. |
aContinuousZoom | Retrieves pointer to the continuous zoom object. Client assumes ownership of the object. |
IMPORT_C TInt | DigitalZoom | ( | ) | const |
Gets the currently set digital zoom value.
Returns: The currently set digital zoom value. The value is multiplied by KECamFineResolutionFactor to retain precision. Negative value returned means error case (system wide error code) and positive value means current digital zoom.
IMPORT_C void | EnumerateOperationPreferenceL | ( | TUint | aOperationPreferenceIndex, |
TPerformanceLevel & | aSpeedLevel, | |||
TPerformanceLevel & | aQualityLevel, | |||
TPerformanceLevel & | aLowMemoryConsumptionLevel, | |||
TPerformanceLevel & | aLowPowerConsumptionLevel | |||
) | const |
Enumerate the available operation preferences.
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.
Parameter | Description |
---|---|
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). |
aSpeedLevel | A TPerformanceLevel which specifies the speed level related to the index aOperationPreferenceIndex. |
aQualityLevel | A TPerformanceLevel which specifies the quality level related to the index aOperationPreferenceIndex. |
aLowMemoryConsumptionLevel | A TPerformanceLevel which specifies the low memory consumption level related to the index aOperationPreferenceIndex. The lower the memory consumption, the higher the level. |
aLowPowerConsumptionLevel | A TPerformanceLevel which specifies the low power consumption level related to the index aOperationPreferenceIndex. The lower the power consumption, the higher the level. |
IMPORT_C TInt | ExposureCompensation | ( | ) | const |
DeprecatedUse TInt GetExposureCompensation(TInt& aExposureCompensation);
Get the current exposure compensation steps. Positive values increase exposure times, negative reduce exposure times. The change is not cumulative i.e. the change is stateless. Each call assumes no previous compensation has been performed i.e. that there is a zero compensation.
if returned value is 2 (compensation steps) and the current exposure compensation step is 0.3 EV, then the actual compensation effect will be 0.6 EV.
Returns: current number of compensation steps as an integer.
IMPORT_C TInt | ExposureCompensationStep | ( | ) | const |
DeprecatedUse TInt GetExposureCompensationStep(TInt& aExposureCompensationStep);
Get current exposure compensation step.
Returns: the current exposure compensation step.
IMPORT_C TBool | ExposureLockOn | ( | ) | const |
Checks whether exposure value is locked or not.
Returns: whether exposure value is locked or not. ETrue if locked, EFalse otherwise.
IMPORT_C CCamera::TExposure | ExposureMode | ( | ) | const |
Gets the currently set exposure setting value.
Returns: The currently set exposure setting value.
IMPORT_C TInt | FlashCompensation | ( | ) | const |
DeprecatedUse TInt GetFlashCompensation(TInt& aFlashCompensation);
Get the current flash compensation value as integer steps. Positive values boost flash power, negative reduce flash power. The change is not cumulative i.e. the change is stateless. Each call assumes no previous compensation has been performed i.e. that there is a zero compensation.
if returned value is 2 (compensation steps) and the current flash compensation step is 0.3 EV, then the actual compensation effect will be 0.6 EV.
Returns: the current number of compensation steps as an integer.
IMPORT_C TInt | FlashCompensationStep | ( | ) | const |
DeprecatedUse TInt GetFlashCompensationStep(TInt& aFlashCompensationStep);
Get current flash power compensation step.
Returns: current flash compensation step.
IMPORT_C CCamera::TFlash | FlashMode | ( | ) | const |
Gets the currently set flash mode.
Clients not using the CCamera::New2L() or CCamera::NewDuplicate2L() would be given CCamera::EFlashAuto if current flash mode exceeds CCamera::EFlashManual
See also: CCamera::TFlash
Returns: The currently set flash mode.
IMPORT_C TInt | FocusDistance | ( | ) | const |
Get focus distance in millimetres.
Returns: the current focus distance in millimetres, directly from user setting of lenses.
IMPORT_C TFocusMode | FocusMode | ( | ) | const |
Gets current focus mode on the camera. The result is a valid TFocusMode value.
Returns: current focus mode.
IMPORT_C TFocusRange | FocusRange | ( | ) | const |
Gets current focus range on the camera.
if CCamera::New2L() or CCamera::NewDuplicate2L() is not used to create CCamera object, it is assumed that application is not prepared to receive extra added enum values. So, any extra enum value received from the implementation will be dropped and EFocusRangeAuto would be passed instead. To receive extra added enum values, application should rather use CCamera::New2L() or CCamera::NewDuplicate2L() to create camera object. In this case, application is assumed to be prepared to receive unrecognised enum values
Returns: the current TFocusRange value.
IMPORT_C void | GetAFAssistantLightL | ( | TAFAssistantLight & | aAFAssistantLight | ) | const |
Get the type ( and state) of AF assistant light currently set.
Parameter | Description |
---|---|
aAFAssistantLight | A reference to AF assistant light. If EAFAssistantLightOff, then manual and auto assistant light are switched off. If EAFAssistantLightManualOn, manual assistant light is switched on. If EAFAssistantLightAuto, AF assistant light is set to auto. |
Gets an array of all the advanced settings parameters currently active on the camera. These are identified by UIDs and relate to the set or subset of it of all supported settings UIDs.
if CCamera::New2L() or CCamera::NewDuplicate2L() is not used to create CCamera object, it is assumed that application is not prepared to receive extra added uid values (new settings added). So, any extra uid value passed from the implementation will be filtered at this point. To receive extra added uid values, application should rather use CCamera::New2L() or CCamera::NewDuplicate2L() to create camera object. In this case, application is assumed to be prepared to receive unrecognised uid values
Parameter | Description |
---|---|
aActiveSettings | An empty array of TUids which would be populated by the implementation with the active setting UIDs. If the array is empty on return, the camera does not support any settings. |
IMPORT_C void | GetAperturesL | ( | RArray< TInt > & | aFStops, |
TValueInfo & | aInfo | |||
) | const |
Gets the current discrete aperture steps (F-stops) supported by the camera.
When camera device is incapable of revealing the aperture openings supported, it has to be assumed that camera will work only on the parmanently set value. If this value is not known, empty array may be returned and TValueInfo may be ENotActive; corresponding getter/setters for this feature should not be used in such a case.
Parameter | Description |
---|---|
aFStops | A reference to an empty array of TInt which would be populated by the implementation with the specific supported values. If the array is empty on return, the camera supports all integer values in the aperture range. Each value is multiplied by a factor of KECamFineResolutionFactor. |
aInfo | a reference to TValueInfo, which establishes the type of the returned data. |
there must be at least two images to merge. All are assumed to form a sequence and are identified using the first frame index and number of frames e.g. to merge two frames - one on and one +1, when in EBracketMode3Image, one sets the start index to 1 and frames to two.
It is very much TBracketMode setting dependent operation.
Parameter | Description |
---|---|
aStartIndex | the index of the start frame, starts from 0. |
aFrames | the number of frames to be merged. |
IMPORT_C void | GetCurrentFocusModeStepsL | ( | RArray< TInt > & | aFocusModeSteps, |
TValueInfo & | aInfo | |||
) | const |
Get the number of focus steps for current focus mode.
When camera device doesn't support this, empty array may be returned and TValueInfo may be ENotActive; corresponding getter/setters for this feature should not be used in such a case.
Parameter | Description |
---|---|
aFocusModeSteps | A reference to an empty array of TInt which would be populated by the implementation with the specific supported values. |
aInfo | a reference to TValueInfo, which establishes the type of the returned data. |
IMPORT_C void | GetDigitalZoomStepsForStillL | ( | RArray< TInt > & | aDigitalZoomSteps, |
TValueInfo & | aInfo, | |||
TInt | aSizeIndex, | |||
CCamera::TFormat | aFormat, | |||
TBool & | aIsInfluencePossible | |||
) | const |
Get the digital zoom steps for the still image when a particular image format and size are specified.
This method retrieves the supported digital zoom steps irrespective of any stabilization influence. In case of stabilization etc. influence, the setting function should set the best possible digital zoom value and return error KErrECamDigitalZoomLimited along with dedicated event.
When concrete implementation is provided, but camera device does not support this feature, empty array may be returned and TValueInfo may be ENotActive; corresponding getter/setters for this feature should not be used in such a case.
Parameter | Description |
---|---|
aDigitalZoomSteps | A reference to an empty array of TInt to hold digital zoom step values for still image and multiplied by KECamFineResolutionFactor to retain precision. If list returned is empty, this means feature is not supported. |
aInfo | A reference to TValueInfo, which establishes the type of the returned data. |
aSizeIndex | A value providing the size index which must be in the range 0 to TCameraInfo::iNumImageSizesSupported-1 inclusive. |
aFormat | A value providing the image format which must be one of the formats supported. (see TCameraInfo::iImageFormatsSupported) |
aIsInfluencePossible | If True, signals that digital zoom step values may be influenced by some hardware factor like stabilization etc. If False, no influence possible. |
IMPORT_C void | GetDigitalZoomStepsForVideoL | ( | RArray< TInt > & | aDigitalZoomSteps, |
TValueInfo & | aInfo, | |||
TInt | aFrameRateIndex, | |||
TInt | aSizeIndex, | |||
CCamera::TFormat | aFormat, | |||
TBool & | aIsInfluencePossible, | |||
CCamera::TExposure | aExposure | |||
) | const |
Get the digital zoom steps for the video when a particular video frame format, size and rate are specified.
This method retrieves the supported digital zoom steps irrespective of any stabilization influence. In case of stabilization etc. influence, the setting function should set the best possible digital zoom value and return error KErrECamDigitalZoomLimited along with dedicated event.
When concrete implementation is provided, but camera device does not support this feature, empty array may be returned and TValueInfo may be ENotActive; corresponding getter/setters for this feature should not be used in such a case.
Parameter | Description |
---|---|
aDigitalZoomSteps | A reference to an empty array of TInt to hold digital zoom step values for video and multiplied by KECamFineResolutionFactor to retain precision. If list returned is empty, this means feature is not supported. |
aInfo | A reference to TValueInfo, which establishes the type of the returned data. |
aFrameRateIndex | A value providing the rate index must be in the range 0 to TCameraInfo::iNumVideoFrameRatesSupported-1 inclusive. |
aSizeIndex | A value providing the size index which must be in the range 0 to TCameraInfo::iNumVideoFrameSizesSupported-1 inclusive. |
aFormat | A value providing the format which must be one of the video frame formats supported. (see TCameraInfo::iVideoFrameFormatsSupported) |
aIsInfluencePossible | If True, signals that digital zoom step values may be influenced by some hardware factor like stabilization etc. If False, no influence possible. |
aExposure | The exposure mode. |
IMPORT_C void | GetDigitalZoomStepsL | ( | RArray< TInt > & | aDigitalZoomSteps, |
TValueInfo & | aInfo | |||
) | const |
Gets the digital zoom levels.
Such approach allows for support for both linear and non-linear zoom steps. When camera device doesn't support this, empty array may be returned and TValueInfo may be ENotActive; corresponding getter/setters for this feature should not be used in such a case.
Parameter | Description |
---|---|
aDigitalZoomSteps | Array to hold digital zoom values multiplied by KECamFineResolutionFactor to retain precision. So that if zoom is not supported the array will return a single element of value KECamFineResolutionFactor. |
aInfo | a reference to TValueInfo, which establishes the type of the returned data. |
Gets an array of all the advanced settings parameters currently disabled on the camera. These are identified by UIDs and relate to the set or subset of it of all supported settings UIDs.
if CCamera::New2L() or CCamera::NewDuplicate2L() is not used to create CCamera object, it is assumed that application is not prepared to receive extra added uid values (new settings added). So, any extra uid value passed from the implementation will be filtered at this point. To receive extra added uid values, application should rather use CCamera::New2L() or CCamera::NewDuplicate2L() to create camera object. In this case, application is assumed to be prepared to receive unrecognised uid values
Parameter | Description |
---|---|
aDisabledSettings | An empty array of TUids which would be populated by the implementation with the disabled setting UIDs. If the array is empty on return, the camera does not support any settings. |
Get the current exposure compensation steps. Positive values increase exposure times, negative reduce exposure times. The change is not cumulative i.e. the change is stateless. Each call assumes no previous compensation has been performed i.e. that there is a zero compensation.
if retrieved value is 2 (compensation steps) and the current exposure compensation step is 0.3 EV, then the actual compensation effect will be 0.6 EV.
Use this method in place of deprecated TInt ExposureCompensation()
Parameter | Description |
---|---|
aExposureCompensation | Reference to the current number of compensation steps as an integer. |
Returns: system wide error code.
IMPORT_C void | GetExposureCompensationRangeInSteps | ( | TInt & | aNegativeCompensation, |
TInt & | aPositiveCompensation | |||
) | const |
Get current exposure compensation range in steps. It depends on the previously selected exposure compensation step.
See also: GetFlashCompensationRangeInSteps()
Parameter | Description |
---|---|
aNegativeCompensation | reference to an integer returning the maximum number of steps available for negative compensation, |
aPositiveCompensation | reference to an integer returning the maximum number of steps available for positive compensation, |
Get current exposure compensation step.
Use this method in place of deprecated TInt ExposureCompensationStep()
Parameter | Description |
---|---|
aExposureCompensationStep | Reference to the current exposure compensation step. |
Returns: system wide error code.
IMPORT_C void | GetExposureCompensationStepsL | ( | RArray< TInt > & | aExposureCompensationSteps, |
TValueInfo & | aInfo | |||
) | const |
Get exposure compensation steps as integers multiplied by KECamFineResolutionFactor. For example 0.3 EV is 30.
When camera device doesn't support this, empty array may be returned and TValueInfo may be ENotActive; corresponding getter/setters for this feature should not be used in such a case. When camera device is incapable of revealing the exposure compensation steps supported, it has to be assumed that camera will work only on the permanently set value. If this value is not known, empty array may be returned and TValueInfo may be ENotActive; corresponding getter/setters for this feature should not be used in such a case.
Parameter | Description |
---|---|
aExposureCompensationSteps | an RArray of integers which is populated to reflect the supported exposure compensation steps, all values have been multiplied by KECamFineResolutionFactor before truncated to integers. |
aInfo | a reference to TValueInfo, which establishes the type of the returned data. |
Get the current flash compensation value as integer steps. Positive values boost flash power, negative reduce flash power. The change is not cumulative i.e. the change is stateless. Each call assumes no previous compensation has been performed i.e. that there is a zero compensation.
if retrieved value is 2 (compensation steps) and the current flash compensation step is 0.3 EV, then the actual compensation effect will be 0.6 EV.
Use this method in place of deprecated TInt FlashCompensation()
Parameter | Description |
---|---|
aFlashCompensation | Reference to the current number of compensation steps as an integer. |
Returns: system wide error code.
IMPORT_C void | GetFlashCompensationRangeInSteps | ( | TInt & | aNegativeCompensation, |
TInt & | aPositiveCompensation | |||
) | const |
This range may change if a different compensation step is selected. For example if flash compensation range is in the range -1EV 1.5EV and the selected flash compensation step is selected to be 0.3 EV, the result of this call will be aNegativeCompensation = -3 and aPositiveCompensation = 5. as there can be only three full steps for negative compensation (1/0.3) and five for flash power boost (1.5/0.3). In this way developers, having pre-selected a step value from the supported set, would need to provide just the multiplier (in steps) and the direction (the sign). Steps are always assumed integers.
Parameter | Description |
---|---|
aNegativeCompensation | a reference to an integer returning the maximum number of steps available for negative compensation. |
aPositiveCompensation | a reference to an integer returning the maximum number of steps available for positive compensation. |
Get current flash power compensation step.
Use this method in place of deprecated TInt FlashCompensationStep()
Parameter | Description |
---|---|
aFlashCompensationStep | Reference to the current flash compensation step. |
Returns: system wide error code.
IMPORT_C void | GetFlashCompensationStepsL | ( | RArray< TInt > & | aFlashCompensationSteps, |
TValueInfo & | aInfo | |||
) | const |
Get flash compensation steps as integers multiplied by KECamFineResolutionFactor. For example 0.5 EV is 50.
See also: TValueInfo
When camera device doesn't support this, empty array may be returned and TValueInfo may be ENotActive; corresponding getter/setters for this feature should not be used in such a case.
When camera device is incapable of revealing the flash compensation steps supported, it has to be assumed that camera will work only on the parmanently set value. If this value is not known, empty array may be returned and TValueInfo may be ENotActive; corresponding getter/setters for this feature should not be used in such a case.
Parameter | Description |
---|---|
aFlashCompensationSteps | an RArray of integers which is populated on return to reflect the supported flash compensation steps, |
aInfo | an TValueInfo reference, which establishes the organization of the returned data. |
IMPORT_C void | GetFocalLengthInfoL | ( | TInt & | aMinFocalLength, |
TInt & | aCurrentFocalLength, | |||
TInt & | aMaxFocalLength | |||
) | const |
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.
Parameter | Description |
---|---|
aMinFocalLength | Minimum focal length if positive. Error value if negative (for example, KErrNotFound if information not available). |
aCurrentFocalLength | Current focal length if positive. Error value if negative (for example, KErrNotFound if information not available). |
aMaxFocalLength | Maximum focal length if positive. Error value if negative (for example, KErrNotFound if information not available). |
IMPORT_C void | GetISORateL | ( | TISORateType & | aISORateType, |
TInt & | aParam, | |||
TInt & | aISORate | |||
) | const |
Get the type of ISO rate, exposure parameter and value set.
When concrete implementation is provided, but camera device does not support this feature, then aISORateType retrieves EISONone.
Since camera hardware may be incapable of providing the actual ISO value when one of the auto ISO type has been set, then, in these cases, the 3rd argument is retrieved as KErrNotFound.
Parameter | Description |
---|---|
aISORateType | A reference to the type of ISO rate set. EISONone means feature is not supported. |
aParam | Depending on the value of aISORateType, possible values of aParam are one of the following:- A reference to the redundant parameter in case of manual type of ISO rate(EISOManual) OR A reference to the redundant parameter in case of unprioritised type of auto ISO(EISOAutoUnPrioritised) OR A reference to the highest ISO rate that may be picked up in case of ISO prioritised type of auto ISO(EISOAutoISOPrioritised) OR A reference to the slowest shutter speed that may be picked up in case of shutter speed prioritised type of auto ISO(EISOAutoShutterSpeedPrioritised) OR A reference to the minimum aperture opening that may be picked up in case of aperture prioritised type of auto ISO(EISOAutoAperturePrioritised) |
aISORate | A reference to the value of ISO rate currently being used, if camera device is capable of doing that. Otherwise KErrNotFound is retrieved indicating the incapability of camera. |
IMPORT_C void | GetIndirectFeatureChangesL | ( | TUid | aRequestedSetting, |
RArray< TUid > & | aIndirectFeatureChanges | |||
) | const |
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.
Parameter | Description |
---|---|
aRequestedSetting | The actual requested feature change. This uid is supposed to be ECAM component wide and not restricted to advanced camera settings. |
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. |
IMPORT_C void | GetManualFlashPowerLevelsL | ( | RArray< TInt > & | aManualFlashPowerLevels, |
TValueInfo & | aInfo | |||
) | const |
Gets the current discrete manual flash power levels supported by the camera in range 0-100 as a percentage of maximum power level.
When camera device doesn't support this, empty array may be returned and TValueInfo may be ENotActive; corresponding getter/setters for this feature should not be used in such a case. When camera device is incapable of revealing the manual flash power levels supported, it has to be assumed that camera will work only on the permanently set value. If this value is not known, empty array may be returned and TValueInfo may be ENotActive; corresponding getter/setters for this feature should not be used in such a case.
Parameter | Description |
---|---|
aManualFlashPowerLevels | An empty array of TInt which would be populated by the implementation with the specific supported values. If the array is empty on return, the camera does not support this functionality. |
aInfo | a reference to TValueInfo, which establishes the type of the returned data. |
IMPORT_C TInt | GetMinFocalLength | ( | ) | const |
Get minimum focus distance in millimetres
Current Focal length is calculated as focalLength = opticalZoom * minFocalLength;
Returns: the minimum (35 camera equivalent) focal length of a camera.
IMPORT_C void | GetNumOperationPreferenceL | ( | TUint & | aNumOperationPreferenceSupported | ) | const |
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.
Parameter | Description |
---|---|
aNumOperationPreferenceSupported | Retrieves the number of operation preferences supported. |
IMPORT_C void | GetOperationPreferenceL | ( | TInt & | aOperationPreferenceIndex | ) | const |
Get the current operation preference being used.
Parameter | Description |
---|---|
aOperationPreferenceIndex | Currently used operation preference index. |
IMPORT_C void | GetOpticalZoomStepsL | ( | RArray< TInt > & | aOpticalZoomSteps, |
TValueInfo & | aInfo | |||
) | const |
Gets the optical zoom levels.
Such approach allows for support for both linear and non-linear zoom steps. When camera device doesn't support this, empty array may be returned and TValueInfo may be ENotActive; corresponding getter/setters for this feature should not be used in such a case.
Parameter | Description |
---|---|
aOpticalZoomSteps | Array to hold optical zoom values multiplied by KECamFineResolutionFactor to retain precision. So that if zoom is not supported the array will return a single element of value KECamFineResolutionFactor. |
aInfo | a reference to TValueInfo, which establishes the type of the returned data. |
IMPORT_C void | GetPreCaptureWarningL | ( | TInt & | aPreCaptureWarning | ) | const |
Get the status of every warnings defined.
This method may be called after receiving the event KUidECamEventCameraSettingPreCaptureWarning OR user may also opt for polling on this.
Parameter | Description |
---|---|
aPreCaptureWarning | A reference to the integer - bitfield representing all the TPreCaptureWarning types issued. |
IMPORT_C void | GetPreCaptureWarningSupportedL | ( | TCameraMode | aCameraMode, |
TInt & | aPreCaptureWarningSupported | |||
) | const |
Retrieves the pre capture warnings supported for a given camera mode
Parameter | Description |
---|---|
aCameraMode | Desired camera mode for which the supported pre capture warnings may be retrieved. |
aPreCaptureWarningSupported | A bitfield of all supported TPreCaptureWarning to be issued in the given camera mode. If no pre capture warning supported for the given camera mode, EPCWNone is retrieved. |
IMPORT_C void | GetShutterSpeedsL | ( | RArray< TInt > & | aShutterSpeeds, |
TValueInfo & | aInfo | |||
) | const |
Gets the set of supported shutter speeds.
When camera device is incapable of revealing the shutter speeds supported, it has to be assumed that camera will work only on the parmanently set value. If this value is not known, empty array may be returned and TValueInfo may be ENotActive; corresponding getter/setters for this feature should not be used in such a case.
Parameter | Description |
---|---|
aShutterSpeeds | a reference to an RArray of TInt representing the discrete shutter speeds supported currently by the camera. |
aInfo | a reference to TValueInfo, which establishes the type of the returned data. |
Returns: the populated array with all shutter speeds in microseconds.
IMPORT_C void | GetSupportedAFAssistantLightL | ( | TInt & | aSupportedAFAssistantLight | ) | const |
Retrieve the different supported AF assistant light.
When concrete implementation is provided, but camera device does not support this feature, then aSupportedAFAssistantLight retrieves EAFAssistantLightOff. Corresponding getter/setters for this feature should not be called then.
Parameter | Description |
---|---|
aSupportedAFAssistantLight | A reference to integer - bitfield indicating the supported AF assistant light. If EAFAssistantLightOff, this means AF assistant light is not supported. If EAFAssistantLightManualOn, then manual AF assistant light is supported. If EAFAssistantLightAuto, auto assistant light is supported. If combination of EAFAssistantLightManualOn||EAFAssistantLightAuto , then both manual and Auto assistant light are supported. |
IMPORT_C void | GetSupportedContinuousAutoFocusTimeoutsL | ( | RArray< TInt > & | aTimeouts, |
TValueInfo & | aInfo | |||
) | const |
Retrieves the timeout values camera supported by the camera when in continuous auto focus mode. Timeouts are in microseconds.
When camera device doesn't support this, empty array may be returned and TValueInfo may be ENotActive; corresponding getter/setters for this feature should not be used in such a case.
Parameter | Description |
---|---|
aTimeouts | An empty array to hold timeout values. |
aInfo | a reference to TValueInfo, which establishes the type of the returned data. |
IMPORT_C void | GetSupportedContinuousZoomTypeL | ( | TUint & | aSupportedContinuousZoomType | ) | const |
Retrieves the supported continuous zoom types.
Parameter | Description |
---|---|
aSupportedContinuousZoomType | Retrieves a bitfield of TUint which indicates the supported continuous zoom type as given by CCamera::CCameraAdvancedSettings::TContinuousZoomType |
Retrieves the event uids which the underlying implementation supports. Client may use these event notifications as milestones in their application.
This method may retrieve unrecognized events which may be introduced later on.
Parameter | Description |
---|---|
aSupportedEvents | Retrieves as array of TUid. Every member of the array represents a supported event uid. These events are ECAM component wide. |
IMPORT_C void | GetSupportedISORateTypeL | ( | TInt & | aSupportedISORateTypes | ) | const |
Gets all supported ISO types on the device.
When concrete implementation is provided, but camera device does not support this feature, then aSupportedISORateTypes retrieves EISONone.
Parameter | Description |
---|---|
aSupportedISORateTypes | A reference to an integer which is a bitfield of all supported TISORateType values. EISONone means feature is not supported. |
Gets the set of camera supported ISO rates.
When camera device is incapable of revealing the ISO rates supported, it has to be assumed that camera will work only on the permanently set value. If this value is not known, empty array may be returned; corresponding getter/setters for this feature should not be used in such a case.
Parameter | Description |
---|---|
aSupportedIsoRates | an array of integers which gets filled with the supported ISO rates. |
Gets an array of all the advanced settings parameters supported by the camera. These are identified by UIDs and relate to the set or subset of it of all defined settings UIDs.
if CCamera::New2L() or CCamera::NewDuplicate2L() is not used to create CCamera object, it is assumed that application is not prepared to receive extra added uid values (new settings added). So, any extra uid value passed from the implementation will be filtered at this point. To receive extra added uid values, application should rather use CCamera::New2L() or CCamera::NewDuplicate2L() to create camera object. In this case, application is assumed to be prepared to receive unrecognised uid values
Parameter | Description |
---|---|
aSettings | An empty array of TUids which would be populated by the implementation with the UIDs of the supported parameters. If the array is empty on return, the camera does not support any settings. |
Get current time lapse value. Active only when drive mode EDriveModeTimeLapse. The time lapse is denoted as the uniform time period between consecutive frames and operation is configurable by its start, end and a fixed interval.
Parameter | Description |
---|---|
aStart | the start of the timelapse period. |
aEnd | the end of the timelapse period; start < end. |
aInterval | the set parameter between two successive snapshots. |
Get camera supported time lapse period range. Active only when drive mode EDriveModeTimeLapse. The time lapse is denoted as the uniform time period between consecutive frames.
Parameter | Description |
---|---|
aTimeLapseMin | The minimum time value. |
aTimeLapseMax | The maximum time value. |
IMPORT_C void | GetTimerIntervalsL | ( | RArray< TInt > & | aTimerIntervals, |
TValueInfo & | aInfo | |||
) | const |
Get camera supported timer values. Active only when drive mode EDriveModeTimed. Time is in microseconds. As time interval is expected to be relatively short, integer value is considered sufficient.
See also: TValueInfo
When camera device doesn't support this, empty array may be returned and TValueInfo may be ENotActive; corresponding getter/setters for this feature should not be used in such a case.
Parameter | Description |
---|---|
aTimerIntervals | an RArray of integers which is populated to reflect the supported timer interval steps. |
aInfo | an TValueInfo reference, which establishes the organization of the returned data. |
IMPORT_C void | GetWBSupportedColorTemperaturesL | ( | RArray< TInt > & | aWBColorTemperatures, |
TValueInfo & | aInfo | |||
) | const |
Get the white balance values, as temperature measured in Kelvin, supported on the camera.
When camera device doesn't support this, empty array may be returned and TValueInfo may be ENotActive; corresponding getter/setters for this feature should not be used in such a case.
Parameter | Description |
---|---|
aWBColorTemperatures | A reference to an empty array of TInt which would be populated by the implementation with the specific supported values. |
aInfo | a reference to TValueInfo, which establishes the type of the returned data. |
IMPORT_C TBool | IsCameraPresent | ( | ) | const |
Checks whether the current camera is present.
Returns: Whether the camera is currently present. ETrue if camera is present, EFalse otherwise. For example ECameraOnBoard (built-in) cameras are always present.
Checks whether the camera, denoted by its index, is currently present. The index uniquely identifies the camera on the device.
Parameter | Description |
---|---|
aCameraIndex | An integer in the range of [0:CCamera::CamerasAvailable()-1] specifying the camera device to use |
Returns: Whether the camera is currently present. ETrue if camera is present, EFalse otherwise. For example built-in (ECameraOnBoard) cameras are always present.
IMPORT_C TBool | IsExternalFlashPresent | ( | ) | const |
Check whether there is an external flash source.
Returns: ETrue if an external flash source is present, EFalse otherwise
IMPORT_C TInt | IsoRate | ( | ) | const |
Gets current ISO rate.
The returned value may be checked with the list of supported ISO rates. If value returned does not belong to this list, then it may be treated as an error case.
Returns: current ISO rate as a TInt value. Negative value returned means error case (system wide error code) and positive value means current ISO rate.
IMPORT_C TInt | ManualFlashPowerLevel | ( | ) | const |
Gets the current manual flash power level on the camera.
Returns: the current manual flash power level as a value in the range [0:100]. Negative value returned means error case (system wide error code) and positive value means current manual flash power level.
IMPORT_C TMeteringMode | MeteringMode | ( | ) | const |
Get current metering mode.
Returns: a value of type TMeteringMode.
IMPORT_C CCameraAdvancedSettings * | NewL | ( | CCamera & | aCamera | ) | [static] |
Factory function for creating the CCameraAdvancedSettings object.
Clients using MCameraObserver are not recommended to use this extension class since they cannot handle events.
Parameter | Description |
---|---|
aCamera | a reference to a CCamera object providing the settings. |
Returns: a pointer to a fully constructed CCameraAdvancedSettings object.
IMPORT_C TInt | OpticalZoom | ( | ) | const |
Gets the currently set zoom value.
Returns: The currently set optical zoom value. The value is multiplied by KECamFineResolutionFactor to retain precision. Negative value returned means error case (system wide error code) and positive value means current optical zoom.
IMPORT_C TPictureOrientation | PictureOrientation | ( | ) | const |
Get current picture orientation
Returns: a TPictureOrientation value.
IMPORT_C TPixelAspectRatio | PixelAspectRatio | ( | ) | const |
Get current pixel aspect ratio.
Some of the pixel aspect ratios are available only for clients using either CCamera::New2L() or CCamera::NewDuplicate2L()
Returns: a TPixelAspectRatio value.
IMPORT_C TBool | RedEyeReduceOn | ( | ) | const |
Gets whether the flash red eye reduction is switched on.
Returns: The present state - ETrue for switched on and EFalse for switched off.
IMPORT_C void | SetAFAssistantLightL | ( | TAFAssistantLight | aAFAssistantLight | ) |
Set a particular type ( and state) of AF assistant light.
Triggers KUidECamEventCameraSettingAFAssistantLight to all MCameraObserver2 clients of the camera. HandleEvent is used to report the result or any possible error. New setter functions leave only when implementation is not there.
Parameter | Description |
---|---|
aAFAssistantLight | Type of AF assistant light to be set. If EAFAssistantLightOff, switch off the manual or auto assistant light. If EAFAssistantLightManualOn, manually switch on the assistant light. If EAFAssistantLightAuto, camera will automatically switch it on/off as per the conditions. |
IMPORT_C void | SetAperture | ( | TInt | aFStop | ) |
Set a new aperture value. All MCameraObserver2 clients of the camera receive a KUidECamEventCameraSettingAperture event notification when aperture value is changed.
The aperture parameter value is an integer, multiplied by KECamFineResolutionFactor. For example to set an aperture of F2.8, call SetAperture(280).
Parameter | Description |
---|---|
aFStop | a new aperture value in the supported by the camera range. |
IMPORT_C void | SetApertureExposureLockOn | ( | TBool | aAELock | ) |
Sets the current state for aperture and exposure lock. Triggers a KUidECamEventAELock event to all MCameraObserver2 clients.
Parameter | Description |
---|---|
aAELock | a value whether to lock exposure and aperture together. |
IMPORT_C void | SetAutoFocusArea | ( | TAutoFocusArea | aAutoFocusArea | ) |
Sets a specific auto focus area on the camera. Focus area change fires a KUidECamEventCameraSettingAutoFocusArea event to all MCameraObserver2 clients of the camera.
Parameter | Description |
---|---|
aAutoFocusArea | Autofocus area selection. |
IMPORT_C void | SetAutoFocusLockOn | ( | TBool | aState | ) |
Sets autofocus lock state. Triggers a KUidECamEventCameraSettingAutoFocusLock event to all MCameraObserver2 clients.
Parameter | Description |
---|---|
aState | Required new state. |
IMPORT_C void | SetAutoFocusType | ( | TAutoFocusType | aAutoFocusType | ) |
Sets a specific auto focus type on the camera. The focus type change fires both, KUidECamEventCameraSettingAutoFocusType and KUidECamEventCameraSettingAutoFocusType2 event to all MCameraObserver2 clients of the camera.
See also: KUidECamEventCameraSettingAutoFocusType
Parameter | Description |
---|---|
aAutoFocusType | Autofocus selection. |
IMPORT_C void | SetAutomaticSizeSelectionChangeOn | ( | TBool | aSetOn | ) |
Allow camera to proactively change image size due external factors. Default value is EFalse. Triggers a KUidECamEventCameraSettingAutomaticSizeSelection event notification.
Parameter | Description |
---|---|
aSetOn | whether the option should be switched on |
there must be at least two images to merge. All are assumed to form a sequence and are identified using the first frame index and number of frames e.g. to merge two frames - one on and one +1, when in EBracketMode3Image, one sets the start index to 1 and frames to 2. MCameraObserver2 clients are notified with a KUidECamEventBracketMerge event.
It is very TBracketMode setting dependent.
Parameter | Description |
---|---|
aStartIndex | the index of the start frame, starts from 0. |
aFrames | the number of frames to be merged. |
IMPORT_C void | SetBracketMode | ( | TBracketMode | aBracketMode | ) |
Set new bracket mode. All MCameraObserver2 clients are notified with KUidECamEventCameraSettingBracketMode.
Parameter | Description |
---|---|
aBracketMode | new selection for bracket mode of type TBracketMode. |
IMPORT_C void | SetBracketParameter | ( | TBracketParameter | aBracketParameter | ) |
Set new bracket parameter When set all clients are notified with KUidECamEventCameraSettingBracketParameter.
Parameter | Description |
---|---|
aBracketParameter | new selection for parameter type of type TBracketParameter. |
IMPORT_C void | SetBracketStep | ( | TBracketStep | aBracketStep | ) |
Set new bracket step. All MCameraObserver2 clients are notified with KUidECamEventCameraSettingBracketStep.
Parameter | Description |
---|---|
aBracketStep | new selection for step of type TBracketStep. |
IMPORT_C void | SetBurstImages | ( | TInt | aImages | ) |
: due to memory or image size limitations the actual number may be less.
Unless reduced Latency scheme is not used (ie CaptureImageL(TInt aSequenceNumber) or StartPerformantVideoCaptureL()) if an image/video capture is still outstanding, this method may report error KErrInUse.
Parameter | Description |
---|---|
aImages | the number of images set to capture in burst mode |
IMPORT_C void | SetContinuousAutoFocusTimeout | ( | TInt | aTimeout | ) |
Sets the current value for continuous autofocus timeout. Timeouts are in microseconds. All MCameraObserver2 clients of the camera receive a KUidECamEventCameraSettingsContinuousAutoFocusTimeout event notification when timeout value is changed.
Parameter | Description |
---|---|
aTimeout | the timeout value in microseconds. |
IMPORT_C void | SetDigitalZoom | ( | TInt | aDigitalZoom | ) |
Sets the digital zoom value. Triggers a KUidECamEventCameraSettingDigitalZoom event to all MCameraObserver2 clients.
Parameter | Description |
---|---|
aDigitalZoom | Required zoom value. |
IMPORT_C void | SetDriveMode | ( | TDriveMode | aDriveMode | ) |
Set the current metering mode. When set all MCameraObserver2 clients are notified with KUidECamEventCameraSettingDriveMode.
Unless reduced Latency scheme is not used (ie CaptureImageL(TInt aSequenceNumber) or StartPerformantVideoCaptureL()) if an image/video capture is still outstanding, this method may report error KErrInUse.
Parameter | Description |
---|---|
aDriveMode | new selection for drive mode value of type TDriveMode. |
IMPORT_C void | SetExposureCompensation | ( | TInt | aExposureCompensationInSteps | ) |
Set the current exposure compensation value as integer steps. Triggers a KUidECamEventCameraSettingExposureCompensation event to all MCameraObserver2 clients.
Parameter | Description |
---|---|
aExposureCompensationInSteps | a required number of compensation steps - negative value reduce the exposure time positive increases the exposure time. |
IMPORT_C void | SetExposureCompensationStep | ( | TInt | aExposureCompensationStep | ) |
Set current exposure compensation step as an integer multiplied by KECamFineResolutionFactor. All MCameraObserver2 clients receive a KUidECamEventCameraSettingExposureCompensationStep event, when the value has changed.
Parameter | Description |
---|---|
aExposureCompensationStep | a new value for the exposure compensation step. |
IMPORT_C void | SetExposureLockOn | ( | TBool | aState | ) |
Sets exposure lock state. Triggers a KUidECamEventCameraSettingExposureLock event to all MCameraObserver2 clients.
Parameter | Description |
---|---|
aState | Required new state. |
IMPORT_C void | SetExposureMode | ( | CCamera::TExposure | aExposureMode | ) |
Sets the exposure mode of the camera. Triggers a KUidECamEventCameraSettingExposureMode event to all MCameraObserver2 clients.
Parameter | Description |
---|---|
aExposureMode | The required exposure adjustment. |
IMPORT_C void | SetFlashCompensation | ( | TInt | aFlashCompensationInSteps | ) |
Set the current flash compensation value as integer steps. Positive values increase power, negative reduce power. The change is not acumulative e.g. the change is stateless. Each call assumes no previous compensation has been performed i.e. that there is a zero compensation. Triggers a KUidECamEventCameraSettingFlashCompensation event.
Parameter | Description |
---|---|
aFlashCompensationInSteps | a required compensation steps - negative value reduce the flash power positive boosts up the flash power. |
IMPORT_C void | SetFlashCompensationStep | ( | TInt | aFlashCompensationStep | ) |
Set current flash compensation step as an integer multiplied by KECamFineResolutionFactor. For example to set a compensation of -0.3 EV, one should use a parameter with value -30. All clients receive a KUidECamEventCameraSettingFlashCompensationStep event, when the value has changed.
Parameter | Description |
---|---|
aFlashCompensationStep | a new value for the flash compensation step. |
IMPORT_C void | SetFlashMode | ( | CCamera::TFlash | aMode | ) |
Sets the flash mode.
Triggers a KUidECamEventCameraSettingFlashMode event to all camera MCameraObserver2 clients.
Parameter | Description |
---|---|
aMode | The required flash mode. |
IMPORT_C void | SetFocusDistance | ( | TInt | aDistance | ) |
Set focus distance in millimetres. Focus distance change fires a KUidECamEventCameraSettingFocusDistance event to all MCameraObserver2 clients of the camera.
KUidECamEvent2CameraSettingFocusDistance may be used to provide the focussing feedback as well. This means that the feedback will state whether the proper focussing has been achieved after setting the given focus distance.
Parameter | Description |
---|---|
aDistance | the new distance value in millimetres. |
IMPORT_C void | SetFocusMode | ( | TFocusMode | aFocusMode | ) |
Sets a specific focus mode on the camera. Focus mode change fires a KUidECamEventCameraSettingFocusMode event to all MCameraObserver2 clients of the camera.
Parameter | Description |
---|---|
aFocusMode | new focus mode of TFocusMode type. |
IMPORT_C void | SetFocusRange | ( | TFocusRange | aFocusRange | ) |
Sets a specific focus range on the camera. The focus range change fires both, KUidECamEventCameraSettingFocusRange and KUidECamEventCameraSettingFocusRange2 event to all MCameraObserver2 clients of the camera.
See also: KUidECamEventCameraSettingFocusRange
Parameter | Description |
---|---|
aFocusRange | newly selected focus range. |
IMPORT_C void | SetISORateL | ( | TISORateType | aISORateType, |
TInt | aParam | |||
) |
Set the type of ISO rate and the exposure parameter or value specified.
Triggers KUidECamEventCameraSettingIsoRateType to all MCameraObserver2 clients of the camera. HandleEvent is used to report the result or any possible error. New setter functions leave only when implementation is not there.
Parameter | Description |
---|---|
aISORateType | The type of ISO rate to be set. |
aParam | Depending on the value of aISORateType, possible values of aParam are one of the following:- The value of ISO rate to be used in case of manual type of ISO rate (EISOManual). OR Redundant parameter in case of unprioritised type of auto ISO (EISOAutoUnPrioritised). It is left to the camera hardware/firmware to decide how the ISO rate is selected. No priority regarding exposure is specified. OR Highest ISO rate to be picked by the camera while deciding for the best exposure in case of ISO prioritised type of auto ISO (EISOAutoISOPrioritised). ISO rate closest to this (and lower) may be used so that best possible exposure is achieved. OR Slowest shutter speed to be picked by the camera while deciding for the best exposure in case of shutter speed prioritised type of auto ISO (EISOAutoShutterSpeedPrioritised). After using this shutter speed, ISO rate is chosen by the camera to achieve proper exposure. Shutter speed closest to this (and faster) may be used so that best possible exposure is achieved. OR Minimum aperture opening (deepest depth of field) to be picked by the camera while deciding for the best exposure in case of aperture prioritised type of auto ISO (EISOAutoAperturePrioritised). After using this aperture opening, ISO rate is chosen by the camera to achieve proper exposure. Aperture opening closest to this (and wider) may be used to achieve best possible exposure. |
IMPORT_C void | SetIsoRate | ( | TInt | aRate | ) |
Set current ISO rate for the camera. Triggers KUidECamEventCameraSettingIsoRate to all MCameraObserver2 clients of the camera.
Parameter | Description |
---|---|
aRate | required new ISO rate. |
IMPORT_C void | SetManualFlashPowerLevel | ( | TInt | aManualFlashPowerLevel | ) |
Sets the current manual flash power level on the camera. Triggers a KUidECamEventCameraSettingFlashManualPower event to all MCameraObserver2 clients.
Parameter | Description |
---|---|
aManualFlashPowerLevel | one of the values returned in GetManualFlashPowerLevelsL(). |
IMPORT_C void | SetMeteringMode | ( | TMeteringMode | aMeteringMode | ) |
Set the current metering mode. When set, all MCameraObserver2 clients are notified with a KUidECamEventCameraSettingMeteringMode event.
Parameter | Description |
---|---|
aMeteringMode | new selection for metering mode of type TMeteringMode. |
IMPORT_C void | SetOperationPreferenceL | ( | TUint | aOperationPreferenceIndex | ) |
Set a particular operation preference.
Event KUidECamEventCameraSettingOperationPreference is used to notify clients about setting an operation preference.
Parameter | Description |
---|---|
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. |
IMPORT_C void | SetOpticalZoom | ( | TInt | aOpticalZoom | ) |
Sets the zoom using a specific value. Triggers a KUidECamEventCameraSettingOpticalZoom event to all MCameraObserver2 clients.
Parameter | Description |
---|---|
aOpticalZoom | Required zoom value. |
IMPORT_C void | SetPictureOrientation | ( | TPictureOrientation | aOrientation | ) |
Set a new picture orientation This triggers a KUidECamEventCameraSettingPictureOrientation event to all MCameraObserver2 clients.
Parameter | Description |
---|---|
aOrientation | a value of TPictureOrientation denoting the new orientation. |
IMPORT_C void | SetPixelAspectRatio | ( | TPixelAspectRatio | aPixelAspectRatio | ) |
Set a new pixel aspect ratio. This triggers a KUidECamEventPixelAspectRatio event to all MCameraObserver2 clients.
Parameter | Description |
---|---|
aPixelAspectRatio | a value of TPixelAspectRatio denoting the new pixel aspect ratio. |
IMPORT_C void | SetRedEyeReduceOn | ( | TBool | aState | ) |
Sets the flash red eye reduction on or off.
Triggers a KUidECamEventCameraSettingFlashRedEyeReduce event to all camera MCameraObserver2 clients.
Parameter | Description |
---|---|
aState | The required state ETrue for switching it on and EFalse for switching it off. |
IMPORT_C void | SetReferenceScreenL | ( | CWsScreenDevice & | aScreenDevice | ) |
Provide reference screen for orientation information.
Triggers KUidECamEventCameraSettingReferenceScreen to all MCameraObserver2 clients of the camera. HandleEvent is used to report the result or any possible error. New setter functions leave only when implementation is not there.
Parameter | Description |
---|---|
aScreenDevice | A reference to the screen device. |
IMPORT_C void | SetShootClickOn | ( | TBool | aShootClickOn | ) |
Sets the button clicking sound on /off. Triggers a KUidECamEventSoundClick event to all MCameraObserver2 clients.
Parameter | Description |
---|---|
aShootClickOn | ETrue to switch clicking sound on, EFalse sound is switched off. |
IMPORT_C void | SetShutterSpeed | ( | TInt | aShutterSpeed | ) |
Sets the current shutter speed. When set, all MCameraObserver2 clients of the camera receive a KUidECamEventCameraSettingShutterSpeed event
Parameter | Description |
---|---|
aShutterSpeed | the required shutter speed in microseconds. |
IMPORT_C void | SetStabilizationComplexity | ( | TStabilizationAlgorithmComplexity | aComplexity | ) |
Sets a specific stabilization algorithm on the camera. When a value is set, MCameraObserver2 clients for that camera will receive a KUidECamEventSettingsStabilizationAlgorithmComplexity event notification.
Parameter | Description |
---|---|
aComplexity | stabilization effect selection of type TStabilizationAlgorithmComplexity. |
IMPORT_C void | SetStabilizationEffect | ( | TStabilizationEffect | aEffect | ) |
Sets a specific stabilization effect on the camera. When a value is set, MCameraObserver2 clients for that camera will receive a KUidECamEventCameraSettingsStabilizationEffect event notification.
Parameter | Description |
---|---|
aEffect | stabilization effect selection of type TStabilizationEffect. |
IMPORT_C void | SetStabilizationMode | ( | TStabilizationMode | aStabilizationMode | ) |
Sets a specific stabilization mode on the camera.
Stabilization mode change fires a KUidECamEventCameraSettingStabilizationMode event to all MCameraObserver2 clients of this specific camera.
Parameter | Description |
---|---|
aStabilizationMode | new stabilization mode of TStabilizationMode type. |
Set current time lapse value. Active only when drive mode EDriveModeTimeLapse. The time lapse is denoted as the uniform time period between consecutive frames. Setting triggers a KUidECamEventCameraSettingTimeLapse event to all MCameraObserver2 camera clients.
Parameter | Description |
---|---|
aStart | the start of the timelapse period. |
aEnd | the end of the timelapse period; start < end. |
aInterval | the set parameter between two successive snapshots. |
IMPORT_C void | SetTimerInterval | ( | TInt | aTimerInterval | ) |
Set current timer value. Active only when drive mode EDriveModeTimed. This is the time interval (delay) in microseconds between user pressing the button and image is taken. The setting of the value triggers a KUidECamEventCameraSettingTimerInterval event to all MCameraObserver2 clients.
Parameter | Description |
---|---|
aTimerInterval | The selected timer interval in microseconds. |
IMPORT_C void | SetWBColorTemperature | ( | TInt | aWBColorTemperature | ) |
Set the white balance as a temperature in Kelvin
Parameter | Description |
---|---|
aWBColorTemperature | white balance value as a temperature in Kelvins. |
IMPORT_C void | SetWBRgbValue | ( | const TRgb & | aValue | ) |
Set white balance value using a RGB triplet. Change in value causes an event notification KUidECamEventCameraSettingsWBValue to be sent to all MCameraObserver2 clients of this camera.
See also: TRgb
Parameter | Description |
---|---|
aValue | a const reference to TRgb object, which contains the new white balance. |
IMPORT_C void | SetWhiteBalanceMode | ( | CCamera::TWhiteBalance | aWhiteBalanceMode | ) |
Sets the white balance adjustment of the camera.
No effect if this is not supported, see TCameraInfo::iWhiteBalanceModesSupported. Triggers KUidECamEventCameraSettingWhiteBalanceMode event to all MCameraObserver2 clients.
Parameter | Description |
---|---|
aWhiteBalanceMode | The required white balance mode. |
IMPORT_C void | SetYuvRange | ( | TYuvRange | aYuvRange | ) |
Set a new YUV range. This triggers a KUidECamEventYuvRange event to all MCameraObserver2 clients.
Parameter | Description |
---|---|
aYuvRange | a value of TYuvRange denoting the new YUV range. |
IMPORT_C TBool | ShootClickOn | ( | ) | const |
Gets the current state for button clicking sound effect.
Returns: ETrue to switch clicking sound on, EFalse sound off
IMPORT_C TInt | ShutterSpeed | ( | ) | const |
Gets the current shutter speed
Returns: the current shutter speed in microseconds. Negative value returned means error case (system wide error code) and positive value means current shutter speed.
IMPORT_C TStabilizationAlgorithmComplexity | StabilizationComplexity | ( | ) | const |
Gets current active stabilization algorithm selection on the camera.
Returns: a TStabilizationAlgorithmComplexity value.
IMPORT_C TStabilizationEffect | StabilizationEffect | ( | ) | const |
Gets all supported stabilization effects on the camera.
Returns: an integer - a bitfield of all supported TStabilizationEffect values.
IMPORT_C TStabilizationMode | StabilizationMode | ( | ) | const |
Gets current stabilization mode on the camera. The result is a valid TStabilizationMode value.
Returns: current stabilization mode of type TStabilizationMode.
IMPORT_C void | SubscribeToPreCaptureWarningL | ( | TInt | aPreCaptureWarning | ) |
Subscribe in order to receive event which indicates warnings on occurrence of some specific unfavourable conditions before image/video capture.
When any of the subscribed warnings (represented by aPreCaptureWarning) get generated by the camera device, event KUidECamEventCameraSettingPreCaptureWarning is issued. TECAMEvent2 class should be used in order to provide the status of every PreCaptureWarning.
Parameter | Description |
---|---|
aPreCaptureWarning | A bitfield specifying all the TPreCaptureWarning types to be subscribed for. |
IMPORT_C TInt | SupportedAutoFocusAreas | ( | ) | const |
Gets all supported auto focus areas on the camera.
Returns: an integer - a bitfield of al supported TAutoFocusArea values.
IMPORT_C TInt | SupportedAutoFocusTypes | ( | ) | const |
Gets all supported auto focus types on the camera.
Returns: an integer - a bitfield of all supported TAutoFocusType values.
IMPORT_C TInt | SupportedBracketModes | ( | ) | const |
Get all supported bracket modes as bitfields.
Returns: the set of all supported bracket modes as an integer.
IMPORT_C TInt | SupportedBracketParameters | ( | ) | const |
Get all supported bracket parameters as bitfields.
Returns: the set of all currently supported bracket modes.
IMPORT_C TInt | SupportedBracketSteps | ( | ) | const |
Get all supported bracket steps as bitfields.
Returns: the set of all supported bracket modes.
IMPORT_C TInt | SupportedDriveModes | ( | ) | const |
Get all supported drive modes as bitfields of TDriveMode type.
Returns: the set of supported drive modes.
IMPORT_C TInt | SupportedExposureModes | ( | ) | const |
Get Supported exposure modes - bitfields of CCamera::TExposure
Returns: the set of supported exposure modes.
IMPORT_C TInt | SupportedFlashModes | ( | ) | const |
Get camera all supported flash modes CCamera::TFlash
Some of the flash modes are available only for clients using either CCamera::New2L() or CCamera::NewDuplicate2L()
See also: CCamera::TFlash
Returns: the set of all supported flash modes as bitfields in an integer.
IMPORT_C TInt | SupportedFocusModes | ( | ) | const |
Gets all of the supported focus modes on the camera. The result is a bitfield of the valid TFocusMode flags.
See also: TFocusMode
Returns: a bitfield of all supported focus modes.
IMPORT_C TInt | SupportedFocusRanges | ( | ) | const |
Gets all supported focus ranges on the camera.
if CCamera::New2L() or CCamera::NewDuplicate2L() is not used to create CCamera object, it is assumed that application is not prepared to receive extra added enum values. So, any extra enum value passed from the implementation will be filtered at this point. To receive extra added enum values, application should rather use CCamera::New2L() or CCamera::NewDuplicate2L() to create camera object. In this case, application is assumed to be prepared to receive unrecognised enum values
Returns: an integer - a bitfield of all supported TFocusRange values.
IMPORT_C TInt | SupportedMeteringModes | ( | ) | const |
Get all supported metering modes on this camera represented as bitfield of type TMeteringMode.
Returns: the set of supported metering modes.
IMPORT_C TInt | SupportedPixelAspectRatios | ( | ) | const |
Get supported pixel aspect ratio.
Some of the pixel aspect ratios are available only for clients using either CCamera::New2L() or CCamera::NewDuplicate2L()
Returns: a bitfield of all supported TPixelAspectRatio values.
IMPORT_C TInt | SupportedStabilizationComplexityValues | ( | ) | const |
Gets all supported stabilization algorithm values on the camera.
Returns: an integer - a bitfield of all supported TStabilizationAlgorithmComplexity values.
IMPORT_C TInt | SupportedStabilizationEffects | ( | ) | const |
Gets the current stabilization effect on the camera.
Returns: a TStabilizationEffect value.
IMPORT_C TInt | SupportedStabilizationModes | ( | ) | const |
Gets all of the supported stabilization modes on the camera. The result is a bitfield of the valid TStabilizationMode flags.
See also: TStabilizationMode
Returns: a bitfield of all supported stabilization modes.
IMPORT_C TWBUnits | SupportedWBUnits | ( | ) | const |
The methods used to get or set these differ depending on the supported unit type. It is expected that a camera will support only a single type or none.
Returns: a value of TWBUnits type.
IMPORT_C TInt | SupportedWhiteBalanceModes | ( | ) | const |
Gets camera supported set of white balance adjustments.
if CCamera::New2L() or CCamera::NewDuplicate2L() is not used to create CCamera object, it is assumed that application is not prepared to receive extra added enum values. So, any extra enum value(unrecognised) passed from the implementation will be filtered at this point. To receive extra added enum values, application should rather use CCamera::New2L() or CCamera::NewDuplicate2L() to create camera object. In this case, application is assumed to be prepared to receive unrecognised enum values
Returns: bitfield of all supported CCamera::TWhiteBalance values.
IMPORT_C TInt | SupportedYuvRanges | ( | ) | const |
Get supported YUV ranges.
Returns: a bitfileld of all supported TYuvRange values.
IMPORT_C TInt | TimerInterval | ( | ) | const |
Get current timer value. Active only when drive mode is EDriveModeTimed. Timer resolution is in microseconds.
Returns: current time interval value. Negative value returned means error case (system wide error code) and positive value means current timer interval.
IMPORT_C void | UnSubscribePreCaptureWarningL | ( | ) |
Unsubscribe so that further events are not received when warnings get issued.
IMPORT_C TInt | WBColorTemperature | ( | ) | const |
Get the white balance as a temperature in Kelvin
Returns: current white balance value as a temperature in Kelvins. Negative value returned means error case (system wide error code) and positive value means current value for white balance as a temperature in Kelvin.
IMPORT_C CCamera::TWhiteBalance | WhiteBalanceMode | ( | ) | const |
Gets the current white balance value.
if CCamera::New2L() or CCamera::NewDuplicate2L() is not used to create CCamera object, it is assumed that application is not prepared to receive extra added enum values. So, any extra enum value(unrecognised) received from the implementation will be dropped and EWBAuto would be passed instead. To receive extra added enum values, application should rather use CCamera::New2L() or CCamera::NewDuplicate2L() to create camera object. In this case, application is assumed to be prepared to receive unrecognised enum values
Returns: The current white balance value.