diff -r ebc84c812384 -r 46218c8b8afa Symbian3/PDK/Source/GUID-3074D4E5-25EA-5DA0-877D-6E3086DCBDB5.dita --- a/Symbian3/PDK/Source/GUID-3074D4E5-25EA-5DA0-877D-6E3086DCBDB5.dita Thu Mar 11 15:24:26 2010 +0000 +++ b/Symbian3/PDK/Source/GUID-3074D4E5-25EA-5DA0-877D-6E3086DCBDB5.dita Thu Mar 11 18:02:22 2010 +0000 @@ -1,13 +1,13 @@ - - - - - - Overview

This document introduces you to Histogram.

Purpose

Histogram provides the functionality needed to work with histogram data in a specified format for an image (for example, luminance based histogram or average colour value histogram).

The data generated can be application rendered. In this case the application gets histogram frequencies and renders them onto a bitmap. The data can also be camera rendered, meaning it is displayed directly in the viewfinder. In the camera rendered case, the client can specify properties of the histogram such as size, colour and position.

Histogram Library Details

The DLL that provides the functionality and the library to which your code must link is identified below.

DLL LIB Short Description

ecamhistogram.dll

ecamhistogram.lib

These files are used for implementing the Histogram APIs.

Architectural Relationship

Histogram is part of the camera component.

Description

Histogram allows only one type per object. To allow multiple types of histogram for a given imaging mode, multiple histogram objects need to be created for that imaging mode. Histogram objects are created separately for still images, video, viewfinders and snapshots. Call-backs associated with still images, video and viewfinders notify clients about the generation of histogram data. For client histograms, the data is available in buffers.

MhistogramV2Buffer interface provides only one buffer at a time. Unless new histogram data is available through MhistogramV2Buffer, the same histogram data is used for the image modes.

Key Histogram API Classes

The key classes that make up the Histogram are as follows:

  • CcameraV2Histogram

    Exposes an API for the client to get client histogram data and also to display the direct histogram on the screen.

  • CcameraHistogram

    A facade class, which is used to access camera histogram functionality.

  • + + + + + + Overview

    This document introduces you to Histogram.

    Purpose

    Histogram provides the functionality needed to work with histogram data in a specified format for an image (for example, luminance based histogram or average colour value histogram).

    The data generated can be application rendered. In this case the application gets histogram frequencies and renders them onto a bitmap. The data can also be camera rendered, meaning it is displayed directly in the viewfinder. In the camera rendered case, the client can specify properties of the histogram such as size, colour and position.

    Histogram Library Details

    The DLL that provides the functionality and the library to which your code must link is identified below.

    DLL LIB Short Description

    ecamhistogram.dll

    ecamhistogram.lib

    These files are used for implementing the Histogram APIs.

    Architectural Relationship

    Histogram is part of the camera component.

    Description

    Histogram allows only one type per object. To allow multiple types of histogram for a given imaging mode, multiple histogram objects need to be created for that imaging mode. Histogram objects are created separately for still images, video, viewfinders and snapshots. Call-backs associated with still images, video and viewfinders notify clients about the generation of histogram data. For client histograms, the data is available in buffers.

    MhistogramV2Buffer interface provides only one buffer at a time. Unless new histogram data is available through MhistogramV2Buffer, the same histogram data is used for the image modes.

    Key Histogram API Classes

    The key classes that make up the Histogram are as follows:

    • CcameraV2Histogram

      Exposes an API for the client to get client histogram data and also to display the direct histogram on the screen.

    • CcameraHistogram

      A facade class, which is used to access camera histogram functionality.

    • CCamera::CCameraHistogram::PrepareHistogramL()

      Set the properties of a histogram

    • CCamera::CCameraHistogram::StartHistogramL()

      Request to start receiving histogram data. The camera calls the client's callback MCameraObserver2 interface, with event KUidECamEventCameraHistogram, when histogram data is available to be retrieved.

    • CCamera::CCameraHistogram::HistogramDataL()

      Retrieve the histogram data from the Camera server. The data is returned in an MHistogramBuffer object.

    • CCamera::CCameraHistogram::StopHistogramL()

      Stop receiving histogram notifications. Use CCamera::CCameraHistogram::DestroyHistogramL() to remove the histogram from the Camera server, and release its resources.

    • McameraHistogram

      Interface class for which the device creator must provide an implementation.

    • MhistogramBuffer

      Interface class to transfer histogram data from server to client. The buffer may contain multiple histograms. The class allows the client to access the data as a descriptor to a kernel.

    Using Histogram API

    Clients can use the histogram to:

    • Get histogram data of various types.

    • Retrieve and modify the properties of a direct histogram including the background color, histogram color, its size, position and type.

    See also

    Overview of Camera Framework

    \ No newline at end of file