Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

ID3_Reader Class Reference

#include <reader.h>

Inheritance diagram for ID3_Reader::

ID3_IStreamReader ID3_MemoryReader ID3_IFStreamReader List of all members.

Public Types

typedef uint32 size_type
typedef uint8 char_type
typedef uint32 pos_type
typedef int32 off_type
typedef int16 int_type

Public Methods

virtual void close ()=0
 Close the reader. More...

virtual pos_type getBeg ()
 Return the beginning position in the reader. More...

virtual pos_type getEnd ()
 Return the ending position in the reader. More...

virtual pos_type getCur ()=0
 Return the current position in the reader. More...

virtual pos_type setCur (pos_type pos)=0
 Set the value of the current position for reading. More...

virtual int_type readChar ()
 Read a single character and advance the internal position. More...

virtual int_type peekChar ()=0
 Return the next character to be read without advancing the internal position. More...

virtual size_type readChars (char_type buf[], size_type len)=0
 Read up to len characters into buf and advance the internal position accordingly. More...

virtual size_type readChars (char buf[], size_type len)
virtual size_type skipChars (size_type len)
 Skip up to len chars in the stream and advance the internal position accordingly. More...

virtual size_type remainingBytes ()
virtual bool atEnd ()

Static Public Attributes

const int_type END_OF_READER = -1

Member Typedef Documentation

typedef uint8 ID3_Reader::char_type
 

Definition at line 37 of file reader.h.

typedef int16 ID3_Reader::int_type
 

Definition at line 40 of file reader.h.

typedef int32 ID3_Reader::off_type
 

Definition at line 39 of file reader.h.

typedef uint32 ID3_Reader::pos_type
 

Definition at line 38 of file reader.h.

Referenced by ID3_Tag::Parse(), ID3_FrameImpl::Parse(), and ID3_TagImpl::ParseFile().

typedef uint32 ID3_Reader::size_type
 

Definition at line 36 of file reader.h.

Referenced by ID3_MemoryReader::readChars().


Member Function Documentation

virtual bool ID3_Reader::atEnd   [inline, virtual]
 

Definition at line 125 of file reader.h.

Referenced by ID3_FieldImpl::ParseInteger(), ID3_FieldImpl::ParseText(), and ID3_MemoryReader::peekChar().

virtual void ID3_Reader::close   [pure virtual]
 

Close the reader.

Any further actions on the reader should fail.

Reimplemented in ID3_IStreamReader, ID3_IFStreamReader, and ID3_MemoryReader.

virtual pos_type ID3_Reader::getBeg   [inline, virtual]
 

Return the beginning position in the reader.

Reimplemented in ID3_IStreamReader, and ID3_MemoryReader.

Definition at line 48 of file reader.h.

Referenced by ID3_FrameImpl::Parse(), ID3_FieldImpl::ParseInteger(), and ID3_FieldImpl::ParseText().

virtual pos_type ID3_Reader::getCur   [pure virtual]
 

Return the current position in the reader.

Reimplemented in ID3_IStreamReader, and ID3_MemoryReader.

Referenced by ID3_IStreamReader::getEnd(), ID3_TagHeader::Parse(), ID3_FrameHeader::Parse(), ID3_FrameImpl::Parse(), ID3_FieldImpl::ParseInteger(), ID3_FieldImpl::ParseText(), and ID3_MemoryReader::setCur().

virtual pos_type ID3_Reader::getEnd   [inline, virtual]
 

Return the ending position in the reader.

Reimplemented in ID3_IStreamReader, and ID3_MemoryReader.

Definition at line 51 of file reader.h.

Referenced by ID3_FrameHeader::Parse(), ID3_FrameImpl::Parse(), ID3_FieldImpl::ParseInteger(), ID3_FieldImpl::ParseText(), and ID3_MemoryReader::setCur().

virtual int_type ID3_Reader::peekChar   [pure virtual]
 

Return the next character to be read without advancing the internal position.

Returns END_OF_READER if there isn't a character to read.

Reimplemented in ID3_IStreamReader, and ID3_MemoryReader.

virtual int_type ID3_Reader::readChar   [inline, virtual]
 

Read a single character and advance the internal position.

Note that the interal position may advance more than one byte for a single character read. Returns END_OF_READER if there isn't a character to read.

Definition at line 65 of file reader.h.

Referenced by ID3_TagImpl::IsV2Tag(), and ID3_TagHeader::Parse().

virtual size_type ID3_Reader::readChars char    buf[],
size_type    len
[inline, virtual]
 

Reimplemented in ID3_IStreamReader, and ID3_MemoryReader.

Definition at line 88 of file reader.h.

virtual size_type ID3_Reader::readChars char_type    buf[],
size_type    len
[pure virtual]
 

Read up to len characters into buf and advance the internal position accordingly.

Returns the number of characters read into buf. Note that the value returned may be less than the number of bytes that the internal position advances, due to multi-byte characters.

Reimplemented in ID3_IStreamReader, and ID3_MemoryReader.

Referenced by ID3_TagHeader::Parse(), ID3_MemoryReader::readChars(), and ID3_IStreamReader::readChars().

virtual size_type ID3_Reader::remainingBytes   [inline, virtual]
 

Definition at line 109 of file reader.h.

Referenced by ID3_FieldImpl::ParseText().

virtual pos_type ID3_Reader::setCur pos_type    pos [pure virtual]
 

Set the value of the current position for reading.

Reimplemented in ID3_IStreamReader, and ID3_MemoryReader.

Referenced by ID3_IStreamReader::getEnd().

virtual size_type ID3_Reader::skipChars size_type    len [inline, virtual]
 

Skip up to len chars in the stream and advance the internal position accordingly.

Returns the number of characters actually skipped (may be less than requested).

Definition at line 97 of file reader.h.


Member Data Documentation

const ID3_Reader::int_type ID3_Reader::END_OF_READER = -1 [static]
 

Definition at line 34 of file io.cpp.


The documentation for this class was generated from the following files:
Generated on Thu Jan 3 07:35:57 2002 for id3lib by doxygen1.2.12 written by Dimitri van Heesch, © 1997-2001