Tide 0.1.0
Namespaces | Classes | Typedefs | Enumerations | Functions

tide Namespace Reference

Namespaces

namespace  ebml_int
 

Functions for managing integers coded for EBML.


namespace  ids
 

This namespace contains constants and functions for managing EBML class IDs.


namespace  vint
 

Functions for managing variable-length integers.


Classes

class  BinaryElement
 Binary primitive element. More...
class  Block
 Block interface. More...
class  BlockAdditions
 This element is used to specify reference blocks. More...
class  BlockElement
class  BlockGroup
 The BlockGroup is the standard block. More...
class  BlockImpl
 Common block functionality implementation. More...
class  SilentTrackNumber
 The track number of a silent track. More...
class  Cluster
 The base Cluster, defining the common interface for Cluster element implementations. More...
class  DateElement
 Date primitive element. More...
class  EBMLElement
 The EBML Header element. More...
class  Element
 The Element interface, a basic interface to an element object. More...
struct  TideError
 Base error type. More...
struct  NotImplemented
 Something is not supported. More...
struct  NotEBML
 File is not an EBML file. More...
struct  NotTide
 File is not a Tide file. More...
struct  BadReadVersion
 The required EBML read version is too high. More...
struct  BadDocReadVersion
 The required Tide read version is too high. More...
struct  InvalidEBMLID
 An invalid EBML class ID was found. More...
struct  InvalidVarInt
 An invalid variable-length integer was found. More...
struct  VarIntTooBig
 A variable-length integer is too large to be encoded. More...
struct  SpecSizeTooSmall
 A specified size for a variable-length integer is too small. More...
struct  BufferTooSmall
 A buffer was too small for the data. More...
struct  ReadError
 A read error was encountered during a read. More...
struct  WriteError
 A write error was encountered during a write. More...
struct  InvalidElementID
 An invalid Element ID was provided. More...
struct  BadElementLength
 A fixed-length element is truncated or lengthened in the file. More...
struct  BadBodySize
 A read body size does not match the actual body size in the file. More...
struct  InvalidChildID
 A child element was found where it doesn't belong. More...
struct  MissingChild
 A necessary child element was missing. More...
struct  ValueOutOfRange
 A child element's value was set outside the allowable range. More...
struct  ValueSizeOutOfRange
 A child element's size is below or above the required size. More...
struct  EmptyTracksElement
 An empty Tracks element was read or written. More...
struct  DuplicateTrackNumber
 A duplicate track number was encountered. More...
struct  DuplicateUID
 A UID collision was encountered. More...
struct  EmptyBlock
 An empty block was encountered. More...
struct  EmptyFrame
 An empty frame was encountered. More...
struct  MaxLaceSizeExceeded
 The maximum lace size for a block was exceeded. More...
struct  BadLacedFrameSize
 A frame with a bad size was added to a block. More...
struct  EmptyBlockAdditionsElement
 An empty BlockAdditions element was read or written. More...
struct  MultipleSeekHeads
 A segment was found with multiple meta-seeks. More...
struct  NoSegmentInfo
 A segment was found without a segment info element. More...
struct  NoTracks
 A segment was found without a tracks information element. More...
struct  NoClusters
 A segment was found without at least one cluster. More...
struct  NotWriting
 A segment or cluster was finalised before being started. More...
struct  VoidTooSmall
 The requested size of a void element is too small. More...
class  FloatElement
 Float primitive element. More...
class  IntElement
 Signed integer primitive element. More...
class  MasterElement
 The MasterElement interface. More...
class  MemoryCluster
 The in-memory Cluster implementation. More...
class  SeekHead
 The SeekHead element, used as an index for a Tide file. More...
class  PrimitiveElement
 The primitive data element interface. More...
class  SeekElement
 The Seek element, which contains a single index point in the SeekHead element. More...
class  Segment
 The Segment element. More...
class  SegmentInfo
 The SegmentInfo element, containing the meta-data for a segment. More...
class  SimpleBlock
 The SimpleBlock element, a simplified version of Blocks. More...
class  StringElement
 String primitive element. More...
class  Tide
 The Tide interface, the interface provided by all Tide objects. More...
