# Dirac - A Video Codec

Created by the British Broadcasting Corporation.

# dirac::EntropyCorrector Class Reference

A class used for correcting estimates of entropy. More...

`#include <common.h>`

Collaboration diagram for dirac::EntropyCorrector:

[legend]
List of all members.

## Public Member Functions

- EntropyCorrector (int depth)
    Constructor.
- float Factor (const int bandnum, const FrameSort fsort, const CompSort c) const
    Returns the correction factor.
- void Update (int bandnum, FrameSort fsort, CompSort c, int est_bits, int actual_bits)
    Update the correction factors.

## Private Member Functions

- void Init ()
    Initialises the correction factors.

## Private Attributes

- TwoDArray< float > m_Yfctrs
- TwoDArray< float > m_Ufctrs
- TwoDArray< float > m_Vfctrs

## Detailed Description

A class used by the encoder for correcting estimates of entropy. Used for selecting quantisers in subband coefficient coding. Factors can be adjusted in the light of previous experience.

## Constructor & Destructor Documentation

dirac::EntropyCorrector::EntropyCorrector | ( | int | depth | ) |

Constructs arrays of correction factors of size.

Parameters:

  | depth | the depth of the wavelet transform.

## Member Function Documentation

float dirac::EntropyCorrector::Factor | ( | const int | bandnum,
|  | const FrameSort | fsort,
|  | const CompSort | c |
| ) |  |  | const

Returns the correction factor for the band given also the type of frame and component.

void dirac::EntropyCorrector::Init | ( |  | ) | `[private]`

void dirac::EntropyCorrector::Update | ( | int | bandnum,
|  | FrameSort | fsort,
|  | CompSort | c,
|  | int | est_bits,
|  | int | actual_bits |
| ) |  |  |

Update the factors for a given subband, component and frame type.

Parameters:

  | bandnum | the number of the subband to update
  | fsort | frame type
  | c | component type
  | est_bits | the number of bits it was estimated would be used
  | actual_bits | the number of bits that actually were used

## Member Data Documentation

TwoDArray<float> dirac::EntropyCorrector::m_Ufctrs`[private]`

TwoDArray<float> dirac::EntropyCorrector::m_Vfctrs`[private]`

TwoDArray<float> dirac::EntropyCorrector::m_Yfctrs`[private]`

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

- common.h

© 2004 British Broadcasting Corporation. Dirac code licensed under the Mozilla Public License (MPL) Version 1.1.
HTML documentation generated by Dimitri van Heesch's excellent Doxygen tool.