CCamera::CCameraPreImageCaptureControl Class Reference

class CCamera::CCameraPreImageCaptureControl : public CBase

CCameraPreImageCaptureControl class exposes an API for controlling image operations/settings prior to image capture.

Note:

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.

Client should not use old Capture methods present in class CCamera. Class CCameraImageCapture and class CCameraPostImageCaptureControl should be used rather.

Inherits from

  • CCamera::CCameraPreImageCaptureControl
Public Member Functions
~CCameraPreImageCaptureControl()
IMPORT_C voidGetCaptureEventSupportInfoL(TUint &)
IMPORT_C voidGetDirectSavingTypeL(TDirectSavingType &)
IMPORT_C voidGetDirectSnapshotSupportInfoL(TUint &)
IMPORT_C voidGetImageFormatsSupportedL(TUint &, const TSize &)
IMPORT_C voidGetImageMaxMemorySizeL(TUint &)
IMPORT_C voidGetImageMaxMemorySizeSettingSupportInfoL(TBool &)
IMPORT_C voidGetPixelAspectsSupportedL(TUint &, CCamera::TFormat, const TSize &)
IMPORT_C voidGetSupportedDirectSavingTypeL(TDirectSavingType &)
IMPORT_C voidGetSupportedEmbeddedStillCaptureSettingsL(RArray< TUid > &)
IMPORT_C voidGetSupportedProcessingOptionsL(TUint &)
IMPORT_C CCameraPreImageCaptureControl *NewL(CCamera &, MPreImageCaptureControlObserver &)
IMPORT_C voidPrepareImageCapture(const TPrepareImageParameters &, MCaptureImageObserver &)
IMPORT_C voidSetDirectSavingTypeL(TDirectSavingType)
IMPORT_C voidSetLowerResolutionSequentialImageFilenameL(const TDesC8 &, TInt)
IMPORT_C voidSetSequentialImageFilenameL(const TDesC8 &, TInt)
Private Member Functions
CCameraPreImageCaptureControl(CCamera &)
voidConstructL(MPreImageCaptureControlObserver &)
voidDisableSubFramesL()
voidEnableSubFramesL()
voidEndEmbeddedStillCaptureSettingsL()
voidGetColorSpaceL(TColorSpace &)
voidGetFailedEmbeddedStillCaptureSettingsL(RArray< TUid > &)
voidGetMaximumSpotsL(CCamera::CCameraAdvancedSettings::TFocusMode, TInt &)
voidGetPanoDirectionL(TPanoDirection &)
voidGetPanoModeSupportInfoL(TBool &, TInt &)
voidGetSpotsCombinationL(CCamera::CCameraAdvancedSettings::TFocusMode, TUint &)
voidGetStreamedImageSupportInfoL(TBool &)
voidGetStreamedImageSupportedTransformationsL(RArray< TUid > &)
voidGetSubFramesStateL(TBool &)
voidGetSupportedColorSpaceL(TUint &)
voidGetSupportedSpotsCombinationL(CCamera::CCameraAdvancedSettings::TFocusMode, RArray< TUint > &)
voidSetColorSpace(TColorSpace)
voidSetPanoDirection(TPanoDirection)
voidSetSpotsCombination(CCamera::CCameraAdvancedSettings::TFocusMode, TUint)
voidStartEmbeddedStillCaptureSettingsL()
voidStartPanoMode(TStitchingOption)
voidStartPanoMode(TStitchingOption, const RArray< TInt > &)
voidStopPanoModeL(TStitchedImageRetrieval)
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
Public Member Enumerations
enumTDirectSavingType { EDirectSavingNotUsed = 0x00, EDirectSavingHighResolutionFileOnly = 0x01, EDirectSavingWithLowerResolutionFile = 0x02 }
enumTDirectSnapshotType { EDirectSnapshotNotSupported = 0x00, EDirectSnapshotSupported = 0x01 }
enumTEcamProcessingOptions { EEcamProcessingNone = 0x00000000, EEcamNormalProcessing = 0x00000001, EEcamBackgroundProcessing = 0x00000002 }
Private Member Enumerations
enumTColorSpace {
EColorSpaceUnknown = 0x0000, EColorSpacesRGB = 0x0001, EColorSpaceAdobeRGB = 0x0002, EColorSpaceAdobeWideGamutRGB = 0x0004, EColorSpaceCMYK = 0x0008, EColorSpaceYIQ = 0x0010, EColorSpaceYUV = 0x0020, EColorSpaceYDbDr = 0x0040, EColorSpaceYCbCr = 0x0080, EColorSpaceHSB = 0x0100, EColorSpaceHSL = 0x0200
}
enumTPanoDirection { EPanoRight, EPanoLeft, EPanoUp, EPanoDown }
enumTStitchedImageRetrieval { EStitchedImageRetrieve, EStitchedImageDiscard }
enumTStitchingOption { EStitchingOptionNone = 0x00, EStitchingOptionEnable = 0x01, EStitchingOptionDisable = 0x02 }
Private Attributes
MCameraPreImageCaptureControl *iImpl
CCamera &iOwner