class  TideImpl
 Implementation of the Tide interface. More...
class  TrackEntry
 A track entry provides the meta-data for a single track. More...
class  TrackOperationBase
 Abstract base class for individual track operations. More...
class  TrackJoinBlocks
 JoinBlocks track operation. More...
class  Tracks
 The Tracks element, listing all tracks in the segment. More...
class  UIntElement
 Unsigned integer primitive element. More...
class  VoidElement
 Void primitive element. More...

Typedefs

typedef boost::error_info
< struct tag_ver,
std::streamsize > 
err_ver
 A version.
typedef boost::error_info
< struct tag_pos,
std::streamsize > 
err_pos
 Position in a Tide file.
typedef boost::error_info
< struct tag_varint, uint64_t > 
err_varint
 Value of a variable-length integer.
typedef boost::error_info
< struct tag_bufsize,
std::streamsize > 
err_bufsize
 The size of a buffer.
typedef boost::error_info
< struct tag_reqsize,
std::streamsize > 
err_reqsize
 The required size of a buffer or a file read.
typedef boost::error_info
< struct tag_specsize,
std::streamsize > 
err_specsize
 The specified size to encode a variable-length integer into.
typedef boost::error_info
< struct tag_id, ids::ID
err_id
 An Element ID.
typedef boost::error_info
< struct tag_par_id, uint32_t > 
err_par_id
 A parent element ID.
typedef boost::error_info
< struct tag_valid_sizes,
std::vector< std::streamsize > > 
err_valid_sizes
 A set of valid element sizes.
typedef boost::error_info
< struct tag_el_size,
std::streamsize > 
err_el_size
 The size of an element.
typedef boost::error_info
< struct tag_track_num,
uint64_t > 
err_track_num
 A track number.
typedef boost::error_info
< struct tag_int_uid, uint64_t > 
err_int_uid
 An integer UID.
typedef boost::error_info
< struct tag_max_lace,
unsigned int > 
err_max_lace
 The maximum size of a lace.
typedef boost::error_info
< struct tag_req_lace,
unsigned int > 
err_req_lace
 The requested size of a lace.
typedef boost::error_info
< struct tag_frame_size,
std::streamsize > 
err_frame_size
 The size of a frame.

Enumerations

enum  EBMLFloatPrec { EBML_FLOAT_PREC_SINGLE, EBML_FLOAT_PREC_DOUBLE }
 

Precision of float elements.

More...

Functions

bool operator== (BlockAdditions const &lhs, BlockAdditions const &rhs)
 Equality operator for BlockAdditions elements.
bool operator== (BlockGroup const &lhs, BlockGroup const &rhs)
 Equality operator for BlockGroup elements.
bool operator== (BlockImpl const &lhs, BlockImpl const &rhs)
 Equality operator for BlockImpl objects.
std::streamsize skip_read (std::istream &input, bool and_id)
 Skip an element in an input stream.
std::streamsize skip_write (std::iostream &stream, bool and_id)
 Skip an element in an input/output stream.
bool operator== (SeekHead const &lhs, SeekHead const &rhs)
 Equality operator.
bool operator== (SimpleBlock const &lhs, SimpleBlock const &rhs)
 Equality operator for SimpleBlock elements.
bool operator== (TrackEntry const &lhs, TrackEntry const &rhs)
bool operator== (TrackJoinBlocks const &lhs, TrackJoinBlocks const &rhs)
 Equality operator for TrackJoinBlocks.
bool operator== (Tracks const &lhs, Tracks const &rhs)

Typedef Documentation

typedef boost::error_info<struct tag_bufsize, std::streamsize> tide::err_bufsize

The size of a buffer.

Definition at line 456 of file exceptions.h.

typedef boost::error_info<struct tag_el_size, std::streamsize> tide::err_el_size

The size of an element.

Definition at line 476 of file exceptions.h.

typedef boost::error_info<struct tag_frame_size, std::streamsize> tide::err_frame_size

The size of a frame.

Definition at line 492 of file exceptions.h.

typedef boost::error_info<struct tag_id, ids::ID> tide::err_id

An Element ID.

Definition at line 466 of file exceptions.h.

