Dirac - A Video Codec

Created by the British Broadcasting Corporation.


dirac::BasicOutputManager Class Reference

Class for managing bit- and byte-oriented output. More...

#include <bit_manager.h>

List of all members.

Public Member Functions

Private Member Functions

Private Attributes

Friends


Detailed Description

A class for managing bit- and byte-oriented output. Wraps around an ostream object but stores data in memory until told told to write out in order to support data re-ordering - for example writing a header once the subsequent data has been obtained. Implementation to be reviewed in future. TJD 13 April 2004.


Constructor & Destructor Documentation

dirac::BasicOutputManager::BasicOutputManager ( std::ostream *  out_data  ) 

Constructor requires an ostream object pointer.

Parameters:
out_data the output stream object pointer

dirac::BasicOutputManager::~BasicOutputManager (  )  [inline]


Member Function Documentation

void dirac::BasicOutputManager::OutputBit ( const bool &  bit  ) 

Write a bit out to the internal data cache.

void dirac::BasicOutputManager::OutputBit ( const bool &  bit,
int &  count 
)

Write a bit out to the internal data cache and increment the count of bits written.

void dirac::BasicOutputManager::OutputByte ( const char &  byte  ) 

Write a byte out to the internal data cache.

void dirac::BasicOutputManager::OutputBytes ( char *  str_array  ) 

Write a null-terminated set of bytes out to the internal data cache.

void dirac::BasicOutputManager::OutputBytes ( char *  str_array,
int  num 
)

Write a number of bytes out to the internal data cache.

size_t dirac::BasicOutputManager::GetNumBytes (  )  const [inline]

Return the number of bytes last output to file.

size_t dirac::BasicOutputManager::Size (  )  const

Current size of the internal data cache in bytes.

void dirac::BasicOutputManager::WriteToFile (  )  [private]

Dump the internal data cache to the internal ostream object.

void dirac::BasicOutputManager::InitOutputStream (  )  [private]

void dirac::BasicOutputManager::FlushOutput (  )  [private]

void dirac::BasicOutputManager::OutputSkipInterpretStartPrefixByte (  )  [private]

Write a skip interpret start prefix byte out to the internal data cache.


Friends And Related Function Documentation

friend class UnitOutputManager [friend]

friend class FrameOutputManager [friend]

friend class SequenceOutputManager [friend]


Member Data Documentation

size_t dirac::BasicOutputManager::m_num_out_bytes [private]

std::ostream* dirac::BasicOutputManager::m_op_ptr [private]

std::vector<char> dirac::BasicOutputManager::m_buffer [private]

char dirac::BasicOutputManager::m_current_byte [private]

int dirac::BasicOutputManager::m_output_mask [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.