Constructor & Destructor Documentation

CCameraPreImageCaptureControl(CCamera &)

CCameraPreImageCaptureControl(CCamera &aOwner)[private]

Parameters

CCamera & aOwner

~CCameraPreImageCaptureControl()

IMPORT_C~CCameraPreImageCaptureControl()

Member Functions Documentation

ConstructL(MPreImageCaptureControlObserver &)

voidConstructL(MPreImageCaptureControlObserver &aPreImageCaptureControlObserver)[private]

Parameters

MPreImageCaptureControlObserver & aPreImageCaptureControlObserver

DisableSubFramesL()

voidDisableSubFramesL()[private]

EnableSubFramesL()

voidEnableSubFramesL()[private]

EndEmbeddedStillCaptureSettingsL()

voidEndEmbeddedStillCaptureSettingsL()[private]

GetCaptureEventSupportInfoL(TUint &)

IMPORT_C voidGetCaptureEventSupportInfoL(TUint &aSupportedDriveModes)const

Parameters

TUint & aSupportedDriveModes

GetColorSpaceL(TColorSpace &)

voidGetColorSpaceL(TColorSpace &aColorSpace)const [private]

Parameters

TColorSpace & aColorSpace

GetDirectSavingTypeL(TDirectSavingType &)

IMPORT_C voidGetDirectSavingTypeL(TDirectSavingType &aDirectSavingType)const

Parameters

TDirectSavingType & aDirectSavingType

GetDirectSnapshotSupportInfoL(TUint &)

IMPORT_C voidGetDirectSnapshotSupportInfoL(TUint &aIsDirectSnapshotSupported)const

Parameters

TUint & aIsDirectSnapshotSupported

GetFailedEmbeddedStillCaptureSettingsL(RArray< TUid > &)

voidGetFailedEmbeddedStillCaptureSettingsL(RArray< TUid > &aFailedEmbeddedStillCaptureSettings)const [private]

Parameters

RArray< TUid > & aFailedEmbeddedStillCaptureSettings

GetImageFormatsSupportedL(TUint &, const TSize &)

IMPORT_C voidGetImageFormatsSupportedL(TUint &aImageFormatsSupported,
const TSize &aSize
)const

Parameters

TUint & aImageFormatsSupported
const TSize & aSize

GetImageMaxMemorySizeL(TUint &)

IMPORT_C voidGetImageMaxMemorySizeL(TUint &aMemorySize)const

Parameters

TUint & aMemorySize

GetImageMaxMemorySizeSettingSupportInfoL(TBool &)

IMPORT_C voidGetImageMaxMemorySizeSettingSupportInfoL(TBool &aIsImageMaxMemorySizeSettingSupported)const

Parameters

TBool & aIsImageMaxMemorySizeSettingSupported

GetMaximumSpotsL(CCamera::CCameraAdvancedSettings::TFocusMode, TInt &)

voidGetMaximumSpotsL(CCamera::CCameraAdvancedSettings::TFocusModeaFocusMode,
TInt &aMaximumSpots
)const [private]

Parameters

CCamera::CCameraAdvancedSettings::TFocusMode aFocusMode
TInt & aMaximumSpots

GetPanoDirectionL(TPanoDirection &)

voidGetPanoDirectionL(TPanoDirection &aPanoDirection)const [private]

Parameters

TPanoDirection & aPanoDirection

GetPanoModeSupportInfoL(TBool &, TInt &)

voidGetPanoModeSupportInfoL(TBool &aIsPanoModeSupported,
TInt &aSupportedStitchingOption
)const [private]

Parameters

TBool & aIsPanoModeSupported
TInt & aSupportedStitchingOption

GetPixelAspectsSupportedL(TUint &, CCamera::TFormat, const TSize &)

IMPORT_C voidGetPixelAspectsSupportedL(TUint &aPixelAspectsSupported,
CCamera::TFormataImageFormat,
const TSize &aSize
)const

Parameters

TUint & aPixelAspectsSupported
CCamera::TFormat aImageFormat
const TSize & aSize

GetSpotsCombinationL(CCamera::CCameraAdvancedSettings::TFocusMode, TUint &)

