|
|
In-memory Stream class using ByteVector for its storage. More...
#include <tbytevectorstream.h>


Public Member Functions | |
| ByteVectorStream (const ByteVector &data) | |
| virtual | ~ByteVectorStream () |
| FileName | name () const |
| ByteVector | readBlock (ulong length) |
| void | writeBlock (const ByteVector &data) |
| void | insert (const ByteVector &data, ulong start=0, ulong replace=0) |
| void | removeBlock (ulong start=0, ulong length=0) |
| bool | readOnly () const |
| bool | isOpen () const |
| void | seek (long offset, Position p=Beginning) |
| void | clear () |
| long | tell () const |
| long | length () |
| void | truncate (long length) |
| ByteVector * | data () |
In-memory Stream class using ByteVector for its storage.
| TagLib::ByteVectorStream::ByteVectorStream | ( | const ByteVector & | data | ) |
Construct a File object and opens the file. file should be a be a C-string in the local file system encoding.
| virtual TagLib::ByteVectorStream::~ByteVectorStream | ( | ) | [virtual] |
Destroys this ByteVectorStream instance.
| void TagLib::ByteVectorStream::clear | ( | ) | [virtual] |
Reset the end-of-file and error flags on the file.
Reimplemented from TagLib::IOStream.
| void TagLib::ByteVectorStream::insert | ( | const ByteVector & | data, |
| ulong | start = 0, |
||
| ulong | replace = 0 |
||
| ) | [virtual] |
Insert data at position start in the file overwriting replace bytes of the original content.
Implements TagLib::IOStream.
| bool TagLib::ByteVectorStream::isOpen | ( | ) | const [virtual] |
Since the file can currently only be opened as an argument to the constructor (sort-of by design), this returns if that open succeeded.
Implements TagLib::IOStream.
| long TagLib::ByteVectorStream::length | ( | ) | [virtual] |
Returns the length of the file.
Implements TagLib::IOStream.
| FileName TagLib::ByteVectorStream::name | ( | ) | const [virtual] |
Returns the file name in the local file system encoding.
Implements TagLib::IOStream.
| ByteVector TagLib::ByteVectorStream::readBlock | ( | ulong | length | ) | [virtual] |
Reads a block of size length at the current get pointer.
Implements TagLib::IOStream.
| bool TagLib::ByteVectorStream::readOnly | ( | ) | const [virtual] |
Returns true if the file is read only (or if the file can not be opened).
Implements TagLib::IOStream.
| void TagLib::ByteVectorStream::removeBlock | ( | ulong | start = 0, |
| ulong | length = 0 |
||
| ) | [virtual] |
Removes a block of the file starting a start and continuing for length bytes.
Implements TagLib::IOStream.
| void TagLib::ByteVectorStream::seek | ( | long | offset, |
| Position | p = Beginning |
||
| ) | [virtual] |
Move the I/O pointer to offset in the file from position p. This defaults to seeking from the beginning of the file.
Implements TagLib::IOStream.
| long TagLib::ByteVectorStream::tell | ( | ) | const [virtual] |
Returns the current offset within the file.
Implements TagLib::IOStream.
| void TagLib::ByteVectorStream::truncate | ( | long | length | ) | [virtual] |
Truncates the file to a length.
Implements TagLib::IOStream.
| void TagLib::ByteVectorStream::writeBlock | ( | const ByteVector & | data | ) | [virtual] |
Attempts to write the block data at the current get pointer. If the file is currently only opened read only -- i.e. readOnly() returns true -- this attempts to reopen the file in read/write mode.
Implements TagLib::IOStream.