28 #if defined HAVE_SYS_PARAM_H 29 #include <sys/param.h> 48 (
uchar) ver [0] < 0xFF && (
uchar) ver [1] < 0xFF &&
49 (
uchar) size[0] < 0x80 && (
uchar) size[1] < 0x80 &&
50 (
uchar) size[2] < 0x80 && (
uchar) size[3] < 0x80)
59 else if ((
uchar)ver[0] >= 0xFF)
63 else if ((
uchar)ver[1] >= 0xFF)
67 else if ((
uchar)size[0] >= 0x80)
71 else if ((
uchar)size[1] >= 0x80)
75 else if ((
uchar)size[2] >= 0x80)
79 else if ((
uchar)size[3] >= 0x80)
93 _cursor(_frames.begin()),
98 _is_file_writable(false),
110 _cursor(_frames.
begin()),
115 _is_file_writable(false),
128 for (
iterator cur = _frames.begin(); cur != _frames.end(); ++cur)
137 _cursor = _frames.begin();
143 _tags_to_parse.
clear();
177 _frames.push_back(frame);
178 _cursor = _frames.begin();
190 if (fi != _frames.end())
194 _cursor = _frames.begin();
204 bool changed = _changed;
208 for (
const_iterator fi = _frames.begin(); fi != _frames.end(); ++fi)
212 changed = (*fi)->HasChanged();
227 bool changed = _hdr.
SetSpec(spec);
228 _changed = _changed || changed;
240 _changed = changed || _changed;
247 _changed = changed || _changed;
254 _changed = changed || _changed;
293 bool changed = (_is_padded != pad);
294 _changed = changed || _changed;
315 while (
NULL != (frame = iter->GetNext()))
ID3_C_EXPORT uint32 readUInt28(ID3_Reader &)
size_t GetExtendedBytes() const
bool SetExperimental(bool)
The representative class of an id3 tag.
size_t Link(const char *fileInfo, flags_t=(flags_t) ID3TT_ALL)
size_t ID3_GetDataSize(const ID3_TagImpl &tag)
void AddFrame(const ID3_Frame &)
bool GetExperimental() const
size_t GetPrependedBytes() const
ID3_Frame * Find(ID3_FrameID id) const
bool GetExtendedHeader() const
size_t GetFileSize() const
virtual int_type readChar()
Read a single character and advance the internal position.
bool AttachFrame(ID3_Frame *)
Iterator * CreateIterator()
ID3_V2Spec GetSpec() const
The representative class of an id3v2 frame.
ID3_TagImpl & operator=(const ID3_Tag &)
Frames::const_iterator const_iterator
static size_t IsV2Tag(ID3_Reader &)
ID3_Frame * RemoveFrame(const ID3_Frame *)
Frames::iterator iterator
ID3_C_EXPORT String readText(ID3_Reader &, size_t)
size_t GetAppendedBytes() const
bool GetExperimental() const
ID3_TagImpl(const char *name=NULL)