Original Symbian headers
Selected EUSER, Window Server, networking, graphics and device declarations
Loading...
Searching...
No Matches
TCameraInfo Class Reference

Specifies camera device information. More...

#include <ecam.h>

Public Types

enum  TCameraOrientation { EOrientationOutwards , EOrientationInwards , EOrientationMobile , EOrientationUnknown }
 Possible directions in which the camera may point. More...
 
enum  TOptions {
  EViewFinderDirectSupported = 0x0001 , EViewFinderBitmapsSupported = 0x0002 , EImageCaptureSupported = 0x0004 , EVideoCaptureSupported = 0x0008 ,
  EViewFinderMirrorSupported = 0x0010 , EContrastSupported = 0x0020 , EBrightnessSupported = 0x0040 , EViewFinderClippingSupported = 0x0080 ,
  EImageClippingSupported = 0x0100 , EVideoClippingSupported = 0x0200
}
 Various flags describing the features available for a particular implementation. More...
 

Public Attributes

TVersion iHardwareVersion
 Version number and name of camera hardware.
 
TVersion iSoftwareVersion
 Version number and name of camera software (device driver).
 
TCameraOrientation iOrientation
 Orientation of this particular camera device.
 
TUint32 iOptionsSupported
 Bitfield of TOptions available.
 
TUint32 iFlashModesSupported
 The supported flash modes.
 
TUint32 iExposureModesSupported
 The supported exposure modes.
 
TUint32 iWhiteBalanceModesSupported
 The supported white balance settings.
 
TInt iMinZoom
 Minimum zoom value allowed.
 
TInt iMaxZoom
 Maximum zoom value allowed.
 
TInt iMaxDigitalZoom
 Maximum digital zoom value allowed.
 
TReal32 iMinZoomFactor
 Image size multiplier corresponding to minimum zoom value.
 
TReal32 iMaxZoomFactor
 Image size multiplier corresponding to maximum zoom value.
 
TReal32 iMaxDigitalZoomFactor
 Image size multiplier corresponding to maximum digital zoom value.
 
TInt iNumImageSizesSupported
 Count of still image capture sizes allowed.
 
TUint32 iImageFormatsSupported
 The supported still image formats.
 
TInt iNumVideoFrameSizesSupported
 Count of video frame sizes allowed.
 
TInt iNumVideoFrameRatesSupported
 Count of video frame rates allowed.
 
TUint32 iVideoFrameFormatsSupported
 The supported video frame formats.
 
TInt iMaxFramesPerBufferSupported
 Maximum number of frames per buffer that may be requested.
 
TInt iMaxBuffersSupported
 Maximum number of buffers allowed.
 

Detailed Description

Specifies camera device information.

If either zoom or digital zoom are available then the appropriate entries in this class will be set to indicate the range of values that they may take. This should be implemented such that a setting of zero corresponds to no zoom, and a step of one corresponds to the smallest increment available, in a linear fashion.

There are also zoom factors that correspond to the actual zoom factor when at minimum (non-digital only) and maximum zoom. Negative zoom values represent macro functionality.

Image capture, if supported, is simply a case of transferring the current image from the camera to the client via MCameraObserver::ImageReady(). The camera class must set the iImageFormatsSupported bitfield to indicate the formats available.

API status
Published to all clients. Released API.

Definition at line 63 of file ecam.h.

Member Enumeration Documentation

◆ TCameraOrientation

Possible directions in which the camera may point.

Enumerator
EOrientationOutwards 

Outward pointing camera for taking pictures.

Camera is directed away from the user.

EOrientationInwards 

Inward pointing camera for conferencing.

Camera is directed towards the user.

EOrientationMobile 

Mobile camera capable of multiple orientations.

Camera orientation may be changed by the user.

EOrientationUnknown 

Camera orientation is not known.

Definition at line 68 of file ecam.h.

◆ TOptions

Various flags describing the features available for a particular implementation.

Enumerator
EViewFinderDirectSupported 

View finder display direct-to-screen flag.

EViewFinderBitmapsSupported 

View finder bitmap generation flag.

EImageCaptureSupported 

Still image capture flag.

EVideoCaptureSupported 

Video capture flag.

EViewFinderMirrorSupported 

View finder display mirroring flag.

EContrastSupported 

Contrast setting flag.

EBrightnessSupported 

Brightness setting flag.

EViewFinderClippingSupported 

View finder clipping flag.

EImageClippingSupported 

Still image capture clipping flag.

EVideoClippingSupported 

Video capture clipping flag.

Definition at line 85 of file ecam.h.

Member Data Documentation

◆ iExposureModesSupported

TUint32 TCameraInfo::iExposureModesSupported

The supported exposure modes.

This is a bitfield of CCamera::TExposure values.

Definition at line 135 of file ecam.h.

◆ iFlashModesSupported

TUint32 TCameraInfo::iFlashModesSupported

The supported flash modes.

This is a bitfield of CCamera::TFlash values.

If methods CCamera::New2L() or CCamera::NewDuplicate2L() are not used to create the CCamera object, it is assumed that the application may not be able to cope with any future additions to the enum values. So, any unrecognised enum value passed from the implementation should be filtered by ECAM Implementation. To receive unrecognised/extra added enum values, application should rather use CCamera::New2L() or CCamera::NewDuplicate2L() to create camera object. This is an indication to ECAM implementation. In this case, application is assumed to be prepared to receive unrecognised enum values.

See also
CCamera::CCameraAdvancedSettings::SupportedFlashModes()

Definition at line 131 of file ecam.h.

◆ iHardwareVersion

TVersion TCameraInfo::iHardwareVersion

Version number and name of camera hardware.

Definition at line 110 of file ecam.h.

