Dirac - A Video Codec
Created by the British Broadcasting Corporation.
dirac::ByteIO Class Reference
Class ByteIO - top-level class for reading/writing bytes to a stream.
#include <byteio.h>
Inheritance diagram for dirac::ByteIO:
List of all members.Public Member Functions
- ByteIO (bool new_stream=true)
- Default constructor.
- ByteIO (const ByteIO &stream_data)
- Constructor.
- virtual ~ByteIO ()
- Destructor.
- virtual void CollateByteStats (DiracByteStats &dirac_byte_stats)
- Gathers byte-stream statistics.
- virtual const std::string GetBytes ()
- Get bytes in Dirac-bytestream format.
- int GetReadBytePosition () const
- Get position of read stream pointer.
- virtual int GetSize () const
- Gets size (in bytes).
- void SetByteParams (const ByteIO &byte_io)
- Copies stream source/destination info.
- void ByteAlignOutput ()
- Sync input for byte-alignment.
- void WriteUint (const unsigned int &value)
- Ouputs an unsigned integer in interleaved exp Golomb format.
- void SetBitsLeft (int left_bits)
- Sets input size in bits.
- int BitsLeft (void)
- Sets input size in bits.
Protected Member Functions
- bool CanRead () const
- bool GetBit (unsigned char &c, int pos) const
- void SetBit (unsigned char &c, int pos) const
- void SetBits (unsigned char &c, unsigned char bits) const
- void ByteAlignInput ()
- Sync input for byte-alignment.
- bool ReadBool ()
- Reads boolean value.
- bool ReadBoolB ()
- Reads boolean value - bounded i/o.
- int ReadBit ()
- Reads next bit.
- int ReadBitB ()
- Reads next bit - bounded i/o.
- unsigned int ReadNBits (int count)
- Reads next 'count' bits.
- void InputBytes (char *data, int count)
- Reads from stream.
- void FlushInputB ()
- Flushes the bounde input.
- int ReadSint ()
- Reads a signed integer in interleaved exp-Golomb format return Signed integer read.
- int ReadSintB ()
- Reads a signed integer in interleaved exp-Golomb format from bounded input return Signed integer read.
- unsigned int ReadUint ()
- Reads an unsigned integer in interleaved exp Golomb format.
- unsigned int ReadUintB ()
- Reads an unsigned integer in interleaved exp Golomb format from bounded input.
- unsigned int ReadUintLit (const int byte_size)
- Reads a fixed length unsigned integer from the stream in big endian.
- unsigned char InputUnByte ()
- Reads a byte from the stream.
- std::string InputUnString (const int count)
- Reads a series of bytes from a stream.
- void WriteBit (const bool &bit)
- Outputs a bit.
- int WriteNBits (unsigned int val)
- Outputs an unsigned integer.
- void WriteNBits (unsigned int val, int count)
- Outputs an n bit integer.
- void OutputBytes (const std::string &bytes)
- Outputs a series of bytes.
- void OutputCurrentByte ()
- Outputs current byte contents.
- void WriteSint (const int val)
- Outputs an integer in Golomb signed integer format.
- void WriteUintLit (const unsigned int &value, const int &length)
- Output unsigned int value in big endian format.
- void RemoveRedundantBytes (const int count)
- Removes portion of byte-stream no longer required.
- void SeekGet (const int offset, std::ios_base::seekdir dir)
Protected Attributes
- std::stringstream * mp_stream
- Input/output steam.
Private Attributes
Friends
Constructor & Destructor Documentation
dirac::ByteIO::ByteIO |
( |
bool |
new_stream = true |
) |
|
|
|
- Parameters:
-
| new_stream | Has Creates & owns data buffer |
|
dirac::ByteIO::ByteIO |
( |
const ByteIO & |
stream_data |
) |
|
|
|
- Parameters:
-
| stream_data | Copies data buffer details |
|
virtual dirac::ByteIO::~ByteIO |
( |
|
) |
[virtual] |
|
Member Function Documentation
int dirac::ByteIO::BitsLeft |
( |
void |
|
) |
[inline] |
|
void dirac::ByteIO::ByteAlignInput |
( |
|
) |
[protected] |
|
void dirac::ByteIO::ByteAlignOutput |
( |
|
) |
|
|
bool dirac::ByteIO::CanRead |
( |
|
) |
const [inline, protected] |
|
virtual void dirac::ByteIO::CollateByteStats |
( |
DiracByteStats & |
dirac_byte_stats |
) |
[inline, virtual] |
|
void dirac::ByteIO::FlushInputB |
( |
|
) |
[protected] |
|
bool dirac::ByteIO::GetBit |
( |
unsigned char & |
c, |
|
|
int |
pos |
|
) |
const [inline, protected] |
|
virtual const std::string dirac::ByteIO::GetBytes |
( |
|
) |
[virtual] |
|
int dirac::ByteIO::GetReadBytePosition |
( |
|
) |
const [inline] |
|
virtual int dirac::ByteIO::GetSize |
( |
|
) |
const [virtual] |
|
void dirac::ByteIO::InputBytes |
( |
char * |
data, |
|
|
int |
count |
|
) |
[inline, protected] |
|
|
- Parameters:
-
| data | Start of char buffer |
| count | Number of bytes to read |
|
unsigned char dirac::ByteIO::InputUnByte |
( |
|
) |
[inline, protected] |
|
std::string dirac::ByteIO::InputUnString |
( |
const int |
count |
) |
[inline, protected] |
|
void dirac::ByteIO::OutputBytes |
( |
const std::string & |
bytes |
) |
[inline, protected] |
|
void dirac::ByteIO::OutputCurrentByte |
( |
|
) |
[inline, protected] |
|
int dirac::ByteIO::ReadBit |
( |
|
) |
[protected] |
|
int dirac::ByteIO::ReadBitB |
( |
|
) |
[protected] |
|
bool dirac::ByteIO::ReadBool |
( |
|
) |
[protected] |
|
bool dirac::ByteIO::ReadBoolB |
( |
|
) |
[protected] |
|
unsigned int dirac::ByteIO::ReadNBits |
( |
int |
count |
) |
[protected] |
|
|
- Parameters:
-
| count | number of bits to be read |
- Returns:
- unsigned interger read
|
int dirac::ByteIO::ReadSint |
( |
|
) |
[protected] |
|
int dirac::ByteIO::ReadSintB |
( |
|
) |
[protected] |
|
unsigned int dirac::ByteIO::ReadUint |
( |
|
) |
[protected] |
|
|
- Returns:
- Unsigned Integer read
|
unsigned int dirac::ByteIO::ReadUintB |
( |
|
) |
[protected] |
|
|
- Returns:
- Unsigned Integer read
|
unsigned int dirac::ByteIO::ReadUintLit |
( |
const int |
byte_size |
) |
[inline, protected] |
|
|
- Parameters:
-
| byte_size | Number of bytes in fixed length integer |
- Returns:
- Unsigned Integer read
|
void dirac::ByteIO::RemoveRedundantBytes |
( |
const int |
count |
) |
[protected] |
|
|
- Parameters:
-
| count | Number of bytes to be removed from beginning of stream |
|
void dirac::ByteIO::SeekGet |
( |
const int |
offset, |
|
|
std::ios_base::seekdir |
dir |
|
) |
[inline, protected] |
|
void dirac::ByteIO::SetBit |
( |
unsigned char & |
c, |
|
|
int |
pos |
|
) |
const [inline, protected] |
|
void dirac::ByteIO::SetBits |
( |
unsigned char & |
c, |
|
|
unsigned char |
bits |
|
) |
const [inline, protected] |
|
void dirac::ByteIO::SetBitsLeft |
( |
int |
left_bits |
) |
[inline] |
|
void dirac::ByteIO::SetByteParams |
( |
const ByteIO & |
byte_io |
) |
|
|
|
- Parameters:
-
| byte_io | Byte source/destination |
|
void dirac::ByteIO::WriteBit |
( |
const bool & |
bit |
) |
[protected] |
|
void dirac::ByteIO::WriteNBits |
( |
unsigned int |
val, |
|
|
int |
count |
|
) |
[protected] |
|
|
- Parameters:
-
| val | Unsigned Integer to be output |
| count | number of bits to be written |
|
int dirac::ByteIO::WriteNBits |
( |
unsigned int |
val |
) |
[protected] |
|
|
- Parameters:
-
- Returns:
- number of bits written
|
void dirac::ByteIO::WriteSint |
( |
const int |
val |
) |
[protected] |
|
void dirac::ByteIO::WriteUint |
( |
const unsigned int & |
value |
) |
|
|
|
- Parameters:
-
| value | Integer to be output |
|
void dirac::ByteIO::WriteUintLit |
( |
const unsigned int & |
value, |
|
|
const int & |
length |
|
) |
[inline, protected] |
|
|
- Parameters:
-
| value | Integer to be output |
| length | number of bytes in val to output |
|
Friends And Related Function Documentation
Member Data Documentation
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.