voidGetSpotsCombinationL(CCamera::CCameraAdvancedSettings::TFocusModeaFocusMode,
TUint &aSpotsCombination
)const [private]

Parameters

CCamera::CCameraAdvancedSettings::TFocusMode aFocusMode
TUint & aSpotsCombination

GetStreamedImageSupportInfoL(TBool &)

voidGetStreamedImageSupportInfoL(TBool &aIsStreamedImageSupported)const [private]

Parameters

TBool & aIsStreamedImageSupported

GetStreamedImageSupportedTransformationsL(RArray< TUid > &)

voidGetStreamedImageSupportedTransformationsL(RArray< TUid > &aStreamedImageSupportedTransformations)const [private]

Parameters

RArray< TUid > & aStreamedImageSupportedTransformations

GetSubFramesStateL(TBool &)

voidGetSubFramesStateL(TBool &aIsSubFrameEnabled)const [private]

Parameters

TBool & aIsSubFrameEnabled

GetSupportedColorSpaceL(TUint &)

voidGetSupportedColorSpaceL(TUint &aSupportedColorSpace)const [private]

Parameters

TUint & aSupportedColorSpace

GetSupportedDirectSavingTypeL(TDirectSavingType &)

IMPORT_C voidGetSupportedDirectSavingTypeL(TDirectSavingType &aSupportedDirectSavingType)const

Parameters

TDirectSavingType & aSupportedDirectSavingType

GetSupportedEmbeddedStillCaptureSettingsL(RArray< TUid > &)

IMPORT_C voidGetSupportedEmbeddedStillCaptureSettingsL(RArray< TUid > &aSupportedEmbeddedStillCaptureSettings)const

Parameters

RArray< TUid > & aSupportedEmbeddedStillCaptureSettings

GetSupportedProcessingOptionsL(TUint &)

IMPORT_C voidGetSupportedProcessingOptionsL(TUint &aECamProcessingOptionsSupported)const

Parameters

TUint & aECamProcessingOptionsSupported

GetSupportedSpotsCombinationL(CCamera::CCameraAdvancedSettings::TFocusMode, RArray< TUint > &)

voidGetSupportedSpotsCombinationL(CCamera::CCameraAdvancedSettings::TFocusModeaFocusMode,
RArray< TUint > &aPossibleSpotCombinations
)const [private]

Parameters

CCamera::CCameraAdvancedSettings::TFocusMode aFocusMode
RArray< TUint > & aPossibleSpotCombinations

NewL(CCamera &, MPreImageCaptureControlObserver &)

IMPORT_C CCameraPreImageCaptureControl *NewL(CCamera &aCamera,
MPreImageCaptureControlObserver &aPreImageCaptureControlObserver
)[static]

Parameters

CCamera & aCamera
MPreImageCaptureControlObserver & aPreImageCaptureControlObserver

PrepareImageCapture(const TPrepareImageParameters &, MCaptureImageObserver &)

IMPORT_C voidPrepareImageCapture(const TPrepareImageParameters &aPrepareImageParameters,
MCaptureImageObserver &aCaptureImageObserver
)

Parameters

const TPrepareImageParameters & aPrepareImageParameters
MCaptureImageObserver & aCaptureImageObserver

SetColorSpace(TColorSpace)

voidSetColorSpace(TColorSpaceaColorSpace)[private]

Parameters

TColorSpace aColorSpace

SetDirectSavingTypeL(TDirectSavingType)

IMPORT_C voidSetDirectSavingTypeL(TDirectSavingTypeaDirectSavingType)

Parameters

TDirectSavingType aDirectSavingType

SetLowerResolutionSequentialImageFilenameL(const TDesC8 &, TInt)

IMPORT_C voidSetLowerResolutionSequentialImageFilenameL(const TDesC8 &aLowerResolutionFilename,
TIntaStartingSequenceNumber
)

Parameters

const TDesC8 & aLowerResolutionFilename
TInt aStartingSequenceNumber

SetPanoDirection(TPanoDirection)

voidSetPanoDirection(TPanoDirectionaPanoDirection)[private]

Parameters

TPanoDirection aPanoDirection

SetSequentialImageFilenameL(const TDesC8 &, TInt)

IMPORT_C voidSetSequentialImageFilenameL(const TDesC8 &aFilename,
TIntaStartingSequenceNumber
)

Parameters

const TDesC8 & aFilename
TInt aStartingSequenceNumber

SetSpotsCombination(CCamera::CCameraAdvancedSettings::TFocusMode, TUint)

voidSetSpotsCombination(CCamera::CCameraAdvancedSettings::TFocusModeaFocusMode,
TUintaSpotsCombination
)[private]

Parameters