◆ iImageFormatsSupported

TUint32 TCameraInfo::iImageFormatsSupported

The supported still image formats.

This is a bitfield of CCamera::TFormat values.

Definition at line 199 of file ecam.h.

◆ iMaxBuffersSupported

TInt TCameraInfo::iMaxBuffersSupported

Maximum number of buffers allowed.

Definition at line 228 of file ecam.h.

◆ iMaxDigitalZoom

TInt TCameraInfo::iMaxDigitalZoom

Maximum digital zoom value allowed.

Must be positive, or zero if not supported.

This is the maximum value that may be passed to CCamera::SetDigitalZoomFactorL(). Digital zoom factor is assumed to be a linear scale from 0 to iMaxDigitalZoom.

Definition at line 171 of file ecam.h.

◆ iMaxDigitalZoomFactor

TReal32 TCameraInfo::iMaxDigitalZoomFactor

Image size multiplier corresponding to maximum digital zoom value.

Implementation recommendation is to use 'appropriate value' for maximum digital zoom which could cover only values given by new digital zoom methods based on image format and capture mode.

Must be greater than or equal to 1.

Definition at line 189 of file ecam.h.

◆ iMaxFramesPerBufferSupported

TInt TCameraInfo::iMaxFramesPerBufferSupported

Maximum number of frames per buffer that may be requested.

Definition at line 226 of file ecam.h.

◆ iMaxZoom

TInt TCameraInfo::iMaxZoom

Maximum zoom value allowed.

Must be positive, or zero if not supported.

This is the maximum value that may be passed to CCamera::SetZoomFactorL().

Definition at line 164 of file ecam.h.

◆ iMaxZoomFactor

TReal32 TCameraInfo::iMaxZoomFactor

Image size multiplier corresponding to maximum zoom value.

May take the value 0, or values greater than or equal to 1. Both 0 and 1 indicate that zoom functionality is not supported.

Definition at line 182 of file ecam.h.

◆ iMinZoom

TInt TCameraInfo::iMinZoom

Minimum zoom value allowed.

Must be negative, or zero if not supported.

This is the minimum value that may be passed to CCamera::SetZoomFactorL().

Definition at line 158 of file ecam.h.

◆ iMinZoomFactor

TReal32 TCameraInfo::iMinZoomFactor

Image size multiplier corresponding to minimum zoom value.

Must be between 0 and 1 inclusive. Both 0 and 1 indicate that macro functionality is not supported.

Definition at line 177 of file ecam.h.

◆ iNumImageSizesSupported

TInt TCameraInfo::iNumImageSizesSupported

Count of still image capture sizes allowed.

Number of different image sizes that CCamera::EnumerateCaptureSizes() will support, based on the index passed in. Index must be between 0 and iNumImageSizesSupported-1.

Definition at line 195 of file ecam.h.

◆ iNumVideoFrameRatesSupported

TInt TCameraInfo::iNumVideoFrameRatesSupported

Count of video frame rates allowed.

This is the number of different video frame rates that CCamera::EnumerateVideoFrameRates() will support, based on the specified index. The index must be between 0 and iNumVideoFrameRatesSupported-1.

Definition at line 212 of file ecam.h.

◆ iNumVideoFrameSizesSupported

TInt TCameraInfo::iNumVideoFrameSizesSupported

Count of video frame sizes allowed.

This is the number of different video frame sizes that CCamera::EnumerateVideoFrameSizes() will support, based on the specified index. The index must be between 0 and iNumVideoFrameSizesSupported-1.

Definition at line 206 of file ecam.h.

◆ iOptionsSupported

TUint32 TCameraInfo::iOptionsSupported

Bitfield of TOptions available.

Definition at line 117 of file ecam.h.

◆ iOrientation

TCameraOrientation TCameraInfo::iOrientation

Orientation of this particular camera device.

Definition at line 114 of file ecam.h.

◆ iSoftwareVersion

TVersion TCameraInfo::iSoftwareVersion

Version number and name of camera software (device driver).

Definition at line 112 of file ecam.h.

◆ iVideoFrameFormatsSupported

TUint32 TCameraInfo::iVideoFrameFormatsSupported

The supported video frame formats.

This is a bitfield of video frame CCamera::TFormat values.

If methods CCamera::New2L() or CCamera::NewDuplicate2L() are not used to create the CCamera object, it is assumed that the application may not be able to cope with any future additions to the enum values. So, any unrecognised enum value passed from the implementation should be filtered by the ECAM implementation. To receive unrecognised/extra added enum values, the application should rather use CCamera::New2L() or CCamera::NewDuplicate2L() to create the camera object. This is an indication to the ECAM implementation. In this case, the application is assumed to be prepared to receive unrecognised enum values.

Definition at line 224 of file ecam.h.

◆ iWhiteBalanceModesSupported

TUint32 TCameraInfo::iWhiteBalanceModesSupported

The supported white balance settings.

This is a bitfield of of CCamera::TWhiteBalance values.

If methods CCamera::New2L() or CCamera::NewDuplicate2L() are not used to create the CCamera object, it is assumed that the application may not be able to cope with any future additions to the enum values. So, any unrecognised enum value passed from the implementation should be filtered by ECAM Implementation. To receive unrecognised/extra added enum values, application should rather use CCamera::New2L() or CCamera::NewDuplicate2L() to create camera object. This is an indication to ECAM implementation. In this case, application is assumed to be prepared to receive unrecognised enum values. Refer to CCamera::CCameraAdvancedSettings::SupportedWhiteBalanceModes() implementation

See also
CCamera::CCameraAdvancedSettings::SupportedWhiteBalanceModes()

Definition at line 151 of file ecam.h.


The documentation for this class was generated from the following file: