Collaboration diagram for MP3Stream:
Public Member Functions | |
MP3Stream (Bitstream &bs, int type) | |
~MP3Stream () | |
MP3Frame * | First () const |
void | SetFirst (MP3Frame *frame) |
Bitstream & | GetBitstream () const |
void | WriteData (Bitstream &bs, int numbytes, int startpos) |
void | SeekTo (MP3Frame *frame) |
int | WriteMode () const |
Purpose of this class is to store information shared between MP3Frame objects. It stores pointers to first frame whose data weren't written yet (firstframe) and also to frame with those data (dataframe).
Definition at line 20 of file mp3stream.h.
|
Constructor Creates a MP3Stream on top of Bitstream, reads a first frame.
Definition at line 14 of file mp3stream.cpp. |
|
Destructor Deletes all allocated frames. Definition at line 21 of file mp3stream.cpp. References MP3Frame::Destroy(). |
|
Returns firstframe of the stream.
Definition at line 27 of file mp3stream.cpp. Referenced by MP3Iterator::MP3Iterator(). |
|
Returns the associated Bitstream
Definition at line 38 of file mp3stream.cpp. |
|
Sets a new dataframe deleting all frames before it It's called by MP3Frame::WriteData() function to delete all "emptied" dataframes (frames from which all data were written)
Definition at line 93 of file mp3stream.cpp. References MP3Frame::Destroy(), and MP3Frame::isLocked(). Referenced by MP3Iterator::operator++(), and MP3Frame::WriteData(). |
|
Sets firstframe of the stream It does not delete any frames, because they can store data of this new first frame.
Definition at line 32 of file mp3stream.cpp. Referenced by MP3Frame::SetFirst(). |
|
Writes requested number of data bytes from stream This is the most important function. It choses a frame whose data to write (more frames may be needed to fullfill the request) and calls its WriteData() function.
Definition at line 43 of file mp3stream.cpp. References MP3Frame::DataSize(), MP3Frame::Next(), MP3Frame::SetDataBegin(), MP3Frame::WriteData(), and Bitstream::WriteNullBytes(). Referenced by MP3Frame::Write(). |
|
Returns the write mode of stream This value is used by MP3Frame object and can be MP3Frame::normal, MP3Frame::fastwrite or MP3Frame::nowrite.
Definition at line 103 of file mp3stream.cpp. Referenced by MP3Iterator::operator++(), and MP3Frame::Write(). |