26#ifndef TAGLIB_IOSTREAM_H
27#define TAGLIB_IOSTREAM_H
48 operator const wchar_t *()
const;
50 const std::wstring &wstr()
const;
52 String toString()
const;
56 const std::wstring m_wname;
118 offset_t start = 0,
size_t replace = 0) = 0;
169 class IOStreamPrivate;
171 std::unique_ptr<IOStreamPrivate> d;
A byte vector.
Definition: tbytevector.h:46
An abstract class that provides operations on a sequence of bytes.
Definition: tiostream.h:65
virtual ByteVector readBlock(size_t length)=0
virtual void seek(offset_t offset, Position p=Beginning)=0
virtual void insert(const ByteVector &data, offset_t start=0, size_t replace=0)=0
virtual bool readOnly() const =0
virtual offset_t length()=0
virtual void removeBlock(offset_t start=0, size_t length=0)=0
virtual bool isOpen() const =0
virtual void writeBlock(const ByteVector &data)=0
virtual void truncate(offset_t length)=0
Position
Definition: tiostream.h:70
@ Current
Seek from the current position in the file.
Definition: tiostream.h:74
@ Beginning
Seek from the beginning of the file.
Definition: tiostream.h:72
IOStream(const IOStream &)=delete
IOStream & operator=(const IOStream &)=delete
virtual offset_t tell() const =0
virtual FileName name() const =0
A namespace for all TagLib related classes and functions.
Definition: apefile.h:41
off_t offset_t
Definition: taglib.h:64
const char * FileName
Definition: tiostream.h:59
#define TAGLIB_EXPORT
Definition: taglib_export.h:40
#define TAGLIB_MSVC_SUPPRESS_WARNING_NEEDS_TO_HAVE_DLL_INTERFACE
Definition: taglib_export.h:55