diff -r 43e37759235e -r 51a74ef9ed63 Symbian3/SDK/Source/GUID-367ADFD7-A0F5-59D3-BF83-913CB8126B9D.dita --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Symbian3/SDK/Source/GUID-367ADFD7-A0F5-59D3-BF83-913CB8126B9D.dita Wed Mar 31 11:11:55 2010 +0100 @@ -0,0 +1,17 @@ + + + + + + Overview

This document introduces you to the Viewfinder API.

Purpose

The Viewfinder enables you to pause and resume the direct viewfinder which is currently active and has been started using Ccamera methods.

Viewfinder Library Details

The DLLs listed below provide the viewfinder functionality and the library to which your code must link is identified below.

DLL Classes LIB Short Description

ECamAdvSettings.dll

CCamera::StartViewFinderDirectL() starts viewfinder.

CCamera::CCameraDirectViewFinder allows to use direct viewfinder.

euser.lib

ecampluginsupport.lib

These files are used by ECAM clients to provide a certain type of control over direct viewfinder.

Ecam.dll and ecamdirectviewfinder.dll

CCameraViewFinder

Camera::CCameraV2DirectViewFinder and CCamera::CCameraClientViewFinder (for starting multiple viewfinders).

euser.lib

ecampluginsupport.lib

These files are used for implementing the Viewfinder functionalities.

Architectural Relationship

This is part of the camera component.

Description

The Viewfinder acquires information about the current state of that direct viewfinder. The different possible states are active, paused and inactive. It allows you to pause and resume the direct viewfinder that is currently active and has been started using CCamera functions.

Key Viewfinder Classes

The key classes that make up the Viewfinder API are as follows:

  • CCamera::StartViewFinderDirectL()

    Class CCamera is used to start the direct viewfinder using the CCamera::StartViewFinderDirectL() method. This starts the direct viewfinder and displays viewfinder data to a specified portion of the screen using direct screen access. CCamera::CCameraDirectViewFinder can then be used to pause and resume the viewfinder.

    Note: Licensees must provide a concrete implementation of CCamera::StartViewFinderDirectL().

    // Pause direct viewfinder + directviewfinder->PauseViewFinderDirectL(); + // Resume direct viewfinder + directviewfinder->ResumeViewFinderDirectL();
  • CCamera::CCameraDirectViewFinder class is used to provide support for Direct Viewfinder functions such as pause and resume.

    Note: Licensees must provide a concrete implementation of MCameraDirectViewFinder.

    • + CCamera::CCameraDirectViewFinder::PauseViewFinderDirectL()

      Pauses the direct viewfinder.

    • + CCamera::CCameraDirectViewFinder::ResumeViewFinderDirectL()

      Resumes the direct viewfinder.

Multiple viewfinders may run at the same time by the use of new extension classes:

  • CcameraV2DirectViewFinder: This provides the necessary framework for multiple direct viewfinder support. The direct viewfinder classes are provided as a part of Version2 direct viewfinder implementation.

  • CcameraClientViewFinder: This provides the necessary framework for multiple client viewfinder support. The client viewfinder classes are provided as a part of client viewfinder implementation.

Note: Licensees must provide a concrete implementation of MCameraViewFinder, MCameraV2DirectViewFinder and MCameraClientViewFinder.

Using Viewfinder

Clients can use the Viewfinder to:

  • Run multiple viewfinders on different displays of camera. It can be executed on TV screen with different orientation based on its topology and on LCD display.

  • Expand or reduce the view of the captured image.

  • Add region of interest specification and control.

See also

Overview of Camera Framework

The Viewfinder Tutorial

\ No newline at end of file