class CCamera::CCameraV2DirectViewFinder : public CCameraViewFinder |
CCamera direct view finder v2 class is used to provide support for multiple Direct View Finder. A new instance of this class will be created for every new direct viewfinder.
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.
Clients must implement an MDirectViewFinderObserver in order to use this CCameraV2DirectViewFinder API.
Public Member Functions | |
---|---|
~CCameraV2DirectViewFinder() | |
IMPORT_C CCamera::CCameraV2Histogram * | CreateHistogramHandleL() |
IMPORT_C CCamera::CCameraDirectSnapshot * | GetDirectSnapshotHandleL() |
IMPORT_C void | GetDirectViewFinderPropertiesL(TInt &, TRect &, TRect &) |
IMPORT_C CCamera::CCameraImageProcessing * | GetTransformationHandleL() |
IMPORT_C void | GetViewFinderStateL(TViewFinderState &) |
IMPORT_C CCameraV2DirectViewFinder * | NewL(CCamera &, MDirectViewFinderObserver &) |
IMPORT_C void | PauseViewFinderDirect() |
IMPORT_C void | ResumeViewFinderDirect() |
IMPORT_C void | StartViewFinderDirectL(RWsSession &, CWsScreenDevice &, RWindowBase &, TRect &) |
IMPORT_C void | StartViewFinderDirectL(RWsSession &, CWsScreenDevice &, RWindowBase &, TRect &, TRect &) |
IMPORT_C void | StopDirectViewFinder() |
Private Member Functions | |
---|---|
CCameraV2DirectViewFinder(CCamera &) | |
void | ConstructL(MDirectViewFinderObserver &) |
MCameraV2DirectViewFinder * | Impl() |
void | SetImplBaseHandle() |
void | SetImplHandle() |
Public Member Enumerations | |
---|---|
enum | TViewFinderState { EViewFinderActive, EViewFinderPause, EViewFinderInActive } |
Inherited Enumerations | |
---|---|
CCameraViewFinder:TImageEnhancement | |
CCameraViewFinder:TViewFinderFadingControl | |
CCameraViewFinder:TViewFinderFadingDirection | |
CCameraViewFinder:TViewFinderFadingType |
Private Attributes | |
---|---|
MCameraV2DirectViewFinder * | iImpl |
Inherited Attributes | |
---|---|
CCameraViewFinder::iImplBase | |
CCameraViewFinder::iOwner |
CCameraV2DirectViewFinder | ( | CCamera & | aOwner | ) | [private] |
CCameraV2DirectViewFinder Constructor.
CCamera & aOwner | A reference to a CCamera object providing the settings. |
IMPORT_C | ~CCameraV2DirectViewFinder | ( | ) |
The child objects created out of this direct viewfinder class object shall be delete beforehand. Various child objects are snapshot and histograms.
void | ConstructL | ( | MDirectViewFinderObserver & | aDirectViewFinderObserver | ) | [private] |
MDirectViewFinderObserver & aDirectViewFinderObserver |
IMPORT_C CCamera::CCameraV2Histogram * | CreateHistogramHandleL | ( | ) | const |
Retrieve pointer to histogram API in order to use it specifically for a particular viewfinder.
Different types of histogram may be used for a specific viewfinder. Every time this method will be called on the CCameraV2DirectViewFinder class object, a new type of histogram will be created.
IMPORT_C CCamera::CCameraDirectSnapshot * | GetDirectSnapshotHandleL | ( | ) | const |
Retrieve pointer to direct snapshot API in order to use it for displaying the snapshots for still images directly on the given direct viewfinder screen.
Direct snapshot API is not supposed to be used for snapshots for video.
IMPORT_C void | GetDirectViewFinderPropertiesL | ( | TInt & | aScreenNumber, |
TRect & | aScreenRect, | |||
TRect & | aClipRect | |||
) | const |
Retrieves the parameters associated with the direct viewfinder.
TInt & aScreenNumber | Retrieves the screen number on which the direct viewfinder is supposed to run. |
TRect & aScreenRect | Retrieves the TRect which identifies the portion of the screen to which view finder data is to be transferred. |
TRect & aClipRect | Retrieves the TRect which identifies the rectangle to which the screen will be clipped. |
IMPORT_C CCamera::CCameraImageProcessing * | GetTransformationHandleL | ( | ) | const |
Retrieve pointer to image processing API in order to use it specifically for a particular viewfinder.
IMPORT_C void | GetViewFinderStateL | ( | TViewFinderState & | aViewFinderState | ) | const |
Retrieves the state of the direct viewfinder.
TViewFinderState & aViewFinderState | Retrieves the state of the direct viewfinder. |
MCameraV2DirectViewFinder * | Impl | ( | ) | [private] |
Provides the interface pointer for the MCameraV2DirectViewFinder implementation.
IMPORT_C CCameraV2DirectViewFinder * | NewL | ( | CCamera & | aOwner, |
MDirectViewFinderObserver & | aDirectViewFinderObserver | |||
) | [static] |
Factory function for creating the CCameraV2DirectViewFinder object.
CCamera & aOwner | A reference to a CCamera object providing the settings. |
MDirectViewFinderObserver & aDirectViewFinderObserver | Reference to the direct view finder observer. |
IMPORT_C void | ResumeViewFinderDirect | ( | ) |
Resumes the direct viewfinder
MDirectViewFinderObserver::DirectViewFinderFirstFrameDisplayed() will be used to notify clients that the first frame has been displayed.
void | SetImplBaseHandle | ( | ) | [private] |
Gets the handle to the implementer's MCameraViewFinder derived class for v2 direct viewfinder.
void | SetImplHandle | ( | ) | [private] |
Gets the handle to the implementer's MCameraV2DirectViewFinder derived class.
IMPORT_C void | StartViewFinderDirectL | ( | RWsSession & | aWs, |
CWsScreenDevice & | aScreenDevice, | |||
RWindowBase & | aWindow, | |||
TRect & | aScreenRect | |||
) |
Creates a new viewfinder and starts transfer of view finder data to the given portion of the screen using direct screen access.
The aScreenRect parameter is in screen coordinates and may be modified if, for example, the camera requires the destination to have a certain byte alignment, and so on.
MDirectViewFinderObserver::DirectViewFinderFirstFrameDisplayed() will be used to notify clients that the first frame has been displayed.
RWsSession & aWs | Window server session. |
CWsScreenDevice & aScreenDevice | Screen device. |
RWindowBase & aWindow | Displayable window. |
TRect & aScreenRect | Portion of the screen to which view finder data is to be transferred. This is in screen co-ordinates and may be modified if, for example, the camera requires the destination to have a certain byte alignment. |
IMPORT_C void | StartViewFinderDirectL | ( | RWsSession & | aWs, |
CWsScreenDevice & | aScreenDevice, | |||
RWindowBase & | aWindow, | |||
TRect & | aScreenRect, | |||
TRect & | aClipRect | |||
) |
Creates a new viewfinder and starts transfer of view finder data to the given portion of the screen using direct screen access and also clips to the specified portion of the screen.
The view finder has the same size and position as aScreenRect but is only visible in the intersection of aScreenRect and aClipRect. May leave with KErrNotSupported or KErrNotReady if Reserve() has not been called, or has not yet completed.
MDirectViewFinderObserver::DirectViewFinderFirstFrameDisplayed() will be used to notify clients that the first frame has been displayed.
RWsSession & aWs | Window server session. |
CWsScreenDevice & aScreenDevice | Screen device. |
RWindowBase & aWindow | Displayable window. |
TRect & aScreenRect | Portion of the screen to which view finder data is to be transferred. This is in screen coordinates and may be modified if, for example, the camera requires the destination to have a certain byte alignment. |
TRect & aClipRect | The rectangle to which the screen will be clipped. |
Specifies direct viewfinder state.
EViewFinderActive |
View Finder is activated |
EViewFinderPause |
View Finder has been paused |
EViewFinderInActive |
View Finder has been stopped or hasn't yet started. Default state. |
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.