CCamera::CCameraDirectSnapshot Class Reference
class CCamera::CCameraDirectSnapshot : public CBase |
This class allows the client to enable direct snapshot feature for still images only. The direct snapshot API can not be used for video.
The direct snapshot can be created out of CCameraV2DirectViewFinder object only. Its lifetime is dependent on the parent direct viewfinder object. So, the client is supposed to destroy the direct snapshot object before deleting the parent direct viewfinder object. The MDirectViewFinderObserver observer class provides callback to notify the client whenever direct snapshot data gets displayed on the given direct viewfinder screen. The callback also provides information regarding the CCameraImageCapture object used to issue the image capture calls. It also provides the Id for the individual images which get represented by the snapshot displayed.
Note:
This class provides a standardised client interface for the direct snapshot. Classes cannot be derived from it.
If the class methods leave, the output type parameter value is not guaranteed to be valid.
Inherits from
- CCamera::CCameraDirectSnapshot
Nested Classes and Structures
Constructor & Destructor Documentation
CCameraDirectSnapshot()
CCameraDirectSnapshot | ( | ) | [private] |
~CCameraDirectSnapshot()
IMPORT_C | ~CCameraDirectSnapshot | ( | ) | |
Member Functions Documentation
ConstructL(CCamera::CCameraV2DirectViewFinder &)
CCameraDirectSnapshot second phase constructor
Function used to initialise internal state of the object.
-
leave
- KErrNoMemory Out of memory; or any other error code as well.
Note:
This method is supposed to be used by this class only.
CreateL(CCamera::CCameraV2DirectViewFinder &)
Factory function that creates a new camera direct snapshot object.
-
leave
- KErrNoMemory if out of memory; also any system wide error.
DirectViewFinderImpl(CCamera::CCameraV2DirectViewFinder &)
DisableDirectSnapshot()
IMPORT_C void | DisableDirectSnapshot | ( | ) | |
Disable the direct snapshot. The direct snapshot will not be displayed on the parent direct viewfinder screen.
EnableDirectSnapshotL(TDirectSnapshotParameters &)
Enable the direct snapshot. The direct snapshot will be displayed on the parent direct viewfinder screen. The screen size of the snapshot will be the same as that of the parent direct viewfinder screen.
The direct snapshot can be displayed only for still images.
-
leave
- May leave with any error code.
GetDirectSnapshotParametersL(TDirectSnapshotParameters &)
Retrieves the direct snapshot parameters.
-
leave
- May leave with any error code.
Parameters
TDirectSnapshotParameters & aDirectSnapshotParameters | Retrieves the direct snapshot parameter of type TDirectSnapshotParameters. |
GetDirectSnapshotStateL(TDirectSnapshotState &)
Retrieves the current state for direct snapshot.
-
leave
- May leave with any error code.
GetDirectViewFinderL(CCamera::CCameraV2DirectViewFinder *&)
Retrieve the version2 direct viewfinder object out of which this direct snapshot has been created. This information may be required by the client in order to map the direct snapshot object with its parent version2 direct viewfinder object or also to retrieve properties of its parent version2 direct viewfinder object.
-
leave
- May leave with any error code.
SetDirectSnapshotParametersL(const TDirectSnapshotParameters &)
Sets the direct snapshot parameters.
-
leave
- May leave with any error code.
Parameters
const TDirectSnapshotParameters & aDirectSnapshotParameters | The desired direct snapshot parameter of type TDirectSnapshotParameters. |
Member Enumerations Documentation
Enum TDirectSnapshotState
Describes the state of direct snapshot. The enumeration list may be extended in future.
Enumerators
EDirectSnapshotEnabled |
The direct snapshot has been enabled.
|
EDirectSnapshotDisabled |
The direct snapshot has been disabled.
|
Member Data Documentation
MCameraDirectSnapshot * iImpl
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.