Dirac - A Video Codec

Created by the British Broadcasting Corporation.


dirac::FrameDecompressor Class Reference

Compress a single image frame. More...

#include <frame_decompress.h>

Collaboration diagram for dirac::FrameDecompressor:

[legend]
List of all members.

Public Member Functions

Private Member Functions

Private Attributes


Detailed Description

This class decompresses a single frame at a time, using parameters supplied at its construction. FrameDecompressor is used by SequenceDecompressor.


Constructor & Destructor Documentation

dirac::FrameDecompressor::FrameDecompressor ( DecoderParams decp,
ChromaFormat  cf 
)

Creates a FrameDecompressor with specific set of parameters the control the decompression process. It decodes motion data before decoding each component of the frame.

Parameters:
decp decoder parameters
cf the chroma format of the frame being decompressed

dirac::FrameDecompressor::~FrameDecompressor (  ) 

Releases resources.

dirac::FrameDecompressor::FrameDecompressor ( const FrameDecompressor cpy  )  [private]

Copy constructor is private and body-less. This class should not be copied.


Member Function Documentation

bool dirac::FrameDecompressor::Decompress ( ParseUnitByteIO parseunit_byteio,
FrameBuffer my_buffer 
)

Decompresses the next frame from the stream and place at the end of a frame buffer. Returns true if able to decode successfully, false otherwise

Parameters:
parseunit_byteio Frame info in Dirac-stream format
my_buffer picture buffer into which the frame is placed

const FrameParams& dirac::FrameDecompressor::GetFrameParams (  )  const [inline]

FrameDecompressor& dirac::FrameDecompressor::operator= ( const FrameDecompressor rhs  )  [private]

Assignment = is private and body-less. This class should not be assigned.

void dirac::FrameDecompressor::CleanReferenceFrames ( FrameBuffer my_buffer  )  [private]

void dirac::FrameDecompressor::CompDecompress ( TransformByteIO p_transform_byteio,
FrameBuffer my_buffer,
int  fnum,
CompSort  cs 
) [private]

void dirac::FrameDecompressor::DecompressMVData ( std::auto_ptr< MvData > &  mv_data,
FrameByteIO frame_byteio 
) [private]

void dirac::FrameDecompressor::SetMVBlocks (  )  [private]

void dirac::FrameDecompressor::PushFrame ( FrameBuffer my_buffer  )  [private]


Member Data Documentation

DecoderParams& dirac::FrameDecompressor::m_decparams [private]

ChromaFormat dirac::FrameDecompressor::m_cformat [private]

bool dirac::FrameDecompressor::m_skipped [private]

bool dirac::FrameDecompressor::m_use_global [private]

bool dirac::FrameDecompressor::m_use_block_mv [private]

PredMode dirac::FrameDecompressor::m_global_pred_mode [private]

FrameParams dirac::FrameDecompressor::m_fparams [private]


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

© 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.