35 for (; cur != _frames.end(); ++cur)
50 for (; cur != _frames.end(); ++cur)
66 if (_frames.end() == _cursor)
68 _cursor = _frames.begin();
72 for (
int iCount = 0; iCount < 2 && frame ==
NULL; iCount++)
81 begin = (0 == iCount ? _cursor : _frames.begin()),
82 end = (0 == iCount ? _frames.end() : _cursor);
86 if ((*cur !=
NULL) && ((*cur)->GetID() == id))
102 ID3D_NOTICE(
"Find: looking for comment with data = " << data.c_str() );
105 if (_frames.end() == _cursor)
107 _cursor = _frames.begin();
108 ID3D_NOTICE(
"Find: resetting cursor" );
111 for (
int iCount = 0; iCount < 2 && frame ==
NULL; iCount++)
113 ID3D_NOTICE(
"Find: iCount = " << iCount );
121 begin = (0 == iCount ? _cursor : _frames.begin()),
122 end = (0 == iCount ? _frames.end() : _cursor);
124 for (const_iterator cur = begin; cur != end; ++cur)
126 ID3D_NOTICE(
"Find: frame = 0x" << hex << (uint32) *cur << dec );
127 if ((*cur !=
NULL) && ((*cur)->GetID() ==
id) &&
128 (*cur)->Contains(fldID))
130 ID3_Field* fld = (*cur)->GetField(fldID);
134 ID3D_NOTICE(
"Find: didn't have the right field" );
138 ID3D_NOTICE(
"Find: text = " << text.c_str() );
159 if (_frames.end() == _cursor)
161 _cursor = _frames.begin();
164 for (
int iCount = 0; iCount < 2 && frame ==
NULL; iCount++)
173 begin = (0 == iCount ? _cursor : _frames.begin()),
174 end = (0 == iCount ? _frames.end() : _cursor);
176 for (const_iterator cur = begin; cur != end; ++cur)
178 if ((*cur !=
NULL) && ((*cur)->GetID() == id) &&
179 (*cur)->Contains(fldID))
181 ID3_Field* fld = (*cur)->GetField(fldID);
207 if (_frames.end() == _cursor)
209 _cursor = _frames.begin();
212 for (
int iCount = 0; iCount < 2 && frame ==
NULL; iCount++)
221 begin = (0 == iCount ? _cursor : _frames.begin()),
222 end = (0 == iCount ? _frames.end() : _cursor);
226 if ((*cur !=
NULL) && ((*cur)->GetID() == id) &&
227 ((*cur)->GetField(fldID)->Get() == data))
The representative class of an ID3v2 field.
virtual const char * GetRawText() const =0
virtual const unicode_t * GetRawUnicodeText() const =0
virtual size_t Size() const =0
Returns the size of a field.
The representative class of an id3v2 frame.
ID3_Frame * Find(ID3_FrameID id) const
Frames::iterator iterator
Frames::const_iterator const_iterator
ID3_FieldID
Enumeration of the different types of fields in a frame.
ID3_FrameID
Enumeration of the different types of frames recognized by id3lib.
WString ID3_C_EXPORT toWString(const unicode_t[], size_t)