CCamera::CCameraAdvancedSettings::TFocusMode aFocusMode
TUint aSpotsCombination

StartEmbeddedStillCaptureSettingsL()

voidStartEmbeddedStillCaptureSettingsL()[private]

StartPanoMode(TStitchingOption)

voidStartPanoMode(TStitchingOptionaStitchingOption)[private]

Parameters

TStitchingOption aStitchingOption

StartPanoMode(TStitchingOption, const RArray< TInt > &)

voidStartPanoMode(TStitchingOptionaStitchingOption,
const RArray< TInt > &aVFHandle
)[private]

Parameters

TStitchingOption aStitchingOption
const RArray< TInt > & aVFHandle

StopPanoModeL(TStitchedImageRetrieval)

voidStopPanoModeL(TStitchedImageRetrievalaStitchedImageRetrieval)[private]

Parameters

TStitchedImageRetrieval aStitchedImageRetrieval

Member Enumerations Documentation

Enum TColorSpace

Different types of color space. Camera will print or capture images in given color space. The enumeration list may be extended in future.

Enumerators

EColorSpaceUnknown = 0x0000

not known

EColorSpacesRGB = 0x0001

sRGB color space

EColorSpaceAdobeRGB = 0x0002

adobeRGB color space

EColorSpaceAdobeWideGamutRGB = 0x0004

adobeWideGamutRGB color space

EColorSpaceCMYK = 0x0008

CMY(K) color space

EColorSpaceYIQ = 0x0010

YIQ color space

EColorSpaceYUV = 0x0020

YUV color space

EColorSpaceYDbDr = 0x0040

YDbDr color space

EColorSpaceYCbCr = 0x0080

YCbCr color space

EColorSpaceHSB = 0x0100

HSB color space

EColorSpaceHSL = 0x0200

HSL color space

Enum TDirectSavingType

Specifies the type of direct saving. The enumeration list may be extended in future.

Enumerators

EDirectSavingNotUsed = 0x00

Image saved in buffers. Direct saving to file not being used. Callback used is MCaptureImageObserver::ImageBufferReady.

EDirectSavingHighResolutionFileOnly = 0x01

Image saved to file as per the format specified. Image saved after any processing options have completed. Callback used is MCaptureImageObserver::ImageDirectSavingCompleted().

EDirectSavingWithLowerResolutionFile = 0x02

Image saved to file as per the format specified. Also, a lower resolution image gets saved in a separately specified file. This helps in retrieving the lower resolution image sooner than the higher resolution image gets saved. Callback used for lower resolution image saving is MCaptureImageObserver:: CutDownImageDirectSavingCompleted().

Enum TDirectSnapshotType

Specifies the various type of direct snapshot support. The enumeration list may be extended in future.

Enumerators

EDirectSnapshotNotSupported = 0x00

Direct snapshot not supported.

EDirectSnapshotSupported = 0x01

Direct Snapshot supported. It will be displayed on the same direct viewfinder screen, out of which it has been created

Enum TEcamProcessingOptions

Specifies the available processing options. The enumeration list may be extended in future.

Enumerators

EEcamProcessingNone = 0x00000000

Processing options are not supported.

EEcamNormalProcessing = 0x00000001

Enable normal processing when image capture is initiated.

EEcamBackgroundProcessing = 0x00000002

Enable background processing when image capture is initiated.

Enum TPanoDirection

Specifies direction of panning. The enumeration list may be extended in future.

Enumerators

EPanoRight

Viewfinder displays towards the right of already captured images

EPanoLeft

Viewfinder displays towards the left of already captured images

EPanoUp

Viewfinder displays towards the top of already captured images

EPanoDown

Viewfinder displays towards the bottom of already captured images

Enum TStitchedImageRetrieval

Specifies whether the panned images captured under 'stitching enabled option' would be discarded by the implementation. The enumeration list may be extended in future.

Enumerators

EStitchedImageRetrieve

allow ecam implementation to provide the stitched images.

EStitchedImageDiscard

instruct ECAM Implementation to discard the stitched images.

Enum TStitchingOption

Specifies the stitching options when panning is started. The enumeration list may be extended in future.

Enumerators

EStitchingOptionNone = 0x00

Stitching of panned images is not supported by the ECAM Implementation.

EStitchingOptionEnable = 0x01

Stitching of panned images can be done by the ECAM Implementation.

EStitchingOptionDisable = 0x02

Stitching of panned images can be disabled/discarded by the ECAM Implementation.

Member Data Documentation

MCameraPreImageCaptureControl * iImpl

MCameraPreImageCaptureControl *iImpl[private]

CCamera & iOwner

CCamera &iOwner[private]