26 #ifndef TAGLIB_RIFFFILE_H
27 #define TAGLIB_RIFFFILE_H
56 enum Endianness { BigEndian, LittleEndian };
58 File(
FileName file, Endianness endianness);
59 File(IOStream *stream, Endianness endianness);
64 unsigned int riffSize()
const;
69 unsigned int chunkCount()
const;
74 unsigned int chunkOffset(
unsigned int i)
const;
79 unsigned int chunkDataSize(
unsigned int i)
const;
84 unsigned int chunkPadding(
unsigned int i)
const;
89 ByteVector chunkName(
unsigned int i)
const;
96 ByteVector chunkData(
unsigned int i);
103 void setChunkData(
unsigned int i,
const ByteVector &data);
112 void setChunkData(
const ByteVector &name,
const ByteVector &data);
125 void setChunkData(
const ByteVector &name,
const ByteVector &data,
bool alwaysCreate);
132 void removeChunk(
unsigned int i);
140 void removeChunk(
const ByteVector &name);
144 File &operator=(
const File &);
147 void writeChunk(
const ByteVector &name,
const ByteVector &data,
148 unsigned long offset,
unsigned long replace = 0);
153 void updateGlobalSize();