typedef boost::error_info<struct tag_int_uid, uint64_t> tide::err_int_uid

An integer UID.

Definition at line 482 of file exceptions.h.

typedef boost::error_info<struct tag_max_lace, unsigned int> tide::err_max_lace

The maximum size of a lace.

Definition at line 485 of file exceptions.h.

typedef boost::error_info<struct tag_par_id, uint32_t> tide::err_par_id

A parent element ID.

Definition at line 469 of file exceptions.h.

typedef boost::error_info<struct tag_pos, std::streamsize> tide::err_pos

Position in a Tide file.

Definition at line 450 of file exceptions.h.

typedef boost::error_info<struct tag_req_lace, unsigned int> tide::err_req_lace

The requested size of a lace.

Definition at line 488 of file exceptions.h.

typedef boost::error_info<struct tag_reqsize, std::streamsize> tide::err_reqsize

The required size of a buffer or a file read.

Definition at line 459 of file exceptions.h.

typedef boost::error_info<struct tag_specsize, std::streamsize> tide::err_specsize

The specified size to encode a variable-length integer into.

Definition at line 463 of file exceptions.h.

typedef boost::error_info<struct tag_track_num, uint64_t> tide::err_track_num

A track number.

Definition at line 479 of file exceptions.h.

typedef boost::error_info<struct tag_valid_sizes, std::vector<std::streamsize> > tide::err_valid_sizes

A set of valid element sizes.

Definition at line 473 of file exceptions.h.

typedef boost::error_info<struct tag_varint, uint64_t> tide::err_varint

Value of a variable-length integer.

Definition at line 453 of file exceptions.h.

typedef boost::error_info<struct tag_ver, std::streamsize> tide::err_ver

A version.

Definition at line 447 of file exceptions.h.


Enumeration Type Documentation

Precision of float elements.

Enumerator:
EBML_FLOAT_PREC_SINGLE 

Single precision.

EBML_FLOAT_PREC_DOUBLE 

Double precision.

Definition at line 40 of file float_element.h.


Function Documentation

bool tide::operator== ( BlockAdditions const &  lhs,
BlockAdditions const &  rhs 
)

Equality operator for BlockAdditions elements.

Equality operator.

bool tide::operator== ( BlockGroup const &  lhs,
BlockGroup const &  rhs 
)

Equality operator for BlockGroup elements.

Equality operator.

bool tide::operator== ( TrackEntry const &  lhs,
TrackEntry const &  rhs 
)
bool tide::operator== ( TrackJoinBlocks const &  lhs,
TrackJoinBlocks const &  rhs 
) [inline]

Equality operator for TrackJoinBlocks.

Equality operator.

Definition at line 142 of file track_operation.h.

bool tide::operator== ( SimpleBlock const &  lhs,
SimpleBlock const &  rhs 
)

Equality operator for SimpleBlock elements.

Equality operator.

bool tide::operator== ( SeekHead const &  lhs,
SeekHead const &  rhs 
)

Equality operator.

bool tide::operator== ( Tracks const &  lhs,
Tracks const &  rhs 
)
bool tide::operator== ( BlockImpl const &  lhs,
BlockImpl const &  rhs 
)

Equality operator for BlockImpl objects.

Equality operator.

std::streamsize tide::skip_read ( std::istream &  input,
bool  and_id 
)

Skip an element in an input stream.

This function skips past an element, placing the read pointer at the ID of the next element.

Parameters:
[in]inputThe input stream to seek the read pointer in.
[in]and_idIf true, the read pointer is expected to be at the ID of the element to skip when the function is called, and the ID will also be skipped. If false, the read pointer is expected to be placed before the element's size value.
Returns:
The number of bytes skipped.
std::streamsize tide::skip_write ( std::iostream &  stream,
bool  and_id 
)

Skip an element in an input/output stream.

This function skips past an element, placing the write pointer after the end of the element's body.

Parameters:
[in]streamThe input/ouput stream to seek the write pointer in.
[in]and_idIf true, the write pointer is expected to be at the ID of the element to skip when the function is called, and the ID will also be skipped. If false, the write pointer is expected to be placed before the element's size value.
Returns:
The number of bytes skipped.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines