Created by the British Broadcasting Corporation.
A compressed picture in Dirac bytestream format.
#include <picture_byteio.h>
Public Member Functions | |
PictureByteIO (PictureParams &frame_params, int frame_num) | |
Constructor. More... | |
PictureByteIO (PictureParams &frame_params, const ParseUnitByteIO &parseunit_byteio) | |
Constructor. More... | |
virtual | ~PictureByteIO () |
Destructor. More... | |
void | CollateByteStats (DiracByteStats &dirac_byte_stats) |
Gathers byte stats on the picture data. More... | |
bool | Input () |
Inputs data from Dirac stream-format. More... | |
void | Output () |
Outputs picture values to Dirac stream-format. More... | |
const std::string | GetBytes () |
Gets string containing coded bytes. More... | |
int | GetSize () const |
Gets size (in bytes) More... | |
ParseUnitType | GetType () const |
Gets parse-unit type. More... | |
int | IsRef () const |
Returns true is picture in Reference picture. More... | |
int | IsNonRef () const |
Returns true is picture in Non-Reference picture. More... | |
int | NumRefs () const |
Gets parse-unit type. More... | |
bool | IsIntra () const |
Returns true is picture is Intra picture. More... | |
bool | IsInter () const |
Returns true is picture is Inter picture. More... | |
void | SetMvData (MvDataByteIO *mv_data) |
void | SetTransformData (TransformByteIO *transform_data) |
![]() | |
ParseUnitByteIO () | |
Constructor. More... | |
ParseUnitByteIO (const ByteIO &byte_io) | |
Constructor. More... | |
ParseUnitByteIO (const ParseUnitByteIO &parseunit_byteio) | |
Constructor. More... | |
~ParseUnitByteIO () | |
Destructor. More... | |
virtual void | CollateByteStats (DiracByteStats &dirac_byte_stats) |
Gathers byte stats on the parse-unit data. More... | |
bool | Input () |
Reads from byte-stream to find parse data. More... | |
bool | IsValid () |
Accesses validity of a unit by comparing it with an adjacent unit. More... | |
bool | CanSkip () |
Can Skip past the entire parse-unit. More... | |
virtual const std::string | GetBytes () |
Gets string containing coded bytes. More... | |
void | SetAdjacentParseUnits (ParseUnitByteIO *p_prev_parseunit) |
Set next/previous parse-unit values. More... | |
virtual int | GetSize () const |
Gets size (in bytes) More... | |
int | GetNextParseOffset () const |
Gets expected number of bytes to start of next parse-unit. More... | |
int | GetPreviousParseOffset () const |
Gets number of bytes to start of previous parse-unit. More... | |
virtual ParseUnitType | GetType () const |
Gets parse-unit type. More... | |
bool | IsSeqHeader () const |
Returns true is parse unit is a Sequence Header. More... | |
bool | IsEndOfSequence () const |
Returns true is parse unit is an End of Sequence unit. More... | |
bool | IsAuxiliaryData () const |
Returns true is parse unit is Auxiliary Data. More... | |
bool | IsPaddingData () const |
Returns true is parse unit is Padding data. More... | |
bool | IsPicture () const |
Returns true is parse unit is Picture data. More... | |
bool | IsLowDelay () const |
Returns true is parse unit is Low Delay Sybtax unit. More... | |
bool | IsCoreSyntax () const |
Returns true is parse unit is Core syntax unit. More... | |
bool | IsUsingAC () const |
Returns true is parse unit uses Arithmetic coding. More... | |
![]() | |
ByteIO (bool new_stream=true) | |
Default constructor. More... | |
ByteIO (const ByteIO &stream_data) | |
Constructor. More... | |
virtual | ~ByteIO () |
Destructor. More... | |
virtual void | CollateByteStats (DiracByteStats &dirac_byte_stats) |
Gathers byte-stream statistics. More... | |
virtual const std::string | GetBytes () |
Get bytes in Dirac-bytestream format. More... | |
int | GetReadBytePosition () const |
Get position of read stream pointer. More... | |
virtual int | GetSize () const |
Gets size (in bytes) More... | |
void | SetByteParams (const ByteIO &byte_io) |
Copies stream source/destination info. More... | |
void | ByteAlignOutput () |
Sync input for byte-alignment. More... | |
void | WriteUint (unsigned int value) |
Ouputs an unsigned integer in interleaved exp Golomb format. More... | |
void | SetBitsLeft (int left_bits) |
Sets input size in bits. More... | |
int | BitsLeft (void) |
Sets input size in bits. More... | |
Private Member Functions | |
unsigned char | CalcParseCode () const |
Calculates parse-code based on picture parameters. More... | |
void | InputReferencePictures () |
Reads reference-picture data. More... | |
void | InputRetiredPicture () |
Reads retired picture number. More... | |
void | SetPictureType () |
Calculates picture-type (eg INTRA/INTER) of picture. More... | |
void | SetReferenceType () |
Calculates reference-type of picture. More... | |
void | SetEntropyCodingFlag () |
Sets the entropy coding flag in the picture parameters. More... | |
Private Attributes | |
PictureParams & | m_frame_params |
Picture parameters. More... | |
int | m_frame_num |
Picture number. More... | |
MvDataByteIO * | m_mv_data |
MV data. More... | |
TransformByteIO * | m_transform_data |
Transform data. More... | |
Additional Inherited Members | |
![]() | |
virtual int | CalcNextUnitOffset () |
Calculates number of bytes to start of next unit. More... | |
virtual unsigned char | CalcParseCode () const |
Pure virtual method for calculating parse-code. More... | |
bool | SyncToUnitStart () |
Locates start of parse-unit. More... | |
unsigned char | GetParseCode () const |
Get parse code. More... | |
![]() | |
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. More... | |
bool | ReadBool () |
Reads boolean value. More... | |
bool | ReadBoolB () |
Reads boolean value - bounded i/o. More... | |
int | ReadBit () |
Reads next bit. More... | |
int | ReadBitB () |
Reads next bit - bounded i/o. More... | |
unsigned int | ReadNBits (int count) |
Reads next 'count' bits. More... | |
void | InputBytes (char *data, int count) |
Reads from stream. More... | |
void | FlushInputB () |
Flushes the bounde input. More... | |
int | ReadSint () |
Reads a signed integer in interleaved exp-Golomb format return Signed integer read. More... | |
int | ReadSintB () |
Reads a signed integer in interleaved exp-Golomb format from bounded input return Signed integer read. More... | |
unsigned int | ReadUint () |
Reads an unsigned integer in interleaved exp Golomb format. More... | |
unsigned int | ReadUintB () |
Reads an unsigned integer in interleaved exp Golomb format from bounded input. More... | |
unsigned int | ReadUintLit (const int byte_size) |
Reads a fixed length unsigned integer from the stream in big endian. More... | |
unsigned char | InputUnByte () |
Reads a byte from the stream. More... | |
std::string | InputUnString (const int count) |
Reads a series of bytes from a stream. More... | |
void | WriteBit (const bool &bit) |
Outputs a bit. More... | |
int | WriteNBits (unsigned int val) |
Outputs an unsigned integer. More... | |
void | WriteNBits (unsigned int val, int count) |
Outputs an n bit integer. More... | |
void | OutputBytes (const std::string &bytes) |
Outputs a series of bytes. More... | |
void | OutputCurrentByte () |
Outputs current byte contents. More... | |
void | WriteSint (int val) |
Outputs an integer in Golomb signed integer format. More... | |
void | WriteUintLit (const unsigned int &value, const int &length) |
Output unsigned int value in big endian format. More... | |
void | RemoveRedundantBytes (const int count) |
Removes portion of byte-stream no longer required. More... | |
void | SeekGet (const int offset, std::ios_base::seekdir dir) |
![]() | |
std::stringstream * | mp_stream |
Input/output steam. More... | |
dirac::PictureByteIO::PictureByteIO | ( | PictureParams & | frame_params, |
int | frame_num | ||
) |
dirac::PictureByteIO::PictureByteIO | ( | PictureParams & | frame_params, |
const ParseUnitByteIO & | parseunit_byteio | ||
) |
frame_params | Destination of data |
parseunit_byteio | Source of data |
|
virtual |
|
privatevirtual |
Reimplemented from dirac::ParseUnitByteIO.
|
virtual |
dirac_byte_stats | Stat container |
Reimplemented from dirac::ParseUnitByteIO.
|
virtual |
Reimplemented from dirac::ParseUnitByteIO.
|
virtual |
Reimplemented from dirac::ParseUnitByteIO.
|
inlinevirtual |
Reimplemented from dirac::ParseUnitByteIO.
References dirac::PU_PICTURE.
bool dirac::PictureByteIO::Input | ( | ) |
|
private |
|
private |
|
inline |
References dirac::ParseUnitByteIO::IsPicture(), and NumRefs().
|
inline |
References dirac::ParseUnitByteIO::IsPicture(), and NumRefs().
|
inline |
References dirac::ParseUnitByteIO::GetParseCode().
|
inline |
References dirac::ParseUnitByteIO::GetParseCode().
|
inline |
References dirac::ParseUnitByteIO::GetParseCode().
void dirac::PictureByteIO::Output | ( | ) |
|
private |
|
inline |
References m_mv_data.
|
private |
|
private |
|
inline |
References m_transform_data.
|
private |
|
private |
|
private |
Referenced by SetMvData().
|
private |
Referenced by SetTransformData().
© 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.